Commit graph

66 commits

Author SHA1 Message Date
Steveice10
c96f54f022
Implement app management support (suspend, resume, close, etc) (#6322) 2023-03-10 00:44:26 +01:00
Tobias
f66d03dd48
citra_qt: Improvements to hotkeys and ui state management (#6224) 2023-02-04 19:06:20 +01:00
Tobias
ae3d50f71f
Port yuzu-emu/yuzu#2968: configure_input: Fix input handling for ZL and ZR from controllers with analog triggers (#4984)
Co-authored-by: Frederic L. <freddyfunk@users.noreply.github.com>
2022-12-17 16:11:49 +01:00
Tobias
1ddea27ac8
code: Cleanup and warning fixes from the Vulkan PR (#6163)
Co-authored-by: emufan4568 <geoster3d@gmail.com>
Co-authored-by: Kyle Kienapfel <Docteh@users.noreply.github.com>
2022-11-04 23:32:57 +01:00
SachinVin
88a4759702
citra_qt: configure_input.cpp: update the modifier settings for both the sticks (#6033)
The Controller config UI exposes the Circle mod, only for the Circle pad's modifier, So after changing the binding, it leaves the default binding for the c-stick untouched, and the user is nagged about the (default) D key being bound to something, when trying to bind it to any other button.

With this PR we update the modifier for both the Circle Pad and C-stick.
2022-06-11 11:53:27 +05:30
SachinVin
f66ba43e0c
Merge pull request #5755 from vitor-k/mod_used
citra_qt/configure_input: Account for analog buttons when checking for used buttons
2022-01-30 21:52:40 +05:30
Vitor Kiguchi
80fdc3e7c8 clang format 2022-01-08 12:43:46 +01:00
bunnei
95383a3d14
Update src/citra_qt/configuration/configure_input.cpp
Co-authored-by: Pengfei Zhu <zhupf321@gmail.com>
2022-01-08 02:02:03 -08:00
ameerj
a80e566464 gcadapter: Implement auto map feature
Implements the auto map functionality for the GC adapter.
The controls map nicely to the original 3ds controls, with the select button being mapped to the Z button on GC.
The ZL/ZR buttons are not mapped by this feature.
2021-04-24 02:03:40 -04:00
ameerj
32f8a565f3 configure_input: Add frontend text for GC adapter
Also streamlines some of the frontend text logic.
2021-04-24 02:02:45 -04:00
ameerj
05e28a53e8 input_common: Add support for GameCube Adapter
This is a port of the initial GameCube adapter input support i added into yuzu emulator.
It requires the same setup as when it was first introduced in yuzu, requiring the Zadig driver be installed for the adapter to allow it to interface with libusb.
2021-04-24 02:02:45 -04:00
bunnei
24086d05bb
Merge pull request #5471 from vitor-k/misc
Fix some warnings and some small changes
2021-04-23 22:54:00 -07:00
Vitor K
39680264b4
citra_qt/configure_input: use pre-increment instead of post-increment
Co-authored-by: Johel Ernesto Guerrero Peña <johelegp@gmail.com>
2021-04-06 19:02:02 -03:00
Vitor Kiguchi
3cc559f865 clang format 2021-04-05 19:52:27 -03:00
Vitor Kiguchi
0e2edbb0d2 Account for analog buttons when checking for used buttons
circle mod and analog_from_buttons weren't being accounted for.
2021-04-05 19:38:54 -03:00
Vitor Kiguchi
611b186a97 configure_input: set modifier_scale undonditionally when restoring default 2021-02-04 14:19:41 -03:00
Vitor Kiguchi
75f9c2cc13 configure_input: fix modifier scale saving 2021-01-31 00:15:00 -03:00
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
Vitor Kiguchi
8e54e7cf1a fix some conversion warnings 2020-12-06 16:01:59 -03:00
Vitor K
a26b466ac8
Use unique_ptr on all ui objects from .ui files (#5511)
* Forward declare ui and use unique_ptr

* ConfigureEnhancements: use unique_ptr for ui

* Use make_unique instead of new where applicable

* Move some of the ui includes that already used unique_ptr

* main.cpp: also make use of make_unique on Config

* Address review comments
2020-10-01 09:23:01 +08:00
Tobias
f6b543886c
Port yuzu-emu/yuzu#4528: "common: Make use of [[nodiscard]] where applicable" (#5535)
Co-authored-by: LC <712067+lioncash@users.noreply.github.com>
2020-08-31 21:06:16 +02:00
xperia64
8d19e144cb Actually save the input when clearing/resetting to default 2020-05-28 20:03:29 -04:00
Tobias
63c86f2417
Port yuzu-emu/yuzu#3268: "GUI: Deadzone controls for sdl engine at configuration input" (#5174)
* GUI: Deadzone controls for sdl engine at configuration input

Co-Authored-By: CJ Bok <cjbok@users.noreply.github.com>

* configure_input: Use slider to edit modifier scale

Co-Authored-By: Kewlan <kewlan@users.noreply.github.com>

* Address minor review comment

Co-Authored-By: Kewlan <kewlan@users.noreply.github.com>

Co-authored-by: CJ Bok <cjbok@users.noreply.github.com>
Co-authored-by: Kewlan <kewlan@users.noreply.github.com>
2020-05-13 18:26:05 +02:00
vvanelslande
1f708e8bad settings, configure_input: fix rename input profile 2019-11-09 16:55:03 -05:00
vitor-k
ac3a854f45 Add cancel option to analog stick configuration 2019-08-31 21:58:07 -03:00
Lioncash
64a154e890 yuzu/configuration: Specify string conversions explicitly 2019-07-28 15:08:54 +02:00
Silent
4fd22c6a14
Qt: Fixed behaviour of buttons by connecting functors to correct signals
Following screens got fixes:
- Cheats
- Configure/Debug
- Configure/Input
- Chat Room
- Direct Connect
- Host
- Lobby List
2019-07-22 23:28:10 +02:00
Lioncash
ba6eb5285d yuzu/configuration: Make function naming consistent 2019-07-06 15:01:41 +02:00
Martin Pecánek
186ffc235f Check input profile name for duplicates in New/Rename (#4779)
* Check input profile name for duplicates in New/Rename

* DRY + separation of concerns

* simplify return branching

* make readonly function const
2019-05-24 15:28:59 -06:00
Adityarup Laha
ebba9f5a70
ConfigureInput::GetUsedKeyboardKeys(): Change index of home button to use NativeButton instead of magic number.
Fixes a bug where users can't bind anything to the B key.
Arises because this was not changed in #4537.
2019-04-06 10:41:28 +05:30
Adityarup Laha
80ebd75285
citra-qt: Add /default parsing for hotkeys. Also minor code cleanups. 2019-01-25 20:42:49 +05:30
Adityarup Laha
5fa25fcf13
citra-qt: Add base support for hotkey reconfiguration + UI (whole of PR citra-emu/citra#3786)
* Adds a new Hotkeys tab in the Controls group.
* Right click to reconfigure.
* See the original PR for more details & screenshots.
2019-01-20 16:12:10 +05:30
Valentin Vanelslande
62b40e9155
Merge branch 'master' into profiles 2019-01-07 10:39:44 -05:00
Valentin Vanelslande
dce82fa005 move comment 2018-12-29 13:15:31 -05:00
Valentin Vanelslande
57f224fc50 fix clang-format 2018-12-29 09:31:03 -05:00
Valentin Vanelslande
3d00beb9d5 add a comment, rename old index 2018-12-29 09:19:45 -05:00
Valentin Vanelslande
e7b1a1d5c8 fix clang-format 2018-12-29 09:04:43 -05:00
Valentin Vanelslande
5a14af5f38 address some comments 2018-12-29 08:27:06 -05:00
Valentin Vanelslande
8e614c3eb0 clang-format; address one comment 2018-12-28 23:31:55 -05:00
Valentin Vanelslande
860860397b more fixes 2018-12-28 21:26:50 -05:00
Valentin Vanelslande
bf93b94658 fixes 2018-12-28 21:13:57 -05:00
Mat M
90965525ac
Apply suggestions from code review
Co-Authored-By: valentinvanelslande <valentinvanelslandeacnl@gmail.com>
2018-12-28 21:00:09 -05:00
Valentin Vanelslande
7c95032e3a Add multiple input profile support
Only supported in the Qt frontend.
2018-12-28 20:28:45 -05:00
RicBent
6ad609a539 Added GPIO14 button and UI config buttons 2018-12-28 17:13:37 -06:00
RicBent
7c007eac24 Fixed coding style 2018-12-28 15:13:16 -06:00
RicBent
403d2f0058 Added Debug Button 2018-12-28 12:47:50 -06:00
Lioncash
9c0c817e6f yuzu/configuration/configure_input: Default destructor in the cpp file
The previous code could potentially be a compilation issue waiting to
occur, given we forward declare the type for a std::unique_ptr. If the
complete definition of the forward declared type isn't visible in a
translation unit that the class is used in, then it would fail to
compile.

Defaulting the destructor in a cpp file ensures the std::unique_ptr's
destructor is only invoked where its complete type is known.
2018-12-09 15:51:08 +01:00
zhupengfei
ab07d44193
citra_qt/configuration: fix language configuration issues 2018-11-03 09:34:01 +08:00
B3n30
2306af3600 Handle cases when std::optional does not contain a value 2018-10-05 16:51:33 +02:00
B3n30
d37a2270d6 Replace boost::optional with std::optional where possible 2018-10-05 13:51:09 +02:00