[Bf-blender-cvs] [aee5a80a83e] topbar: Merge branch 'blender2.8' into topbar

Julian Eisel noreply at git.blender.org
Mon Mar 19 21:56:35 CET 2018


Commit: aee5a80a83e48afc3b0b978b5087f8c05af6f54e
Author: Julian Eisel
Date:   Mon Mar 19 21:53:48 2018 +0100
Branches: topbar
https://developer.blender.org/rBaee5a80a83e48afc3b0b978b5087f8c05af6f54e

Merge branch 'blender2.8' into topbar

===================================================================



===================================================================

diff --cc source/blender/blenloader/intern/readfile.c
index e5708ec4df0,21eccaff168..33f15c8473b
--- a/source/blender/blenloader/intern/readfile.c
+++ b/source/blender/blenloader/intern/readfile.c
@@@ -7076,12 -6497,8 +7078,13 @@@ static void direct_link_windowmanager(F
  		/* we need to restore a pointer to this later when reading workspaces, so store in global oldnew-map */
  		oldnewmap_insert(fd->globmap, hook, win->workspace_hook, 0);
  
 +		link_list(fd, &win->global_areas);
 +		for (ScrArea *area = win->global_areas.first; area; area = area->next) {
 +			direct_link_area(fd, area);
 +		}
 +
  		win->ghostwin = NULL;
+ 		win->gwnctx = NULL;
  		win->eventstate = NULL;
  		win->tweak = NULL;
  #ifdef WIN32
diff --cc source/blender/editors/screen/area.c
index 397090388ff,ac577375a31..0443b145082
--- a/source/blender/editors/screen/area.c
+++ b/source/blender/editors/screen/area.c
@@@ -1865,20 -1822,9 +1865,21 @@@ int ED_area_header_switchbutton(const b
  
  /************************ standard UI regions ************************/
  
 +static ThemeColorID region_background_color_id(const bContext *C, const ARegion *region)
 +{
 +	switch (region->regiontype) {
 +		case RGN_TYPE_HEADER:
 +			return ED_screen_area_active(C) ? TH_HEADER : TH_HEADERDESEL;
 +		case RGN_TYPE_PREVIEW:
 +			return TH_PREVIEW_BACK;
 +		default:
 +			return TH_BACK;
 +	}
 +}
 +
  void ED_region_panels(const bContext *C, ARegion *ar, const char *context, int contextnr, const bool vertical)
  {
+ 	const WorkSpace *workspace = CTX_wm_workspace(C);
  	ScrArea *sa = CTX_wm_area(C);
  	uiStyle *style = UI_style_get_dpi();
  	uiBlock *block;
diff --cc source/blender/editors/screen/screen_intern.h
index 9214b4b7a68,6d0a9f1e7d0..11fb0666df4
--- a/source/blender/editors/screen/screen_intern.h
+++ b/source/blender/editors/screen/screen_intern.h
@@@ -51,8 -50,9 +51,8 @@@ void        region_toggle_hidden(struc
  bScreen    *screen_add(const char *name, const int winsize_x, const int winsize_y);
  void        screen_data_copy(bScreen *to, bScreen *from);
  void        screen_new_activate_prepare(const wmWindow *win, bScreen *screen_new);
- void        screen_changed_update(struct bContext *C, wmWindow *win, bScreen *sc);
+ void        screen_change_update(struct bContext *C, wmWindow *win, bScreen *sc);
  bScreen    *screen_change_prepare(bScreen *screen_old, bScreen *screen_new, struct Main *bmain, struct bContext *C, wmWindow *win);
 -ScrEdge    *screen_findedge(bScreen *sc, ScrVert *v1, ScrVert *v2);
  ScrArea    *area_split(bScreen *sc, ScrArea *sa, char dir, float fac, int merge);
  int         screen_area_join(struct bContext *C, bScreen *scr, ScrArea *sa1, ScrArea *sa2);
  int         area_getorientation(ScrArea *sa, ScrArea *sb);
diff --cc source/blender/windowmanager/intern/wm_window.c
index 60e67bb2129,bf23ecfccd0..ad8365b03ed
--- a/source/blender/windowmanager/intern/wm_window.c
+++ b/source/blender/windowmanager/intern/wm_window.c
@@@ -192,23 -207,6 +207,18 @@@ void wm_window_free(bContext *C, wmWind
  			CTX_wm_window_set(C, NULL);
  	}
  
 +	for (ScrArea *sa = win->global_areas.first, *sa_next; sa; sa = sa_next) {
 +		sa_next = sa->next;
 +
 +		MEM_freeN(sa->v1);
 +		MEM_freeN(sa->v2);
 +		MEM_freeN(sa->v3);
 +		MEM_freeN(sa->v4);
 +
 +		BKE_screen_area_free(sa);
 +		BLI_freelinkN(&win->global_areas, sa);
 +	}
 +
- 	/* always set drawable and active to NULL,
- 	 * prevents non-drawable state of main windows (bugs #22967 and #25071, possibly #22477 too) */
- 	wm->windrawable = NULL;
- 	wm->winactive = NULL;
- 
  	/* end running jobs, a job end also removes its timer */
  	for (wt = wm->timers.first; wt; wt = wtnext) {
  		wtnext = wt->next;



More information about the Bf-blender-cvs mailing list