|
@@ -312,15 +312,15 @@ WIN_WindowProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
|
|
}
|
|
}
|
|
|
|
|
|
#ifdef WMMSG_DEBUG
|
|
#ifdef WMMSG_DEBUG
|
|
- {
|
|
|
|
- char message[1024];
|
|
|
|
- if (msg > MAX_WMMSG) {
|
|
|
|
- SDL_snprintf(message, sizeof(message), "Received windows message: %p UNKNOWN (%d) -- 0x%X, 0x%X\n", hwnd, msg, wParam, lParam);
|
|
|
|
- } else {
|
|
|
|
- SDL_snprintf(message, sizeof(message), "Received windows message: %p %s -- 0x%X, 0x%X\n", hwnd, wmtab[msg], wParam, lParam);
|
|
|
|
- }
|
|
|
|
- OutputDebugStringA(message);
|
|
|
|
- }
|
|
|
|
|
|
+ {
|
|
|
|
+ char message[1024];
|
|
|
|
+ if (msg > MAX_WMMSG) {
|
|
|
|
+ SDL_snprintf(message, sizeof(message), "Received windows message: %p UNKNOWN (%d) -- 0x%X, 0x%X\n", hwnd, msg, wParam, lParam);
|
|
|
|
+ } else {
|
|
|
|
+ SDL_snprintf(message, sizeof(message), "Received windows message: %p %s -- 0x%X, 0x%X\n", hwnd, wmtab[msg], wParam, lParam);
|
|
|
|
+ }
|
|
|
|
+ OutputDebugStringA(message);
|
|
|
|
+ }
|
|
#endif /* WMMSG_DEBUG */
|
|
#endif /* WMMSG_DEBUG */
|
|
|
|
|
|
if (IME_HandleMessage(hwnd, msg, wParam, &lParam, data->videodata))
|
|
if (IME_HandleMessage(hwnd, msg, wParam, &lParam, data->videodata))
|
|
@@ -348,12 +348,6 @@ WIN_WindowProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
|
|
SHORT keyState;
|
|
SHORT keyState;
|
|
|
|
|
|
SDL_SendWindowEvent(data->window, SDL_WINDOWEVENT_SHOWN, 0, 0);
|
|
SDL_SendWindowEvent(data->window, SDL_WINDOWEVENT_SHOWN, 0, 0);
|
|
- SDL_SendWindowEvent(data->window,
|
|
|
|
- SDL_WINDOWEVENT_RESTORED, 0, 0);
|
|
|
|
- if (IsZoomed(hwnd)) {
|
|
|
|
- SDL_SendWindowEvent(data->window,
|
|
|
|
- SDL_WINDOWEVENT_MAXIMIZED, 0, 0);
|
|
|
|
- }
|
|
|
|
if (SDL_GetKeyboardFocus() != data->window) {
|
|
if (SDL_GetKeyboardFocus() != data->window) {
|
|
SDL_SetKeyboardFocus(data->window);
|
|
SDL_SetKeyboardFocus(data->window);
|
|
}
|
|
}
|
|
@@ -400,10 +394,6 @@ WIN_WindowProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
|
|
if (SDL_GetKeyboardFocus() == data->window) {
|
|
if (SDL_GetKeyboardFocus() == data->window) {
|
|
SDL_SetKeyboardFocus(NULL);
|
|
SDL_SetKeyboardFocus(NULL);
|
|
}
|
|
}
|
|
- if (minimized) {
|
|
|
|
- SDL_SendWindowEvent(data->window,
|
|
|
|
- SDL_WINDOWEVENT_MINIMIZED, 0, 0);
|
|
|
|
- }
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
returnCode = 0;
|
|
returnCode = 0;
|
|
@@ -596,10 +586,14 @@ WIN_WindowProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
|
|
BOOL menu;
|
|
BOOL menu;
|
|
BOOL constrain_max_size;
|
|
BOOL constrain_max_size;
|
|
|
|
|
|
- /* If we allow resizing, let the resize happen naturally */
|
|
|
|
if (SDL_IsShapedWindow(data->window))
|
|
if (SDL_IsShapedWindow(data->window))
|
|
Win32_ResizeWindowShape(data->window);
|
|
Win32_ResizeWindowShape(data->window);
|
|
|
|
|
|
|
|
+ /* If this is an expected size change, allow it */
|
|
|
|
+ if (data->expected_resize) {
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+
|
|
/* Get the current position of our window */
|
|
/* Get the current position of our window */
|
|
GetWindowRect(hwnd, &size);
|
|
GetWindowRect(hwnd, &size);
|
|
x = size.left;
|
|
x = size.left;
|
|
@@ -693,6 +687,26 @@ WIN_WindowProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
|
|
}
|
|
}
|
|
break;
|
|
break;
|
|
|
|
|
|
|
|
+ case WM_SIZE:
|
|
|
|
+ {
|
|
|
|
+ switch (wParam)
|
|
|
|
+ {
|
|
|
|
+ case SIZE_MAXIMIZED:
|
|
|
|
+ SDL_SendWindowEvent(data->window,
|
|
|
|
+ SDL_WINDOWEVENT_MAXIMIZED, 0, 0);
|
|
|
|
+ break;
|
|
|
|
+ case SIZE_MINIMIZED:
|
|
|
|
+ SDL_SendWindowEvent(data->window,
|
|
|
|
+ SDL_WINDOWEVENT_MINIMIZED, 0, 0);
|
|
|
|
+ break;
|
|
|
|
+ default:
|
|
|
|
+ SDL_SendWindowEvent(data->window,
|
|
|
|
+ SDL_WINDOWEVENT_RESTORED, 0, 0);
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ break;
|
|
|
|
+
|
|
case WM_SETCURSOR:
|
|
case WM_SETCURSOR:
|
|
{
|
|
{
|
|
Uint16 hittest;
|
|
Uint16 hittest;
|