Commit Graph

4377 Commits

Author SHA1 Message Date
zoltanvb fd04c8ca57
Rebase of wakira's wp_fractional_scale_v1 support (#15965)
A rebase of earlier PR https://github.com/libretro/RetroArch/pull/15355
No changes added (except for one log).
2023-11-30 03:29:38 -08:00
Eric Warmenhoven d8c444d44d
iOS - Default to not enabling keyboard gamepad (#15340) (#15955) 2023-11-26 19:34:45 -08:00
revvv f188b7a824
Wii/Wii U: Fix 3 USB controllers. See #7015 (#15938)
Fixes commit a4b934b which did not update all array indices.
2023-11-22 08:49:12 -08:00
zoltanvb c42498e531
Warning fixes. (#15877) 2023-11-06 00:04:17 -08:00
Andrew Gorbaty c9de6e5932
fix (#15874) 2023-11-05 15:31:43 -08:00
Joe Osborn 862bebf687
(Emscripten) Modularize the JavaScript and clean up the web build (#15688)
* Increase emscripten stack size and decrease path size to fix emscripten builds broken since de45fc2

* use modularize flags for better-behaved javascript output

* makefile and loader changes

* use specialHTMLTargets to support modular access to canvas

* bind key events to canvas, not document

This way focus means focus and we can have multiple RA instances in
one page.

* Work around an emscripten bug in strict mode

* (Emscripten) Use console.error() for error messages

* increase asyncify stack size

* Fix `-lm` flag-related compile warnings in emscripten

---------

Co-authored-by: Rob Loach <robloach@gmail.com>
2023-11-02 13:25:50 -07:00
Eric Warmenhoven dfeeb031fe
Fix mouse support for melondsds on osx (#15837) 2023-10-30 15:33:17 -07:00
GavinDarkglider 5356afc750
Minor fixes to udev input drivers. Add support for canary builds to lakka updater stuff (#15818)
* Input: Udev: Fix touch support building against older kernel headers

* Input: Udev: Fix Touch Deep Debug compile issues

* Input: Joypad: Udev: Joypad: Add Change detection for udev events

This is handy with controllers like the Nintendo Joycons that have a daemon
app in the background to handle combining them into one controller(Joycond)

Since the device was already added, but joycond clamped permissions on evdev
retroarch was never updating the controller input change, this fixes that issue.

Note: Needs a patch in joycond as well, to send change uevent.

This shouldnt cause any issues with other controllers, as the kernel probably
will never send change events for these device types.

* Lakka: Add canary builds to updater
2023-10-25 08:19:00 -07:00
Mike Erickson 7df3ca3064
fix:xinput disconnect lost gamepad (#15819)
Co-authored-by: ChenX <maple6@vip.qq.com>
2023-10-24 00:28:10 -07:00
Joe Osborn 2baf9ec7e0
Enqueue replay record/playback until next frame (#15751)
* Enqueue replay record/playback until next frame

This fixes a bug where stdin commands activated via polling would
trigger replay record/playback in the middle of a frame, then input
checking would pull from them before the next frame came around---it
only makes sense to change the active replay in between frames, not
during them.

* fix comment syntax
2023-10-04 00:53:51 -07:00
sonninnos ea86be0a2b
Fix menu analog stick navigation (#15740) 2023-09-26 05:30:15 -07:00
sonninnos cf2ee94c9f
Correction for not showing mouse cursor with overlay (#15687) 2023-09-11 17:28:33 -07:00
sonninnos ea1bdade61
Allow more keyboard actions with menu osk (#15662) 2023-09-01 15:48:55 -07:00
libretroadmin b5887d9857 change bsv_key_data back in case struct layout matters 2023-08-30 18:20:58 +02:00
libretroadmin 712b821f78 Reorder 2023-08-30 11:11:04 +02:00
libretroadmin c82401dcb4 input_device_info - slim down - we don't need config_path and some of
the char arrays can be much smaller
2023-08-30 08:34:21 +02:00
libretroadmin 8debf4b88e (wiiu_joypad.c) Small cleanups 2023-08-20 04:06:48 +02:00
sonninnos c708187cd2
Search box usability improvements (#15617) 2023-08-18 12:38:29 -07:00
libretroadmin e5ef309b58 get_bind_string_joyaxis - small simplification 2023-08-16 20:29:40 +02:00
libretroadmin d6ae25d980 Don't add to len variable if not used 2023-08-16 20:26:15 +02:00
sonninnos de45fc2f5f
Input binding rework (#15603)
* Input binding rework

* Controller info logging cleanup
2023-08-16 11:13:14 -07:00
libretroadmin e407d9a7b2 (Udev) style nits/cleanups 2023-08-16 15:45:50 +02:00
Max Kupriianov 2f16e115a7
[android] fix d-pad regression introduced in abcd42777f (#15601) 2023-08-16 05:58:44 -07:00
libretroadmin 0a96f9595c Explicit typecasts to bools for flags 2023-08-16 04:18:55 +02:00
libretroadmin f51b49f213 More explicit typecasts to bools 2023-08-16 03:22:02 +02:00
libretroadmin bd7a0f7f0a Explicit typecast to bool for some flag to bool conversions 2023-08-16 00:16:03 +02:00
Max Kupriianov abcd42777f
refactor: rewrite input handling to better support AINPUT_SOURCE_STYLUS (#15597)
Resolves issues with S-Pen on Samsung devices, also adds support for S-Pen button
that is handled as r-mouse click now.
2023-08-15 11:13:53 -07:00
libretroadmin c8e6506687 Fix --disable-menu errors 2023-08-14 23:36:19 +02:00
sonninnos d8f9310100
(DINPUT) Mouse flag cleanup (#15575) 2023-08-11 07:17:07 -07:00
neil4 fbd8498686
Overlays: Apply range_mod only for the touch inputs that trigger it (#15534) 2023-07-30 09:49:59 +02:00
Colin Kinloch 2cb787c5bf (Wayland) Apply output scale to touch inputs 2023-07-21 22:31:51 +02:00
Eric Warmenhoven 286ce51277 iOS: use haptic engine instead of feedback generator for device rumble 2023-07-19 22:13:35 +02:00
sonninnos c798cbaf3f Enable overlay by default only on mobile + winraw overlay fix 2023-07-18 21:26:23 +02:00
libretroadmin aeff636a0f Minor cleanups to config_file.c 2023-07-17 09:45:52 +02:00
libretroadmin 98ee9a753c Cut down on some implicit strlens 2023-07-15 09:10:16 +02:00
sonninnos ab4debec01 All Users Control Menu fixes 2023-07-15 06:28:51 +02:00
Eric Warmenhoven e943ea71e7 Fix #15459 - add HAVE_STDIN_CMD to macos 2023-07-09 09:31:08 +02:00
nfore bf0de45ec4 Build fix 2023-07-09 09:30:48 +02:00
nfore 9ca5c5e623 Revive/rewrite Keyboard Overlay and OSK Toggle
Add keyboard overlay preset, keyboard submenu, and osk_toggle hotkey. Use overlay caching for osk_toggle.

For now, keyboard menu has only preset path, auto-scale toggle, and opacity.

Related fixes:
- input_keyboard_event: Don't check hotkey binds when device is RETRO_DEVICE_POINTER
- Add input_keymaps_translate_rk_to_ascii() for correct character input to input_keyboard_event
- input_overlay_poll: Delay clearing INPUT_OVERLAY_BLOCKED flag until there is no overlay input (Avoids stray input after osk_toggle)
- Send keyboard events for modifiers before other keys (for correct modifier+key input if hitboxes overlap)
2023-07-09 04:42:49 +02:00
nfore 8a81d39437 Overlay Caching
Adds overlay_cache_ptr to keep a disabled overlay in memory when it's expected to be shown again.

Most input_overlay_deinit calls are replaced with input_overlay_unload, which caches the overlay unless initing/deiniting core or disabling overlays.

Loading a cached overlay is done as a swap, intended for osk_toggle.

Related updates:
- Fewer parameters for the overlay loading task. Use current settings when enabling an overlay
- Add input_overlay_check_mouse_cursor() to preserve show/hide mouse behavior
- Don't apply input_overlay_show_mouse_cursor in windowed mode (controlled by mouse grab only)
- Remove some dead code
2023-07-09 04:42:49 +02:00
Eric Warmenhoven 280dcb32f9 Fix several warnings 2023-07-02 05:46:45 +02:00
sonninnos 7922e45607 Combo hold + 'enable_hotkey' correction 2023-07-01 20:12:13 +02:00
Eric Warmenhoven ce49bd6dcc Enable option to rumble iOS device instead of controller (#14734). 2023-07-01 19:24:40 +02:00
libretroadmin 22dc6aff5a Rework some snprintf/strlcat calls 2023-06-21 09:25:04 +02:00
libretroadmin bdc398d79f - Safer code - use strlcpy where possible instead of manual character
assignments for strings longer than 2 chars
- Use strlcpy concatenation instead of strlcat
- Make sure that what remains of iteration of the '_len' variable
for manual char assignment
is done in a safer way so mistakes are less possible
2023-06-20 16:33:55 +02:00
libretroadmin 31d8f4fd51 Cut down on more strlcat calls 2023-06-18 22:53:13 +02:00
sonninnos b92540b24d (udev) Log mouse devices in info level 2023-06-18 19:43:38 +02:00
libretroadmin 97deec44f4 Remove unused variable warning 2023-06-18 13:55:39 +02:00
sonninnos 8a862bf20e
Keyboard mapping bit fix (#15392) 2023-06-18 08:09:34 +02:00
libretroadmin fc06e2f84f Simplify core_serialize_size and core_serialize_size_special 2023-06-16 17:20:27 +02:00