[Bf-blender-cvs] [2a6d03493c9] master: WM: default to opening maximized

Campbell Barton noreply at git.blender.org
Mon Feb 11 23:15:08 CET 2019


Commit: 2a6d03493c9dbf9cc142ef1cdeb191e3929081d1
Author: Campbell Barton
Date:   Tue Feb 12 09:08:09 2019 +1100
Branches: master
https://developer.blender.org/rB2a6d03493c9dbf9cc142ef1cdeb191e3929081d1

WM: default to opening maximized

Blender is typically used maximized or fullscreen,
load maximized instead of attempting to fill the screen bounds.

To load un-maximized use '--window-border' argument.

See D4332

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

M	source/blender/windowmanager/intern/wm_window.c

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

diff --git a/source/blender/windowmanager/intern/wm_window.c b/source/blender/windowmanager/intern/wm_window.c
index f79e8f5324f..9845b335296 100644
--- a/source/blender/windowmanager/intern/wm_window.c
+++ b/source/blender/windowmanager/intern/wm_window.c
@@ -95,23 +95,32 @@
 /* the global to talk to ghost */
 static GHOST_SystemHandle g_system = NULL;
 
-typedef enum WinOverrideFlag {
+typedef enum eWinOverrideFlag {
 	WIN_OVERRIDE_GEOM     = (1 << 0),
 	WIN_OVERRIDE_WINSTATE = (1 << 1),
-} WinOverrideFlag;
+} eWinOverrideFlag;
 
-/* set by commandline */
+#define GHOST_WINDOW_STATE_DEFAULT GHOST_kWindowStateMaximized
+
+/**
+ * Override defaults or startup file when #eWinOverrideFlag is set.
+ * These values are typically set by command line arguments.
+ */
 static struct WMInitStruct {
 	/* window geometry */
 	int size_x, size_y;
 	int start_x, start_y;
 
 	int windowstate;
-	WinOverrideFlag override_flag;
+	eWinOverrideFlag override_flag;
 
 	bool window_focus;
 	bool native_pixels;
-} wm_init_state = {0, 0, 0, 0, GHOST_kWindowStateNormal, 0, true, true};
+} wm_init_state = {
+	.windowstate = GHOST_WINDOW_STATE_DEFAULT,
+	.window_focus = true,
+	.native_pixels = true,
+};
 
 /* ******** win open & close ************ */
 
@@ -748,8 +757,13 @@ void wm_window_ghostwindows_ensure(wmWindowManager *wm)
 				win->sizex = wm_init_state.size_x;
 				win->sizey = wm_init_state.size_y;
 
-				win->windowstate = GHOST_kWindowStateNormal;
-				wm_init_state.override_flag &= ~WIN_OVERRIDE_GEOM;
+				if (wm_init_state.override_flag & WIN_OVERRIDE_GEOM) {
+					win->windowstate = GHOST_kWindowStateNormal;
+					wm_init_state.override_flag &= ~WIN_OVERRIDE_GEOM;
+				}
+				else {
+					win->windowstate = GHOST_WINDOW_STATE_DEFAULT;
+				}
 			}
 
 			if (wm_init_state.override_flag & WIN_OVERRIDE_WINSTATE) {



More information about the Bf-blender-cvs mailing list