| 311 | } |
| 312 | |
| 313 | void close_msg_dialog() |
| 314 | { |
| 315 | cellSysutil.notice("close_msg_dialog()"); |
| 316 | |
| 317 | if (auto manager = g_fxo->try_get<rsx::overlays::display_manager>()) |
| 318 | { |
| 319 | if (auto dlg = manager->get<rsx::overlays::message_dialog>()) |
| 320 | { |
| 321 | g_fxo->get<msg_dlg_thread>().wait_until = 0; |
| 322 | dlg->close(false, true); // this doesn't call on_close |
| 323 | sysutil_send_system_cmd(CELL_SYSUTIL_DRAWING_END, 0); |
| 324 | return; |
| 325 | } |
| 326 | } |
| 327 | |
| 328 | if (const auto dlg = g_fxo->get<msg_info>().get()) |
| 329 | { |
| 330 | dlg->state = MsgDialogState::Close; |
| 331 | g_fxo->get<msg_dlg_thread>().wait_until = 0; |
| 332 | g_fxo->get<msg_info>().remove(); // this shouldn't call on_close |
| 333 | input::SetIntercepted(false); // so we need to reenable the pads here |
| 334 | sysutil_send_system_cmd(CELL_SYSUTIL_DRAWING_END, 0); |
| 335 | } |
| 336 | } |
| 337 | |
| 338 | void exit_game(s32 /* buttonType*/, vm::ptr<void> /* userData*/) |
| 339 | { |
no test coverage detected