Skip to content

Commit 8ac75b7

Browse files
committed
Do not exit big picture with circle
This is the default behavior of the home_menu_page, which was only intended for use during gameplay originally. We also expect the game grid to have a parent.
1 parent 65c8fb5 commit 8ac75b7

2 files changed

Lines changed: 11 additions & 12 deletions

File tree

rpcs3/Emu/RSX/Overlays/BigPicture/overlay_big_picture.cpp

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,7 @@ namespace rsx
8484
break;
8585
}
8686

87+
const bool main_menu_is_current_page = m_main_menu.is_current_page;
8788
const page_navigation navigation = m_main_menu.handle_button_press(button_press, is_auto_repeat, m_auto_repeat_ms_interval);
8889

8990
switch (navigation)
@@ -110,6 +111,12 @@ namespace rsx
110111
}
111112
case page_navigation::exit:
112113
{
114+
// Don't exit if circle was pressed in the main menu
115+
if (main_menu_is_current_page && button_press == pad_button::circle)
116+
{
117+
break;
118+
}
119+
113120
// Don't call close() synchronously from the input thread - just like the pause menu's own
114121
// "Exit Game", tearing down the shell on the main thread takes this dialog down as a side effect.
115122
g_big_picture_mode_active = false;

rpcs3/Emu/RSX/Overlays/BigPicture/overlay_big_picture_game_grid.cpp

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -322,12 +322,8 @@ namespace rsx
322322
if (button_press == pad_button::circle)
323323
{
324324
play_sound(sound_effect::cancel);
325-
if (parent)
326-
{
327-
set_current_page(parent);
328-
return page_navigation::back;
329-
}
330-
return page_navigation::exit;
325+
set_current_page(ensure(parent));
326+
return page_navigation::back;
331327
}
332328

333329
return page_navigation::stay;
@@ -372,12 +368,8 @@ namespace rsx
372368
return page_navigation::stay;
373369
case pad_button::circle:
374370
play_sound(sound_effect::cancel);
375-
if (parent)
376-
{
377-
set_current_page(parent);
378-
return page_navigation::back;
379-
}
380-
return page_navigation::exit;
371+
set_current_page(ensure(parent));
372+
return page_navigation::back;
381373
default:
382374
return page_navigation::stay;
383375
}

0 commit comments

Comments
 (0)