* First steps.
* Menu mostly together.
* Added draw callback feature to buttons.
* Added icons for key binding.
* Using icons now.
* Fixed a memory leak in: vpi_asset_filename
* Added keymap to vpi_config.
* Aded action keys to config.
* Added WiiU Icons
* Load action keys from config.
* Starting Secondary Keybinding Menu
* Added binding menu for L and R sticks.
* fix clicking back button in bind mode
* improve key readability
* create and use left and right ctrl icons
* create and use numpad icons
* create and use crude record/screenshot icons
* add more key icons
* fix minor bugs
* add reset to default button
* fix binding escape key
* rearranged the button layout
* reworked inner workings
* cleanup
* further cleanup
---------
Co-authored-by: itsmattkc <34096995+itsmattkc@users.noreply.github.com>
SDL2 prefers GLX over EGL, however we require EGL to present VAAPI decoded frames to the screen, so we set a flag to force it over to EGL.
However some hardware (notably NVIDIA GPUs) do not provide EGL pathways. We must detect this and un-force EGL if so. However the un-forcing requires a little more work than expected. This code should work now.
Most users will only have a single Wii U, and it's kinda ugly for it to be called "Wii U 1". Default to "Wii U" for the first synced console, and subsequent consoles will be "Wii U 2", "Wii U 3", etc.
Rather than setting NetworkManager to "unmanage" the Wi-Fi interface every sync/connection, do it once when the pipe starts. This way, there won't be any awkward shuffling as the pipe goes from syncing to connecting.
This may fix connectivity issues where the internal kernel device changes after it's unmanaged in NetworkManager and/or the backend is changed from iwd to wpa_supplicant
The Steam Deck provides a "virtual gamepad" that it expects games to use, however the "virtual gamepad" doesn't provide direct access to the Steam Deck's gyroscopes. We can bypass it, but then Steam Deck users lose usability features like remapping (and Vanilla will continue to receive inputs in the background, which are usually cut off on the virtual gamepad, which can cause accidental clicks). To try to get the best of both worlds, we use a hybrid approach where we use the virtual gamepad for everything EXCEPT the gyros, and then use the direct hardware access JUST sfor the gyros.