Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Request: Option to bind "select/back" to the center touchpad click for PS3 / Xbox controllers #15

Open
abwezi opened this issue Aug 19, 2021 · 4 comments
Labels

Comments

@abwezi
Copy link

abwezi commented Aug 19, 2021

I was also able to pair my PS3 controller and it appears to work without any bindings being "incorrect" it would essentially be perfect except that the select button is mapped to "share" and since so many games put menus behind the touch pad click it would be preferable if select was that instead otherwise I'm unable to open the map in most games.

Originally posted by @abwezi in #14 (comment)

Now that Xbox controllers can be properly remapped in the newest version things are working nearly perfect for me but without some way to swap out the default binding for the select/back button on these controllers from the share button to the often used in games touchpad button the experience will be hampered by needing a keyboard essentially to access many secondary menus in games etc. This would be the last step to make this perfect for me pretty much so anything you can do is really appreciated you've been amazing help

@abwezi abwezi changed the title Request: Option to bind "select/back" to the center touchpad click for PS3 / Xbox controllersa game open, after installing Xpadneo. Now all that is needed for this to work properly is the rebinding let me know if there's anything more I can do to help. I was also able to pair my PS3 controller and it appears to work without any bindings being "incorrect" it would essentially be perfect except that the select button is mapped to "share" and since so many games put menus behind the touch pad click it would be preferable if select was that instead otherwise I'm unable to open the map in most games. Things are very close! Request: Option to bind "select/back" to the center touchpad click for PS3 / Xbox controllers Aug 19, 2021
@abwezi
Copy link
Author

abwezi commented Aug 19, 2021

This may not be a full fix for the issue as it doesn't really provide an option and may break other controllers that can properly emulate both touchpad and share button but I may be able to make the edit described here: thestr4ng3r#169 (comment) and rebuild it will work for my usecase. I will try tomorrow and report back

@abwezi
Copy link
Author

abwezi commented Aug 19, 2021

That worked for me and now this is working perfectly for my use! I just applied the described fix in the last post to chiaki/gui/src/controllermanager.cpp changing line

state.buttons |= SDL_GameControllerGetButton(controller, SDL_CONTROLLER_BUTTON_BACK) ? CHIAKI_CONTROLLER_BUTTON_SHARE : 0;

to

state.buttons |= SDL_GameControllerGetButton(controller, SDL_CONTROLLER_BUTTON_BACK) ? CHIAKI_CONTROLLER_BUTTON_TOUCHPAD : 0;

and now select is touchpad button for me! Until there is some sort of other mapping functionality for this assignment this may be the best way and possibly more of an issue with the main fork? Feel free to close this but thanks so much again Fred!

@Fredrum
Copy link
Owner

Fredrum commented Aug 19, 2021

:D ha ok yes I guess that works for you!
The track pad when used on a computer is as an emulated Mouse. So moving your fingers is moving the mouse and clicking on the pad is clicking the mouse.

You could possibly also try some programs like 'joy2key' or 'qjoypad'. The last one I think needs X11 which you are not using so might not work. I haven't tried joy2key but I believe Retropie might be using it? Actually thinking about it you want the opposite behaviour so not sure if those softwares would help. There might be some other similar though.

You might also be able to write a python script to hack around it.

In case you need that other button back some day.

@sbappudi
Copy link

That worked for me and now this is working perfectly for my use! I just applied the described fix in the last post to chiaki/gui/src/controllermanager.cpp changing line

state.buttons |= SDL_GameControllerGetButton(controller, SDL_CONTROLLER_BUTTON_BACK) ? CHIAKI_CONTROLLER_BUTTON_SHARE : 0;

to

state.buttons |= SDL_GameControllerGetButton(controller, SDL_CONTROLLER_BUTTON_BACK) ? CHIAKI_CONTROLLER_BUTTON_TOUCHPAD : 0;

This no longer seems to work for me using an xbox one controller. I made this change before installing SDL and compiling chiaki. Any other suggestions?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants