summaryrefslogtreecommitdiff
path: root/Source/Core/DolphinQt/Config/Mapping/MappingWindow.cpp
AgeCommit message (Collapse)Author
2026-02-15DolphinQt: Add Triforce tab to main settings window.Jordan Woyak
2026-02-15Added Triforce supportcrediar
2026-01-24Common/FileSearch: Refactor DoFileSearchSintendo
2025-11-04feat(profiles): add "open profiles folder" button + add dropdown button for ↵iTrooz
profile actions Co-Authored-By: iTrooz <hey@itrooz.fr> Co-Authored-By: Max Chateau <maxban.chateau@gmail.com> Co-Authored-By: Damien R. <rodriguezdamien1677@gmail.com>
2025-06-07DolphinQt: Replace widespread SetQWidgetWindowDecorations calls with an ↵Jordan Woyak
event filter.
2025-06-06DolphinQt: Remove redundant window hintsDentomologist
Remove window hints clearing the flag Qt::WindowContextHelpButtonHint, which is already off by default in Qt 6. In Qt 5 this flag was set by default for QDialogs, and on Windows put a ? button in the corner of the title bar allowing users to activate Qt's QWhatsThis help system for a given widget. Since we don't set that text the ? button was useless and so we hid it manually.
2025-05-26DolphinQt: Make WrapInScrollArea and GetWrappedWidget less hacky.Jordan Woyak
2025-03-22Core / DolphinQt / InputCommon: reduce the number disk writes when using ↵iwubcode
DynamicInputTextures
2025-02-15DolphinQt: Add setting to enable iterative input mappings.Jordan Woyak
2025-02-01DolphinQt/Mapping: Add setting to enable waiting for alternate mappingsJordan Woyak
using the OR-operator.
2025-01-22DolphinQt: Add a "Configure Extension" button under the extensionJordan Woyak
selection combo box.
2025-01-01DolphinQt: Make input mapping and output testing non-blocking.Jordan Woyak
2024-11-25DolphinQt: Update mapping indicators at screen refresh rate.Jordan Woyak
2024-10-11DolphinQt: Auto hide the mapping window tab bar.Jordan Woyak
2024-06-23DolphinQt: fix -Wunused-const-variable warningTillmann Karras
2024-02-04InputCommon: Unify GetProfileName and GetProfileDirectoryNameJosJuice
After reading the previous commit, you might think "hold on, what's the difference between GetProfileName and GetProfileDirectoryName"? These two are being used for the exact same thing - figuring out where profiles are stored - yet they return different values for certain controllers like GC keyboards! As far as I can tell, the existing code has been broken for GC keyboards since they were introduced a decade ago. The GUI (and more recently, also InputCycler) would write and read profiles in one location, and our code for loading profiles specified in a game INI file would read profiles in another location. This commit gets rid of the set of values used by the game INI code in favor of the other set. This does breaking existing setups where a GCKey profile has been configured in a game INI, but I think the number of working such setups is vanishingly small. The alternative would make existing GCKey profiles go missing from the profile dropdown in the GUI, which I think would be more disruptive. The alternative would also force new GCKey profiles into the same directory as GCPad profiles. This commit also fixes a regression from d6c0f8e749. The Android GUI was using GetProfileName to figure out what key to use in the game INI, which made it use incorrect game INI entries for GameCube controller profiles but not Wii Remote profiles. Now the Android GUI uses GetProfileKey for this, fixing the problem.
2023-11-04DolphinQt: Remove unnecessary qOverloadsDentomologist
qOverload is used to disambiguate pointers to overloaded functions, but most of the usages in the code base were with non-overloaded functions.
2023-08-12DolphinQt: Set window decorations for all top-level QWidgets.Admiral H. Curtiss
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-04-13Common/IniFile: Move interface into Common namespaceLioncash
Gets this out of the global namespace and into the Common namespace
2022-10-09DolphinQt: Make "All Devices" mapping hopefully less confusing.Jordan Woyak
2022-03-08Add NonDefaultQPushButton to set autoDefault of buttons to falseMartin
2021-10-07MappingWindow: disable hotkeys while window is activesowens99
MappingWindow is modal, yet the user can use hotkeys while the window is active. I believe hotkeys should not be recognized while this window is active.
2021-10-05Update MappingWindow.cppPPLToast
2021-07-13Qt/Core: Implement GBA HotkeysBonta
2021-07-13Qt: GBA Pad configBonta
2021-07-05treewide: convert GPLv2+ license info to SPDX tagsPierre Bourdon
SPDX standardizes how source code conveys its copyright and licensing information. See https://spdx.github.io/spdx-spec/1-rationale/ . SPDX tags are adopted in many large projects, including things like the Linux kernel.
2021-06-07Qt: Fix IOWindow keeping a shared ptr to devices even after them being ↵Filoppi
removed by the ControllerInterface this prevented some devices from being recreated correctly, as they were exclusive (e.g. DInput Joysticks) This is achieved by calling Settings::ReleaseDevices(), which releases all the UI devices shared ptrs. If we are the host (Qt) thread, DevicesChanged() is now called in line, to avoid devices being hanged onto by the UI. For this, I had to add a method to check whether we are the Host Thread to Qt. Avoid calling ControllerInterface::RefreshDevices() from the CPU thread if the emulation is running and we manually refresh devices from Qt, as that is not necessary anymore. Refactored the way IOWindow lists devices to make it clearer and hold onto disconnected devices. There were so many issues with the previous code: -Devices changes would not be reflected until the window was re-opened -If there was no default device, it would fail to select the device at index 0 -It could have crashed if we had 0 devices -The default device was not highlighted as such
2021-04-27DolphinQt: update device drop down size policy so that the input profile ↵iwubcode
resizes properly This also keeps the device profile at a minimum so that it doesn't completely disappear (which was originally why it was changed to expanding)
2021-03-17DolphinQt: Add separate Free Look tab for rotationiwubcode
2021-01-27rename InputCommon/ControllerInterface/Device to CoreDeviceShawn Hoffman
2021-01-17Qt: Fix stock input profiles being deletableFilippo Tarpini
Also avoid files without a name before the extension (name: ".ini") from being added to the list because then they wouldn't be saveable and it would appear with an empty name anyway.
2020-12-24DolphinQt: Update mapping window device to use expanding size policyiwubcode
2020-12-24DolphinQt: Move Free Look out of Graphics/Hotkey and into its own ↵iwubcode
configuration window. Launched from a new menu option - "Free Look Settings". The HotKeyScheduler still calls the Free Look functionality to reduce the total number of threads
2020-09-18Qt/MappingWindow: Add support for built-in profilesTechjar
2020-04-28DolphinQt: Use qOverload where applicableLioncash
Provides the same behvaior, but in a much more concise manner.
2020-02-24InputCommon: Mark GetStateLock with [[nodiscard]] and fix discarding calls.Jordan Woyak
2020-02-08InputCommon: Allow Wii remote extension to be set with an input expression.Jordan Woyak
2020-01-13DolphinQt: Properly hide Wii remote extension motion tabs when no extension ↵Jordan Woyak
is selected.
2019-12-04Motion Input: Add nunchuk support.rlnilsen
2019-10-26Add support for motion controllers via the CemuHook controller input protocol.rlnilsen
This is done by: 1) Implementing said protocol in a new controller input class CemuHookUDPServer. 2) Adding functionality in the WiimoteEmu class for pushing that motion input to the emulated Wiimote and MotionPlus. 3) Suitably modifying the UI for configuring an Emulated Wii Remote.
2019-07-30DolphinQt: Replace QStringLiteral with alternatives where applicableLioncash
QStringLiterals generate a buffer so that during runtime there's very little cost to constructing a QString. However, this also means that duplicated strings cannot be optimized out into a single entry that gets referenced everywhere, taking up space in the binary. Rather than use QStringLiteral(""), we can just use QString{} (the default constructor) to signify the empty string. This gets rid of an unnecessary string buffer from being created, saving a tiny bit of space. While we're at it, we can just use the character overloads of particular functions when they're available instead of using a QString overload. The characters in this case are Latin-1 to begin with, so we can just specify the characters as QLatin1Char instances to use those overloads. These will automatically convert to QChar if needed, so this is safe.
2019-05-08WiimoteEmu/DolphinQt: Rename "IR" to "Point" and eliminate redundant ↵Jordan Woyak
Forward/Backward mappings.
2019-05-03DolphinQt: Profile combobox fixes.Jordan Woyak
2019-05-01DolphinQt: Don't refresh devices on open of mapping UI.Jordan Woyak
2019-04-27DolphinQt: Fix "Default" and "Clear" buttons not updating the displayed ↵Jordan Woyak
extension.
2019-04-23Qt/Mapping: Remove iterative inputspycrab
2019-04-07InputCommon: Clean up how numeric settings are handled. Add units of measure ↵Jordan Woyak
to UI. Eliminate hidden magic values of the IR cursor.
2019-03-15DolphinQ: Mapping UI cleanups.Jordan Woyak
2019-03-06Qt: Increase padding a bitspycrab