Fix T43008: Support stacked fullscreen areas
This commit is contained in:
parent
31219415d6
commit
f7e844570f
Notes:
blender-bot
2023-02-14 09:41:25 +01:00
Referenced by issue #43008, Stacked Full Window Mode
|
@ -161,11 +161,19 @@ ScrArea *render_view_open(bContext *C, int mx, int my)
|
|||
}
|
||||
else if (scene->r.displaymode == R_OUTPUT_SCREEN) {
|
||||
sa = CTX_wm_area(C);
|
||||
if (sa && sa->spacetype == SPACE_IMAGE)
|
||||
area_was_image = true;
|
||||
|
||||
/* this function returns with changed context */
|
||||
sa = ED_screen_full_newspace(C, sa, SPACE_IMAGE);
|
||||
/* if the active screen is already in fullscreen mode, skip this and
|
||||
* unset the area, so that the fullscreen area is just changed later */
|
||||
if (sa->full) {
|
||||
sa = NULL;
|
||||
}
|
||||
else {
|
||||
if (sa && sa->spacetype == SPACE_IMAGE)
|
||||
area_was_image = true;
|
||||
|
||||
/* this function returns with changed context */
|
||||
sa = ED_screen_full_newspace(C, sa, SPACE_IMAGE);
|
||||
}
|
||||
}
|
||||
|
||||
if (!sa) {
|
||||
|
|
|
@ -1765,9 +1765,12 @@ void ED_screen_full_prevspace(bContext *C, ScrArea *sa)
|
|||
wmWindow *win = CTX_wm_window(C);
|
||||
|
||||
ED_area_prevspace(C, sa);
|
||||
|
||||
if (sa->full)
|
||||
ED_screen_state_toggle(C, win, sa, SCREENMAXIMIZED);
|
||||
|
||||
if (sa->full) {
|
||||
/* only toggle out of fullscreen if it wasn't set by the user (for stacked fullscreens) */
|
||||
if (sa->flag & AREA_FLAG_TEMP_TYPE)
|
||||
ED_screen_state_toggle(C, win, sa, SCREENMAXIMIZED);
|
||||
}
|
||||
}
|
||||
|
||||
void ED_screen_retore_temp_type(bContext *C, ScrArea *sa, bool is_screen_change)
|
||||
|
|
Loading…
Reference in New Issue