Is there anyway to disable all hotkey functions system wide?
-
@foxtochop said in Is there anyway to disable all hotkey functions system wide?:
After I disable the autoconfiguration, is there anything more that I need to do to disable hotkeys?
You'll have to do that manually, by editing the
.cfg
file for the gamepads. -
@mitu Thanks for the help, I'll try to do the trick with this options.
But the best one would be a .cfg file that overrides the joypad's .cfg files. In other words, a .cfg file that contain common config rules that every (future) controller will have, no matter the bindings or the single configurations. The problem is that this doesn't seem to exist in retroarch, AFAIK.
-
@foxtochop It's not really a RetroArch limitation, but of the way the auto-configuration files are generated by RetroPie - i.e. having a hotkey button and adding a few hotkey functions added (Exit, Save/Load state/Reset, etc.).
As I said, if you don't want that, then disable the auto-configuration done by RetroPie and you manage your auto-configuration for each gamepad manually, adding or removing the hotkeys you'd like either in those configuration files or globally (i.e. add hotkey button and functions in the main RA file and omit them from each gamepad's config file).
-
@pjft did a guide on just this.
Prevent some user changes to your setupBy using his setup you can create *.sh files with you preferred configuration visible inside RetroPie Setup.
-
@mitu I just tried it following this steps:
1.- Delete all previous binding configurations on Configuration/Tools -> Emulationstation
2.- At the same menu, I disable autoconfiguration.
3.- Reboot and then bind my controller (including the hotkey which is the Select button)
4.- Press F4, go to /opt/retropie/configs/all/retroarch.cfg, uncomment this line and set it to:input_enable_hotkey_btn = null
I tried with "nul" but it doesn't do anything. Null disables Select as the hotkey button, e.g. I boot up a game and Select+Start doesn't do anything. But then, I press A+Start and it does exit the game and back to Emulationstation!
What I don't understand is why suddenly A button becomes the hotkey when I configured the hotkey button to be completely useless, even if I binded it (to select) in the initial Input Configuration.
@Rion It's not what I'm searching for but maybe it will be useful in the near future, thanks!
-
@foxtochop said in Is there anyway to disable all hotkey functions system wide?:
I tried with "nul" but it doesn't do anything. Null disables Select as the hotkey button, e.g. I boot up a game and Select+Start doesn't do anything. But then, I press A+Start and it does exit the game and back to Emulationstation!
That doesn't look right - did you also modify/remotve the gamepads configuration files in the auto-configuration folder (
/opt/retropie/configs/all/retroarch-joypads
) ? -
@mitu No, I never touch .cfg files in that directory. In fact my goal is to disable hotkeys without going to /opt/retropie/configs/all/retroarch-joypads/every-controller-config-file.cfg to disable them one by one.
Something ticked in my mind reading your comment and I just tried this (without luck):
1.- Making sure that input_enable_hotkey_btn = null in /opt/retropie/configs/all/retroarch.cfg
2.- Remove everything inside /opt/retropie/configs/all/retroarch-joypads/
3.- Configuration / Tools -> Emulationstation -> Clear input binds and also making sure autoconfig is disabled
4.- Reboot, bind the controller (I realized that now I have to bind it again after reboot, I guess that's what autoconfig does).
5.- Boot up a game. Aaaanndd... the buttons don't work. Any of the buttons respond to anything.What still eats my brain is, why in the world do I disable the hotkey with input_enable_hotkey_btn = null, and then it works because Select doesn't work as a hotkey, but suddenly the A button is now the hotkey?? Is there any setting that provides a hotkey backup button for when you disable it and it happens to be defined as the A button...? My brain does come up with this, it can't be any other thing... afaik
-
@foxtochop said in Is there anyway to disable all hotkey functions system wide?:
5.- Boot up a game. Aaaanndd... the buttons don't work. Any of the buttons respond to anything.
This is normal, once you remove the auto-configuration option, you'll have to manually configure your gamepad in RetroArch. That's why I suggested to modify the auto-
.cfg
files and remove the hotkey.Is there any setting that provides a hotkey backup button for when you disable it and it happens to be defined as the A button...?
Without a look at the complete configuration files you have available, it's hard to tell.
-
@mitu The only way to do it for me now is to somehow create a custom schedule or something that everytime a new file appears in /opt/retropie/configs/all/retroarch-joypads this schedule searches for the line input_enable_hotkey_btn = "(select button number)" and changes it for input_enable_hotkey = "nul", so everytime a new controller is plugged in, the scheduled task will do it for me.
But I don't know how to do this scheduled task, maybe it's time to google a little bit.
Thanks for the help though!
-
That seems a bit over-complicated. I'd maintain 2 sets of auto-configurations for the gamepads - one having a hotkey and the others without it - and switch between them by modifying the auto-config folder where RetroArch looks for the gamepad
.cfg
files, that folder is set in the mainretroarch.cfg
file.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.