diff --git a/src/native/win32/org_lwjgl_Window.cpp b/src/native/win32/org_lwjgl_Window.cpp index 178e3a69..4f57c51f 100644 --- a/src/native/win32/org_lwjgl_Window.cpp +++ b/src/native/win32/org_lwjgl_Window.cpp @@ -313,7 +313,8 @@ bool createWindow(const char * title, int x, int y, int width, int height, bool printf("Created window\n"); #endif - ShowWindow(hwnd, SW_SHOWNORMAL); + //ShowWindow(hwnd, SW_SHOWNORMAL); + ShowWindow(hwnd, SW_SHOW); UpdateWindow(hwnd); SetForegroundWindow(hwnd); SetFocus(hwnd); @@ -390,3 +391,31 @@ JNIEXPORT void JNICALL Java_org_lwjgl_Window_tick { handleMessages(env, obj); } + + +/* + * Class: org_lwjgl_Window + * Method: minimize + * Signature: ()V + */ +JNIEXPORT void JNICALL Java_org_lwjgl_Window_minimize + (JNIEnv * env, jobject obj) +{ + if (isMinimized) + return; + ShowWindow(hwnd, SW_MINIMIZE); +} + +/* + * Class: org_lwjgl_Window + * Method: minimize + * Signature: ()V + */ +JNIEXPORT void JNICALL Java_org_lwjgl_Window_restore + (JNIEnv * env, jobject obj) +{ + if (!isMinimized) + return; + + ShowWindow(hwnd, SW_RESTORE); +} diff --git a/src/native/win32/org_lwjgl_opengl_BaseGL.cpp b/src/native/win32/org_lwjgl_opengl_BaseGL.cpp index 0fa8d599..a522a2f0 100644 --- a/src/native/win32/org_lwjgl_opengl_BaseGL.cpp +++ b/src/native/win32/org_lwjgl_opengl_BaseGL.cpp @@ -214,5 +214,5 @@ JNIEXPORT void JNICALL Java_org_lwjgl_opengl_BaseGL_nDestroyGL JNIEXPORT void JNICALL Java_org_lwjgl_opengl_BaseGL_swapBuffers (JNIEnv *, jobject) { - SwapBuffers(wglGetCurrentDC()); + wglSwapLayerBuffers(hdc, WGL_SWAP_MAIN_PLANE); }