linuxserver / docker-emulatorjs

Web based retro emulation frontend with rom scanning and automated art ingestion.
GNU General Public License v3.0
512 stars 51 forks source link

Open Libretro Menu with touch screen, no keyboard #11

Closed consolecwby closed 2 years ago

consolecwby commented 2 years ago

Requested feature should allow user base to play games on their phones using the docker container. I am able to play emulators on my iphone using this container which is great. It would be nice to open the libretro menu to change key bindings and other things while playing. Where in the code does if (user presses F1), then( open menu)? maybe a combination of game buttons can open it as well or a multi-touch gesture.

Requested feature should allow user base to play games on their phones using the docker container.

Desired Behavior

Open libretro menu without keyboard

Current Behavior

unable to open libretro menu

Alternatives Considered

getting a USB OTG adapter and plugging a keyboard in phone to set key bindings the way i need. ( i just don't have said adapter)

github-actions[bot] commented 2 years ago

Thanks for opening your first issue here! Be sure to follow the bug or feature issue templates!

thelamer commented 2 years ago

L+R+Start+Select, this is set by default here: https://github.com/linuxserver/emulatorjs/blob/master/frontend/js/libretro.js#L6 You can modify it when in menu.

consolecwby commented 2 years ago

thanks, is there a way to modify from L+R+Start+Select to something else? my controller doesn't have select. most do so now maybe we should close the issue. After some googling it looks like if I can find and edit the retroarch.cfg file I can setinput_menu_toggle_gamepad_combo to option 2 i can use my controller. When i bin/bash into the container and check /etc/ i do not see it

thelamer commented 2 years ago

The RetroArch config is stateful in browser storage, just open the menu, press back, go to settings (gear on left side) input>hotkeys>menu toggle controller combo. To get the config to save you need to trigger an actual exit of the application either from main menu>quit RetroArch or press escape twice.

This config is stateful to all libretro cores they share the same stateful mount for system level settings.