From: <ma...@us...> - 2012-02-06 20:35:31
|
Revision: 3741 http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3741&view=rev Author: matzon Date: 2012-02-06 20:35:25 +0000 (Mon, 06 Feb 2012) Log Message: ----------- applied dr_evil's maximized patch Modified Paths: -------------- trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java =================================================================== --- trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2012-02-06 19:26:21 UTC (rev 3740) +++ trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2012-02-06 20:35:25 UTC (rev 3741) @@ -125,6 +125,7 @@ private static final int SW_SHOWMINNOACTIVE = 7; private static final int SW_SHOWDEFAULT = 10; private static final int SW_RESTORE = 9; + private static final int SW_MAXIMIZE = 3; private static final int ICON_SMALL = 0; private static final int ICON_BIG = 1; @@ -176,10 +177,11 @@ private boolean mode_set; private boolean isMinimized; private boolean isFocused; - private boolean did_maximize; + private boolean redoMakeContextCurrent; private boolean inAppActivate; private boolean resized; private boolean resizable; + private boolean maximized; private int width; private int height; @@ -202,7 +204,8 @@ is_dirty = false; isMinimized = false; isFocused = false; - did_maximize = false; + redoMakeContextCurrent = false; + maximized = false; this.parent = parent; hasParent = parent != null; long parent_hwnd = parent != null ? getHwnd(parent) : 0; @@ -327,11 +330,15 @@ restoreDisplayMode(); } if (parent == null) { - showWindow(getHwnd(), SW_RESTORE); + if(maximized) { + showWindow(getHwnd(), SW_MAXIMIZE); + } else { + showWindow(getHwnd(), SW_RESTORE); + } setForegroundWindow(getHwnd()); setFocus(getHwnd()); } - did_maximize = true; + redoMakeContextCurrent = true; if (Display.isFullscreen()) updateClipping(); } else if (Display.isFullscreen()) { @@ -485,8 +492,8 @@ if (parent != null && parent.isFocusOwner()) { setFocus(getHwnd()); } - if (did_maximize) { - did_maximize = false; + if (redoMakeContextCurrent) { + redoMakeContextCurrent = false; /** * WORKAROUND: * Making the context current (redundantly) when the window @@ -867,6 +874,7 @@ switch ((int)wParam) { case SIZE_RESTORED: case SIZE_MAXIMIZED: + maximized = ((int)wParam) == SIZE_MAXIMIZED; resized = true; updateWidthAndHeight(); setMinimized(false); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |