summaryrefslogtreecommitdiff
path: root/Source/Android/jni/Input/EmulatedController.cpp
AgeCommit message (Collapse)Author
2025-03-27Android/Input: Fix a crash when mapping wii remote extensions.Jordan Woyak
2025-03-23Merge pull request #13311 from ↵JMC47
iwubcode/dynamic_input_textures_reduce_image_writes Core / DolphinQt / InputCommon: reduce the number disk writes when using DynamicInputTextures
2025-03-22Core / DolphinQt / InputCommon: reduce the number disk writes when using ↵iwubcode
DynamicInputTextures
2025-03-15InputCommon/ControllerEmu: Break out functionality of EmulatedControllerJordan Woyak
to eliminate redundant unused members in Wii Remote extension objects.
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-10-01Android: Add more GameCube controller typesJosJuice
For all your PSO needs.
2023-10-01Android: Get profile name from coreJosJuice
To avoid duplicating information between Kotlin and C++.
2023-04-13Common/IniFile: Move interface into Common namespaceLioncash
Gets this out of the global namespace and into the Common namespace
2023-03-07Android: Change how the overlay controller setting worksJosJuice
Up until now, there have been two settings on Android that stored the selected Wii Remote extension: the normal one that's also used on PC, and a SharedPreferences one that's used by the overlay controls to determine what controls to show. It is possible for these two to end up out of sync, and my input changes have made that more likely to happen. To fix this, let's rework how the overlay controller setting works. We don't want it to encode the currently selected Wii Remote extension. However, we can't simply get rid of the setting, because for some Wii games we need the ability to switch between a GameCube controller and a Wii Remote. What this commit does is give the user the option to select any of the 4 GameCube controllers and any of the 4 Wii Remotes. (Before, controllers 2-4 weren't available in the overlay.) Could be useful for things like the Psycho Mantis fight in Metal Gear Solid. I'm also switching from SharedPreferences to Dolphin.ini while I'm at it.
2023-03-03Android: Add input profile managementJosJuice
Co-authored-by: Charles Lombardo <clombardo169@gmail.com>
2023-03-03Android: Add Default and Clear actions for controllersJosJuice
2023-03-03Android: Add input device selectionJosJuice
2023-03-03Android: Add new input mapping implementationJosJuice