From d61727782fa472b9c664a23a0c9ab42a63c9d0ec Mon Sep 17 00:00:00 2001 From: Anime <30175255+Anime37@users.noreply.github.com> Date: Sun, 30 Mar 2025 15:20:41 +0300 Subject: [PATCH] input: fastforward hotkey --- src/config/CemuConfig.cpp | 2 ++ src/config/CemuConfig.h | 1 + src/gui/input/HotkeySettings.cpp | 2 ++ 3 files changed, 5 insertions(+) diff --git a/src/config/CemuConfig.cpp b/src/config/CemuConfig.cpp index 94f20f2b..ac96b239 100644 --- a/src/config/CemuConfig.cpp +++ b/src/config/CemuConfig.cpp @@ -350,6 +350,7 @@ void CemuConfig::Load(XMLConfigParser& parser) hotkeys.toggleFullscreen = xml_hotkeys.get("ToggleFullscreen", sHotkeyCfg{uKeyboardHotkey{WXK_F11}}); hotkeys.toggleFullscreenAlt = xml_hotkeys.get("ToggleFullscreenAlt", sHotkeyCfg{uKeyboardHotkey{WXK_CONTROL_M, true}}); // ALT+ENTER hotkeys.takeScreenshot = xml_hotkeys.get("TakeScreenshot", sHotkeyCfg{uKeyboardHotkey{WXK_F12}}); + hotkeys.toggleFastForward = xml_hotkeys.get("ToggleFastForward", sHotkeyCfg{}); // emulatedusbdevices auto usbdevices = parser.get("EmulatedUsbDevices"); @@ -559,6 +560,7 @@ void CemuConfig::Save(XMLConfigParser& parser) xml_hotkeys.set("ToggleFullscreen", hotkeys.toggleFullscreen); xml_hotkeys.set("ToggleFullscreenAlt", hotkeys.toggleFullscreenAlt); xml_hotkeys.set("TakeScreenshot", hotkeys.takeScreenshot); + xml_hotkeys.set("ToggleFastForward", hotkeys.toggleFastForward); // emulated usb devices auto usbdevices = config.set("EmulatedUsbDevices"); diff --git a/src/config/CemuConfig.h b/src/config/CemuConfig.h index 9a5e2f47..cc182cec 100644 --- a/src/config/CemuConfig.h +++ b/src/config/CemuConfig.h @@ -551,6 +551,7 @@ struct CemuConfig sHotkeyCfg toggleFullscreenAlt; sHotkeyCfg exitFullscreen; sHotkeyCfg takeScreenshot; + sHotkeyCfg toggleFastForward; } hotkeys{}; // debug diff --git a/src/gui/input/HotkeySettings.cpp b/src/gui/input/HotkeySettings.cpp index 67522eef..2586b36d 100644 --- a/src/gui/input/HotkeySettings.cpp +++ b/src/gui/input/HotkeySettings.cpp @@ -14,6 +14,7 @@ const std::unordered_map> HotkeySettings: {&s_cfgHotkeys.toggleFullscreenAlt, [](void) { s_mainWindow->ShowFullScreen(!s_mainWindow->IsFullScreen()); }}, {&s_cfgHotkeys.exitFullscreen, [](void) { s_mainWindow->ShowFullScreen(false); }}, {&s_cfgHotkeys.takeScreenshot, [](void) { g_window_info.has_screenshot_request = true; }}, + {&s_cfgHotkeys.toggleFastForward, [](void) { ActiveSettings::SetTimerShiftFactor((ActiveSettings::GetTimerShiftFactor() < 3) ? 3 : 1); }}, }; struct HotkeyEntry @@ -57,6 +58,7 @@ HotkeySettings::HotkeySettings(wxWindow* parent) /* hotkeys */ CreateHotkeyRow("Toggle fullscreen", s_cfgHotkeys.toggleFullscreen); CreateHotkeyRow("Take screenshot", s_cfgHotkeys.takeScreenshot); + CreateHotkeyRow("Toggle fast-forward", s_cfgHotkeys.toggleFastForward); m_controllerTimer = new wxTimer(this); Bind(wxEVT_TIMER, &HotkeySettings::OnControllerTimer, this);