diff --git a/src/game/g_window.pas b/src/game/g_window.pas
index c3f6871061252e87cb54f557d85f730b15530af5..8336ea9b82cb39b11cd0b5b95c8e992e8cc3b0dd 100644 (file)
--- a/src/game/g_window.pas
+++ b/src/game/g_window.pas
end;
-procedure ChangeWindowSize ();
+procedure ChangeWindowSize (requested: Boolean);
begin
e_LogWritefln(' ChangeWindowSize: (ws=%dx%d) (ss=%dx%d)', [gWinSizeX, gWinSizeY, gScreenWidth, gScreenHeight]);
gWinSizeX := gScreenWidth;
{$ENDIF}
e_ResizeWindow(gScreenWidth, gScreenHeight);
g_Game_SetupScreenSize();
- g_Menu_Reset();
+ {$IF DEFINED(ANDROID)}
+ (* This will fix menu reset on keyboard showing *)
+ if requested then
+ g_Menu_Reset;
+ {$ELSE}
+ g_Menu_Reset;
+ {$ENDIF}
g_Game_ClearLoading();
{$ENDIF}
end;
if result then
begin
g_Window_SetDisplay(preserve);
- ChangeWindowSize();
+ ChangeWindowSize(true);
end;
{$ENDIF}
end;
SDL_WINDOWEVENT_MINIMIZED:
begin
e_UnpressAllKeys();
+ if (gPlayer1 <> nil) then gPlayer1.releaseAllWeaponSwitchKeys();
+ if (gPlayer2 <> nil) then gPlayer2.releaseAllWeaponSwitchKeys();
if not wMinimized then
begin
e_ResizeWindow(0, 0);
gScreenWidth := ev.data1;
gScreenHeight := ev.data2;
end;
- ChangeWindowSize();
+ ChangeWindowSize(false);
SwapBuffers();
if g_debug_WinMsgs then
begin
begin
wDeactivate := true;
e_UnpressAllKeys();
+ if (gPlayer1 <> nil) then gPlayer1.releaseAllWeaponSwitchKeys();
+ if (gPlayer2 <> nil) then gPlayer2.releaseAllWeaponSwitchKeys();
//e_WriteLog('window lost focus!', MSG_NOTIFY);
end;
end;