From e0d3a3b0ed6b42351dfe610d3ad97ef2dac96196 Mon Sep 17 00:00:00 2001 From: Megamouse Date: Tue, 26 Apr 2022 00:20:57 +0200 Subject: [PATCH] cellOskDialog: do not intercept input unless we actually show a dialog --- rpcs3/Emu/Cell/Modules/cellOskDialog.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rpcs3/Emu/Cell/Modules/cellOskDialog.cpp b/rpcs3/Emu/Cell/Modules/cellOskDialog.cpp index e607b609ac..b6e4dd5c24 100644 --- a/rpcs3/Emu/Cell/Modules/cellOskDialog.cpp +++ b/rpcs3/Emu/Cell/Modules/cellOskDialog.cpp @@ -522,8 +522,6 @@ error_code cellOskDialogLoadAsync(u32 container, vm::ptr dia osk->mouse_input_enabled = (info.device_mask != CELL_OSKDIALOG_DEVICE_MASK_PAD); } - input::SetIntercepted(osk->pad_input_enabled, osk->keyboard_input_enabled, osk->mouse_input_enabled); - if (info.osk_continuous_mode == CELL_OSKDIALOG_CONTINUOUS_MODE_HIDE) { info.last_dialog_state = CELL_SYSUTIL_OSKDIALOG_LOADED; @@ -531,6 +529,8 @@ error_code cellOskDialogLoadAsync(u32 container, vm::ptr dia return CELL_OK; } + input::SetIntercepted(osk->pad_input_enabled, osk->keyboard_input_enabled, osk->mouse_input_enabled); + Emu.CallFromMainThread([=, &result, &info]() { osk->Create(get_localized_string(localized_string_id::CELL_OSK_DIALOG_TITLE), message, osk->osk_text, maxLength, prohibitFlgs, allowOskPanelFlg, firstViewPanel, info.base_color.load(), info.dimmer_enabled.load(), false);