From: Caspian Rychlik-P. <ci...@us...> - 2003-07-27 13:12:46
|
Update of /cvsroot/java-game-lib/LWJGL/src/native/win32 In directory sc8-pr-cvs1:/tmp/cvs-serv20937/src/native/win32 Modified Files: org_lwjgl_Window.cpp Log Message: Changed some focus handling code. Works well with Alien Flux. Index: org_lwjgl_Window.cpp CVS Browser: http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/java-game-lib/LWJGL/src/native/win32/org_lwjgl_Window.cpp =================================================================== RCS file: /cvsroot/java-game-lib/LWJGL/src/native/win32/org_lwjgl_Window.cpp,v retrieving revision 1.14 retrieving revision 1.15 diff -u -d -r1.14 -r1.15 --- org_lwjgl_Window.cpp 16 Jul 2003 21:01:34 -0000 1.14 +++ org_lwjgl_Window.cpp 27 Jul 2003 13:12:43 -0000 1.15 @@ -149,18 +149,18 @@ */ void appActivate(bool active) { - if (!active) { - tempResetDisplayMode(); - } +// if (!active) { +// tempResetDisplayMode(); +// } if (active) { SetForegroundWindow(hwnd); ShowWindow(hwnd, SW_RESTORE); } else if (isFullScreen) { ShowWindow(hwnd, SW_MINIMIZE); } - if (active) { - tempRestoreDisplayMode(); - } +// if (active) { +// tempRestoreDisplayMode(); +// } } /* @@ -185,11 +185,11 @@ return 0L; case SC_MINIMIZE: environment->SetBooleanField(window, environment->GetFieldID(environment->GetObjectClass(window), "minimized", "Z"), JNI_TRUE); - appActivate(true); + appActivate(false); break; case SC_RESTORE: environment->SetBooleanField(window, environment->GetFieldID(environment->GetObjectClass(window), "minimized", "Z"), JNI_FALSE); - appActivate(false); + appActivate(true); break; case SC_CLOSE: environment->SetBooleanField(window, environment->GetFieldID(environment->GetObjectClass(window), "closeRequested", "Z"), JNI_TRUE); @@ -204,12 +204,17 @@ switch(LOWORD(wParam)) { case WA_ACTIVE: case WA_CLICKACTIVE: - environment->SetBooleanField(window, environment->GetFieldID(environment->GetObjectClass(window), "focused", "Z"), JNI_TRUE); + environment->SetBooleanField(window, environment->GetFieldID(environment->GetObjectClass(window), "minimized", "Z"), JNI_FALSE); + isMinimized = false; + break; case WA_INACTIVE: - environment->SetBooleanField(window, environment->GetFieldID(environment->GetObjectClass(window), "focused", "Z"), JNI_FALSE); + environment->SetBooleanField(window, environment->GetFieldID(environment->GetObjectClass(window), "minimized", "Z"), JNI_TRUE); + isMinimized = true; + break; } + appActivate(!isMinimized); } break; case WM_QUIT: @@ -223,7 +228,7 @@ } } - // default action + // default action return DefWindowProc(hWnd, msg, wParam, lParam); } @@ -319,8 +324,8 @@ printf("Created window\n"); #endif - ShowWindow(hwnd, SW_SHOWNORMAL); - //ShowWindow(hwnd, SW_SHOW); +// ShowWindow(hwnd, SW_SHOWNORMAL); + ShowWindow(hwnd, SW_SHOW); UpdateWindow(hwnd); SetForegroundWindow(hwnd); SetFocus(hwnd); @@ -410,7 +415,6 @@ if (isMinimized) return; ShowWindow(hwnd, SW_MINIMIZE); - tempResetDisplayMode(); } /* @@ -424,6 +428,5 @@ if (!isMinimized) return; - tempRestoreDisplayMode(); ShowWindow(hwnd, SW_RESTORE); } |