Savestates: Implement Ctrl+R to reload the most recent savestate

Ctrl+R no longer means Resume emulation, this functionality has been transferred to Ctrl+P which is also capable of pausing the emulation. (so it's now a toggle)
This commit is contained in:
Eladash 2022-07-11 17:08:34 +03:00 committed by Ivan
parent 1f5cf776b2
commit 0bfdfd8433
8 changed files with 247 additions and 129 deletions

View file

@ -247,20 +247,6 @@ void gs_frame::keyPressEvent(QKeyEvent *keyEvent)
}
break;
case Qt::Key_P:
if (keyEvent->modifiers() == Qt::ControlModifier && !m_disable_kb_hotkeys && Emu.IsRunning())
{
Emu.Pause();
return;
}
break;
case Qt::Key_S:
if (keyEvent->modifiers() == Qt::ControlModifier && !m_disable_kb_hotkeys)
{
Emu.Restart(true);
return;
}
break;
case Qt::Key_R:
if (keyEvent->modifiers() == Qt::ControlModifier && !m_disable_kb_hotkeys)
{
switch (Emu.GetStatus())
@ -275,8 +261,26 @@ void gs_frame::keyPressEvent(QKeyEvent *keyEvent)
Emu.Resume();
return;
}
default: break;
default:
{
Emu.Pause();
return;
}
}
}
break;
case Qt::Key_S:
if (keyEvent->modifiers() == Qt::ControlModifier && !m_disable_kb_hotkeys)
{
Emu.Restart(true);
return;
}
break;
case Qt::Key_R:
if (keyEvent->modifiers() == Qt::ControlModifier && !m_disable_kb_hotkeys)
{
extern bool boot_last_savestate();
boot_last_savestate();
}
break;
case Qt::Key_C: