FullscreenUI: Fix unpausing when closing achievement list
This commit is contained in:
parent
19dcd07f87
commit
2ab38aa47c
|
@ -272,17 +272,23 @@ void SystemPaused(bool paused)
|
||||||
//
|
//
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void PauseForMenuOpen()
|
||||||
|
{
|
||||||
|
s_was_paused_on_quick_menu_open = System::IsPaused();
|
||||||
|
if (s_settings_copy.pause_on_menu && !s_was_paused_on_quick_menu_open)
|
||||||
|
s_host_interface->RunLater([]() { s_host_interface->PauseSystem(true); });
|
||||||
|
|
||||||
|
s_quick_menu_was_open = true;
|
||||||
|
}
|
||||||
|
|
||||||
void OpenQuickMenu()
|
void OpenQuickMenu()
|
||||||
{
|
{
|
||||||
if (!System::IsValid() || s_current_main_window != MainWindowType::None)
|
if (!System::IsValid() || s_current_main_window != MainWindowType::None)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
s_was_paused_on_quick_menu_open = System::IsPaused();
|
PauseForMenuOpen();
|
||||||
if (s_settings_copy.pause_on_menu && !s_was_paused_on_quick_menu_open)
|
|
||||||
s_host_interface->RunLater([]() { s_host_interface->PauseSystem(true); });
|
|
||||||
|
|
||||||
s_current_main_window = MainWindowType::QuickMenu;
|
s_current_main_window = MainWindowType::QuickMenu;
|
||||||
s_quick_menu_was_open = true;
|
|
||||||
ClearImGuiFocus();
|
ClearImGuiFocus();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -307,8 +313,10 @@ bool OpenAchievementsWindow()
|
||||||
if (!achievements_enabled)
|
if (!achievements_enabled)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
|
if (!s_quick_menu_was_open)
|
||||||
|
PauseForMenuOpen();
|
||||||
|
|
||||||
s_current_main_window = MainWindowType::Achievements;
|
s_current_main_window = MainWindowType::Achievements;
|
||||||
s_quick_menu_was_open = false;
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -318,9 +326,11 @@ bool OpenLeaderboardsWindow()
|
||||||
if (!leaderboards_enabled)
|
if (!leaderboards_enabled)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
|
if (!s_quick_menu_was_open)
|
||||||
|
PauseForMenuOpen();
|
||||||
|
|
||||||
s_current_main_window = MainWindowType::Leaderboards;
|
s_current_main_window = MainWindowType::Leaderboards;
|
||||||
s_open_leaderboard_id.reset();
|
s_open_leaderboard_id.reset();
|
||||||
s_quick_menu_was_open = false;
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue