Skip to content

Commit e3cb3d0

Browse files
committed
FullscreenUI: Fix system not unpausing after HC disable popup
1 parent 27fc7de commit e3cb3d0

1 file changed

Lines changed: 8 additions & 10 deletions

File tree

src/duckstation-qt/qthost.cpp

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2064,27 +2064,25 @@ void Host::ConfirmMessageAsync(std::string_view title, std::string_view message,
20642064
{
20652065
GPUThread::RunOnThread([title = std::string(title), message = std::string(message), callback = std::move(callback),
20662066
yes_text = std::string(yes_text), no_text = std::string(no_text), needs_pause]() mutable {
2067-
if (!FullscreenUI::Initialize())
2068-
{
2069-
callback(false);
2070-
2067+
// Need to reset run idle state _again_ after displaying.
2068+
auto final_callback = [callback = std::move(callback), needs_pause](bool result) {
2069+
FullscreenUI::UpdateRunIdleState();
20712070
if (needs_pause)
20722071
{
20732072
Host::RunOnCPUThread([]() {
20742073
if (System::IsValid())
20752074
System::PauseSystem(false);
20762075
});
20772076
}
2077+
callback(result);
2078+
};
20782079

2080+
if (!FullscreenUI::Initialize())
2081+
{
2082+
final_callback(false);
20792083
return;
20802084
}
20812085

2082-
// Need to reset run idle state _again_ after displaying.
2083-
auto final_callback = [callback = std::move(callback)](bool result) {
2084-
FullscreenUI::UpdateRunIdleState();
2085-
callback(result);
2086-
};
2087-
20882086
ImGuiFullscreen::OpenConfirmMessageDialog(std::move(title), std::move(message), std::move(final_callback),
20892087
fmt::format(ICON_FA_CHECK " {}", yes_text),
20902088
fmt::format(ICON_FA_TIMES " {}", no_text));

0 commit comments

Comments
 (0)