[macOS/iOS/iPadOS] RetroPad bindings don't work with Bluetooth controllers
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 14.1k
- Forks
- 2.2k
- Avg merge
- 7h 35m
- Merged PRs (30d)
- 51
Description
Description
RetroPad button bindings on macOS, iOS, and iPadOS don't function with Bluetooth controllers. I tried with two controllers: a Nintendo Switch Pro Controller and a PS4 Controller.
Expected behavior
I setup the RetroPad Port 1 Controls with any of the Bluetooth controllers mentioned. Any configuration done here doesn’t affect any core with any game, and I have to setup every core individually, instead of one configuration for all, which is the function of the RetroPad configuration.
This is notable by activating "Unified Menu Controls" and changing the RetroPad bindings. The menu navigation should be affected by the changes in the RetroPad bindings (and therefore, the cores as well).
Actual behavior
The new bindings are not applied to the menu navigation, and thus the cores also will not read any new bindings. Apparently, the menu and the cores are reading macOS/iPadOS/iOS own default bindings, and are not reading the RetroPad ones.
For example, I have Unified Menu Controls activated:
I've setup my controller, so RetroPad's Up is my controller's Down, and RetroPad's Down is my controller's Up:
Since Unified Menu Controls is active, this should mean that if I press Down, I should go Up in the menu; and if I press Up, I should go down. But this is not happening. If I press Up I go Up, and if I press Down I go Down. Same thing happens in the cores with any game. RetroPad's configuration is not being read.
As previously mentioned, I believe Retroarch is grabbing macOS's bindings, instead of RetroPad's.
This only happens with bluetooth controllers. If I setup my keyboard so up is down and down is up:
The keyboard's bindings are respected; which means if I press down on my keyboard I will go up, and if I press up I will go down.
Unless I'm missing something very obvious, my Bluetooth controller's bindings on Retropad should work, like the keyboard's bindings do.
Steps to reproduce the bug
- Connect on macOS a Bluetooth controller.
- Go to RetroPad's bindings and change any binding
- This will not get applied to either the menu (if Unified menu controls is active) or any core.
Version/Commit
1.18.0
- OS: macOS, iPadOS, iOS
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the issue with the listed Nintendo Switch Pro and PS4 Bluetooth controllers on macOS, iOS, or iPadOS, using Unified Menu Controls and reversed RetroPad bindings. Compare the Bluetooth controller path with the keyboard behavior; done means RetroPad changes affect menu navigation and core input without per-core configuration.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- desktop-dev, mobile-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100