citra/src/citra_qt
Vitor K ce16653cc8
Automatic Controller Binding (#5100)
* Implement the basics of controller auto mapping. From testing doesn't currenlty work.
Opening the controller requires the device index, but it is only known and guaranteed
at boot time or when a controller is connected.

* Use the SDL_INIT_GAMECONTROLLER flag to initialize the controller
subsystem. It automatically initializes the joystick subsystem too,
so SDL_INIT_JOYSTICK is not needed.

* Implement the SDLGameController class to handle open game controllers.
Based on the SDLJoystick implementation.

* Address review comments

* Changes SDLJoystick and SDLGameController to use a custom default
constructible destructor, to improve readability. The only deleters
used previously were SDL_JoystickClose and SDL_GameControllerClose,
respectively, plus null lambdas. Given that both SDL functions
accept null pointers with just an early return, this should be
functionally the same.
with just an early return

* warn the user when a controller mapping is not found

* Get axis direction and threshold from SDL_ExtendedGameControllerBind

* Reject analog bind if it's not axis, for the couple of examples present in SDL2.0.10's db.
Also add SDL_CONTROLLER_BINDTYPE_NONE for the button bind switch, with a better log message.

* sdl_impl.cpp: Log the error returned by SDL_GetError upon failure to open joystick

* sdl: only use extended binding on SDL2.0.6 and up

* sdl_impl.cpp: minor changes
2021-01-01 10:01:07 +01:00
..
applets Use attribute instead of comment 2020-05-31 10:47:46 +08:00
camera interface.h: forward declare resolution 2020-08-20 01:30:13 -03:00
configuration Automatic Controller Binding (#5100) 2021-01-01 10:01:07 +01:00
debugger kernel/thread: Change owner_process to std::weak_ptr (#5325) 2020-11-15 12:59:45 +01:00
dumping citra_qt: Split options into 'Specific' and 'Generic' 2020-02-28 18:26:20 +08:00
multiplayer Use unique_ptr on all ui objects from .ui files (#5511) 2020-10-01 09:23:01 +08:00
updater citra_qt/updater: Specify string conversions explicitly 2019-11-09 02:46:07 +01:00
util Port yuzu commit: "yuzu/CMakeLists: Disable implicit QString co… (#5074) 2020-02-11 13:12:09 +01:00
aboutdialog.cpp Use unique_ptr on all ui objects from .ui files (#5511) 2020-10-01 09:23:01 +08:00
aboutdialog.h Clean up aboutdialog.h 2018-08-25 14:45:50 +02:00
aboutdialog.ui citra-qt: Add build date in about dialog 2018-06-18 21:21:00 +08:00
bootmanager.cpp Fixes to "hide mouse on inactivity" (#5476) 2020-12-05 22:12:17 +01:00
bootmanager.h Fixes to "hide mouse on inactivity" (#5476) 2020-12-05 22:12:17 +01:00
cheats.cpp citra_qt/cheats: Make window resizable and remove help hint 2020-12-28 17:01:30 +01:00
cheats.h citra_qt: Implement UI for adding/editing/deleting cheats 2019-02-02 08:15:27 +08:00
cheats.ui citra_qt: Implement UI for adding/editing/deleting cheats 2019-02-02 08:15:27 +08:00
citra-qt.rc Fix: fatal error CVT1100 when compiling manifest file (#5322) 2020-06-20 13:50:33 -05:00
CMakeLists.txt citra_qt: Backport review comments from the yuzu translation PR (#5465) 2020-08-31 21:13:24 +02:00
compatdb.cpp yuzu/compatdb: Remove unnecessary qualifiers 2019-05-10 20:30:32 +02:00
compatdb.h compatdb: Use a seperate endpoint for testcase submission 2018-10-27 12:20:03 +02:00
compatdb.ui add compatibility reporting to qt frontend 2018-01-01 19:25:38 -06:00
compatibility_list.cpp Stop splitting includes 2018-10-20 16:31:35 +02:00
compatibility_list.h Stop splitting includes 2018-10-20 16:31:35 +02:00
discord.h Add Discord Rich Presence Support (#3883) 2018-08-20 11:20:33 +02:00
discord_impl.cpp discord_impl: Update the client ID (#5449) 2020-07-08 23:45:54 +02:00
discord_impl.h Address a bunch of review comments 2018-10-20 10:35:55 -04:00
game_list.cpp Port yuzu-emu/yuzu#4700: "game_list: Eliminate redundant argument copies" (#5571) 2020-12-07 16:05:13 +01:00
game_list.h Port yuzu-emu/yuzu#4700: "game_list: Eliminate redundant argument copies" (#5571) 2020-12-07 16:05:13 +01:00
game_list_p.h game_list_p: Resolve deprecated usage of QVariant operator< 2020-12-19 18:48:38 +01:00
game_list_worker.cpp yuzu: Resolve -Wextra-semi warnings 2020-08-28 16:43:17 +02:00
game_list_worker.h yuzu/game_list_worker: Silence warnings 2019-11-02 18:55:08 +01:00
hotkeys.cpp Remove qt5_wrap_ui macro usage 2019-08-16 19:35:37 -06:00
hotkeys.h yuzu/hotkeys: Remove unnecessary constructor 2019-05-10 20:30:50 +02:00
Info.plist CMake: Fix Info.plist template for citra_qt/OSX 2016-07-21 21:33:54 +01:00
loading_screen.cpp Port yuzu commit: "yuzu/CMakeLists: Disable implicit QString co… (#5074) 2020-02-11 13:12:09 +01:00
loading_screen.h QT Frontend: Add disk shader loading progress bar 2020-01-22 17:18:00 -07:00
loading_screen.ui Loading Screen: Vertically Center everything 2020-01-22 17:26:27 -07:00
main.cpp Port yuzu-emu/yuzu#4700: "game_list: Eliminate redundant argument copies" (#5571) 2020-12-07 16:05:13 +01:00
main.h Fixes to "hide mouse on inactivity" (#5476) 2020-12-05 22:12:17 +01:00
main.ui core, citra_qt: Implement a save states file format and slot UI 2020-02-18 13:19:52 +08:00
qt_image_interface.cpp specify size of buffer and use openglstate in getteximageoes 2019-11-09 12:58:17 -07:00
qt_image_interface.h specify size of buffer and use openglstate in getteximageoes 2019-11-09 12:58:17 -07:00
uisettings.cpp GUI: fix minor issues with dark themes 2020-01-28 14:24:52 +01:00
uisettings.h yuzu: Resolve -Wextra-semi warnings 2020-08-28 16:43:17 +02:00