summaryrefslogtreecommitdiff
path: root/Source/Core/DolphinQt/HotkeyScheduler.cpp
AgeCommit message (Collapse)Author
6 daysReplace string concatination with `fmt::format`Dr. Dystopia
2026-05-23Merge pull request #14506 from adamscott/crop-that-screenAdmiral H. Curtiss
Add screen crop feature
2026-04-24VideoConfig: Rename StereoMode::TAB to StereoMode::TopAndBottomDentomologist
2026-04-23VideoConfig: Rename StereoMode::SBS to StereoMode::SideBySideDentomologist
2026-04-23HotkeyManager: Unabbreviate HK_TOGGLE_STEREO_TABDentomologist
Rename HK_TOGGLE_STEREO_TAB to HK_TOGGLE_STEREO_TOP_AND_BOTTOM.
2026-04-23HotkeyManager: Unabbreviate HK_TOGGLE_STEREO_SBSDentomologist
Rename HK_TOGGLE_STEREO_SBS to HK_TOGGLE_STEREO_SIDE_BY_SIDE.
2026-04-18Add screen crop featureAdam Scott
2026-01-25Remove unused importsMartino Fontana
Yellow squiggly lines begone! Done automatically on .cpp files through `run-clang-tidy`, with manual corrections to the mistakes. If an import is directly used, but is technically unnecessary since it's recursively imported by something else, it is *not* removed. The tool doesn't touch .h files, so I did some of them by hand while fixing errors due to old recursive imports. Not everything is removed, but the cleanup should be substantial enough. Because this done on Linux, code that isn't used on it is mostly untouched. (Hopefully no open PR is depending on these imports...)
2025-11-12Improved stereoscopic 3D settingsAndrewGDX
2025-06-14Source: Remove redundant lambda parameter listsDr. Dystopia
2025-05-22DolphinQt: Don't translate Wii Speak OSD stringJosJuice
We have a general policy of not translating OSD strings due to the OSD font not having good enough support for languages other than English.
2025-05-07HotkeyManager: Add HK_TOGGLE_WII_SPEAK_MUTESepalani
2024-10-19Merge pull request #13114 from TryTwo/PR_Turbo_Mutes_AudioJMC47
Audio: Add option to temporarily mute audio when using turbo
2024-10-15Audio: Add option to AudioPane to temporarily mute audio when emulation ↵TryTwo
speed limit is disabled.
2024-10-04Partially revert "Revert "Audit uses of IsRunning and GetState""JosJuice
This reverts the revert commit bc67fc97c39628c76a4dbca411b0e8a9bfaf726a, except for the changes in BaseConfigLoader.cpp, which caused the bug that made us revert 72cf2bdb87f09deff22e1085de3290126aa4ad05. PR 12917 contains an improved change to BaseConfigLoader.cpp, which can be merged (or rejected) independently. A few changes have also been made based on review comments.
2024-09-06Texture Dumping: Show OSD message on startup and when toggledDentomologist
If texture dumping is enabled, notify the user on emulation startup using an On Screen Display message. Also notify the user when texture dumping is toggled. Addresses https://bugs.dolphin-emu.org/issues/12445.
2024-08-26HotkeyScheduler: Handle Wii Remote connections independentlyDentomologist
Allow connecting or disconnecting multiple Wii Remotes simultaneously instead of only handling the highest index whose hotkey is pressed. This allows using a single hotkey to toggle multiple remotes.
2024-07-06Add Open Achievements HotkeyLillyJadeKatrin
Adds a hotkey to pause emulation and bring up the Achievements dialog.
2024-07-04Merge pull request #12784 from TryTwo/PR_Frame_Advance_FixAdmiral H. Curtiss
Frame Advance: Fix UI update spam when continuously advancing.
2024-06-26FrameAdvance: Fix continuous frame advancing while the debug UI is open. ↵TryTwo
Blocks signals from being spammed to update the UI.
2024-06-26Revert "Audit uses of IsRunning and GetState"JosJuice
This reverts commit 72cf2bdb87f09deff22e1085de3290126aa4ad05. SYSCONF settings are getting cleared when they shouldn't be. Let's revert the change until I get proper time to figure out why it's broken.
2024-06-22Merge pull request #12828 from JosJuice/unify-state-variables-2Admiral H. Curtiss
Clean up Core::GetState
2024-06-21Audit uses of IsRunning and GetStateJosJuice
Some pieces of code are calling IsRunning because there's some particular action that only makes sense when emulation is running, for instance showing the state of the emulated CPU. IsRunning is appropriate to use for this. Then there are pieces of code that are calling IsRunning because there's some particular thing they must avoid doing e.g. when the CPU thread is running or IOS is running. IsRunning isn't quite appropriate for this. Such code should also be checking for the states Starting and Stopping. Keep in mind that: * When the state is Starting, the state can asynchronously change to Running at any time. * When we try to stop the core, the state gets set to Stopping before we take any action to actually stop things. This commit adds a new method Core::IsUninitialized, and changes all callers of IsRunning and GetState that look to me like they should be changed.
2024-06-21Core: Store current state in less placesJosJuice
Core::GetState reads from four different pieces of state: s_is_stopping, s_hardware_initialized, s_is_booting, and CPUManager::IsStepping. I'm keeping that last one as is for now because there's code in Dolphin that sets it directly, but we can unify the other three to make things easier to reason about. This commit also gets rid of s_is_started. This was previously used in Core::IsRunningAndStarted to ensure true wouldn't be returned until the CPU thread was started, but it wasn't used in Core::GetState, so Core::GetState would happily return State::Running after we had initialized the hardware but before we had initialized the CPU thread. As far as I know, there are no callers that have any real need to know whether the boot process is currently initializing the hardware or the CPU thread. Perhaps once upon a time there was a desire to make the apploader debuggable, but a long time has passed without anyone stepping up to implement it, and the way CBoot::RunApploader is implemented makes it rather difficult. So this commit makes all the functions in Core.cpp consider the core to still be starting until the CPU thread is started.
2024-06-12Remove Extra Speed Limit MessageLillyJadeKatrin
Prior to this change, attempting to decrease the speed limit below 100% in hardmode would display the new attempted speed and then warn that the speed can not be decreased below 100%; this disables that first message under those conditions.
2024-06-06Use a stub AchivementManager when USE_RETRO_ACHIEVEMENTS isn't definedJosJuice
This lets us reduce the number of USE_RETRO_ACHIEVEMENTS ifdefs in the code base, reducing visual clutter. In particular, needing an ifdef for each call to IsHardcodeModeActive was annoying to me. This also reduces the risk that someone writes code that accidentally fails to compile with USE_RETRO_ACHIEVEMENTS disabled. We could cut down on ifdefs even further by making HardcodeWarningWidget always exist, but that would result in non-trivial code ending up in the binary even with USE_RETRO_ACHIEVEMENTS disabled, so I'm leaving it out of this PR. It's not a lot of code though, so I might end up revisiting it at some point.
2024-05-18DolphinQt: trigger frame advance from hotkeys on the host thread (the ↵iwubcode
underlying SetState is only valid on the host thread)
2024-04-08Core::GetState: Avoid Global System Accessormitaclaw
2024-02-29Add custom relative and raw (squared pixels) aspect ratio modesFiloppi
2024-01-31Migrate SConfig::bWii to System.Admiral H. Curtiss
2023-12-18Video: implement custom aspect ratio support (already exposed to Qt).Filoppi
This also renamed some variables/functions.
2023-12-11AchievementManager: Make GetInstance() return a referenceLioncash
The internal static member will always have a valid lifetime. Makes this consistent with other instance based objects in our code.
2023-12-02Disable Freelook in hardcore modeLillyJadeKatrin
The player getting a better view of their surroundings than the game would normally allow could possibly give the player an advantage over the original hardware, so Freelook is disabled in hardcore mode. To do this, I disable the config flag for Freelook when it is accessed, to make sure that it is disabled whether it was enabled before or after hardcore mode was enabled.
2023-12-02Disable Debug Mode in hardcore modeLillyJadeKatrin
Debug Mode gives players direct read and write access to memory, which could be used to completely manipulate RetroAchievements logic and therefore is not allowed in hardcore mode.
2023-09-27DolphinQt: Fix decrease emulation speed hotkey rolloversowens99
2023-08-27Use latest resolution value for resolution hotkey OSDJosJuice
Because CPU thread config changed callbacks are no longer instant, g_Config.iEFBScale doesn't yet contain the new value when the hotkey OSD code tries to read it. Should fix https://bugs.dolphin-emu.org/issues/13343.
2023-05-26Add Hotkeys for Skylanders Portal and Infinity Base Menusjnaidu360
Adds two new hotkeys to open the menus for emulated USB devices- Skylanders Portal of Power and the Infinity Base. (Hotkeys only active when game is running). Portal menu: Default is <Ctrl+P>. Infinity base: Default is <Ctrl+I>
2023-02-09Cleanup headersScott Mansell
2022-11-06AudioCommon: Pass Core::System to AudioCommon functions.Admiral H. Curtiss
2022-10-12Remove most uses of StringFromFormat in favor of fmtPokechu22
2022-08-07Add hotkeys for incrementing/decrementing selected state slot (like RetroArch)askew-etc
2022-07-25Add hotkey for centering mouse in render window.Admiral H. Curtiss
2022-07-17Split out controller initialization to UICommonJosJuice
2022-01-06Config: Port emulation speed setting to new config system.Admiral H. Curtiss
2021-12-31Config: Port remaining Interface settings to new config system.Admiral H. Curtiss
2021-10-16Merge pull request #10171 from malleoz/fix-frame-advance-speedLéo Lam
Fix swapped frame advance speed increase/decrease
2021-10-15Port Main.DSP to MainSettingssowens99
While trying to work on adding audiodump support for CLI, I was alerted that it was important to first try moving the DSP configs to the new config before continuing, as that makes it substantially easier to write clean code to add such a feature. This commit aims to allow for Dolphin to only rely on the new config for DSP-related settings.
2021-10-15Fix swapped frame advance speed increase/decreasesowens99
Frame Advance Speed hotkeys were swapped. This likely occurred because speed and delay are inverses (i.e. a speed increase should DECREASE the delay and vice versa).
2021-09-24HotkeyScheduler: add PlayRecording hotkey supportsowens99
This hotkey was not previously implemented in the scheduler, even though it's present in the hotkey menu.
2021-09-23Check for certain hotkeys in game listsowens99
There are certain hotkeys that we absolutely want to be able to use without being in-game. Presently, no hotkeys are recognized unless we are in-game. I've identified and moved the following hotkeys to be checked before the HotkeyScheduler checks to see if the Core is running: - Open - Exit - Start Recording - Refresh Game List Note that Play Recording should also be implemented here, however it looks like there is no signal for a PlayRecording() function, so this will have to be handled in a later PR once that signal is created and implemented.