Commit Graph

138 Commits

Author SHA1 Message Date
Reilly Brogan
7f3de64ef8 wayland: Fix Wayland appId 2024-05-30 22:54:50 -05:00
Colin Kinloch
cdd6aed8ec
wayland: Ignore configure events during splash (#16398)
These were causing the gl/vk surfaces to be created with the wrong size.
2024-04-02 17:55:02 -07:00
Colin Kinloch
a2057d6069
input/wayland: Use unaccelerated pointer motion (#16074)
This fixes small mouse movements being rounded down to 0.

Fix "Mouse cursor appears to have a deadzone on Wayland" (#16015)
2024-01-04 15:30:47 -08:00
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
Colin Kinloch
2cb787c5bf (Wayland) Apply output scale to touch inputs 2023-07-21 22:31:51 +02:00
Grisly Glee
de0c6d5cd1
Trivial warnings fixes (#15383)
* Trivial graphics context drivers fix

* Assorted minor warnings fixes
2023-06-14 23:46:27 +02:00
libretroadmin
31751a3945 Cleanups 2023-06-01 22:52:05 +02:00
Colin Kinloch
402b381c9b Revert "(Wayland) Remove splash screen (#15178)"
This reverts commit f19def349f.
2023-05-29 19:16:21 +02:00
vanfanel
155d2c9ada [Wayland+GL] Add frame callback after egl_swap_buffers to improve latency when max_swapchain<=2. 2023-05-28 23:19:13 +02:00
Colin Kinloch
f19def349f
(Wayland) Remove splash screen (#15178) 2023-04-10 16:37:48 +02:00
Colin Kinloch
e8ec3031a8
(Wayland) wp_viewporter + scaling fix (#15176)
* Use wp_viewporter
* Set buffer scale to highest of displays the window is touching
* Fixes fullscreen issue mentioned in #15168
* Simplify process of adding new wayland protocols
2023-04-10 06:29:41 +01:00
Colin Kinloch
d2c40b48ab
(Wayland) Mouse grab cleanup (#15114) 2023-03-21 14:36:24 +01:00
Manuel Alfayate Corchete
aaa53da148
[Wayland] Add mouse grab/lock functionality. (#15103)
* [Wayland] Add mouse grab functionality.

Co-authored-by: Colin Kinloch <colin@kinlo.ch>
2023-03-20 11:30:04 +01:00
Colin Kinloch
e31b7fe6c2
(Wayland) Fix resize check (#15065)
* (Wayland) Fix resize check

Signed-off-by: Colin Kinloch <colin.kinloch@collabora.com>

* (Wayland/GL) Correct scaling on resize

Signed-off-by: Colin Kinloch <colin.kinloch@collabora.com>

* (Wayland) Fix fullscreen buffers being initially double scaled

Signed-off-by: Colin Kinloch <colin.kinloch@collabora.com>

---------

Signed-off-by: Colin Kinloch <colin.kinloch@collabora.com>
2023-03-08 20:08:31 +01:00
libretroadmin
52a800a520 (Wayland input) Cleanups 2023-02-20 10:26:14 +01:00
libretroadmin
5ae2b9f753 (UWP) Cleanups/style nits
(Joypad drivers) Cleanup/slim down axis code
2023-02-19 19:32:05 +01:00
libretroadmin
96d39a78cc (Wayland) Silence implicit declaration warnings 2023-02-19 12:29:07 +01:00
libretroadmin
1d9cb216ca Silence some warnings/LTO issues 2023-02-19 10:21:37 +01:00
libretroadmin
6a098d37ac Use HAVE_DYLIB instead of HAVE_DYNAMIC when loading shared libraries 2022-11-21 05:37:35 +01:00
LibretroAdmin
fc78f96a3a (X11) Turn boolean variables into flags 2022-10-26 19:30:36 +02:00
LibretroAdmin
5ad204bea5 (Wayland) Turn more functions static 2022-10-03 03:38:56 +02:00
LibretroAdmin
91f4892cbe (wayland) Cleanups; turn functions static and other nits 2022-10-03 03:36:12 +02:00
LibretroAdmin
ace21d28f7 Fix C++ comments 2022-10-01 17:56:16 +02:00
Colin Kinloch
60fab1c4a1 (Wayland) Create wl_data_device only when wl_seat and wl_data_device_manager exist 2022-03-23 06:52:16 +01:00
Colin Kinloch
d95bc2dd54 (Wayland) Dynamically load libdecor at runtime 2022-03-22 06:58:41 +01:00
Colin Kinloch
47c850c7fd (Wayland) Dedupe VK/GL code 2022-03-21 07:50:34 +01:00
Colin Kinloch
82c69995f0 (Wayland) SHM anti-collision for the splash screen 2022-03-20 18:31:30 +01:00
Colin Kinloch
065fb5acee (Wayland) Skip splash screen if window is not ready 2022-03-18 16:29:49 +01:00
Colin Kinloch
86ca2006ea
(Wayland) Fallback to shm_open when memfd_create fails (#13740) 2022-03-14 19:20:29 +01:00
Colin Kinloch
3b08d63b23
(Wayland) Initial drag and drop (wl_data_offer) support (#13515) 2022-03-09 16:34:47 +01:00
Colin Kinloch
6dec52fda7
(Wayland) Fix wayland vulkan not reacting to initial resize (#13640)
(Wayland) Correct log stamps for GL or Vulkan

(Wayland) Fix style issues and sync formatting on identical code in GL and Vulkan
2022-02-22 08:58:46 +01:00
Colin Kinloch
b2527b43e8
(Wayland) Show window early to get screen info (#13591)
* (Wayland) Show window early to get screen info

* Report current monitor size on initial get_video_size call

* Fullscreen to monitor selected in settings

* Fullscreen on current monitor when setting is set to automatic

* Fallback to shm_open when memfd_create is not supported
2022-02-18 19:59:41 +01:00
Autechre
b45a192416
Revert "(Wayland) Show window early to get screen info (#13582)" (#13590)
This reverts commit 4bb2c14293.
2022-02-01 12:47:53 +01:00
Colin Kinloch
4bb2c14293
(Wayland) Show window early to get screen info (#13582)
* Report current monitor size on initial get_video_size call

* Fullscreen to monitor selected in settings

* Fullscreen on current monitor when setting is set to automatic
2022-02-01 10:30:34 +01:00
Colin Kinloch
a431760829
(Wayland) Release keys and mouse buttons on lost focus (#13567) 2022-01-29 19:57:06 +01:00
Aleksey Samoilov
f17deb90c7
[Wayland] Fix toplevel close (#13415) 2021-12-25 11:19:27 +01:00
Colin Kinloch
0168fe0303
(Wayland) Ignore mouse clicks on window decoration (#13412) 2021-12-25 04:08:22 +01:00
Colin Kinloch
f0392474f2
(Wayland) Add libdecor for client side decoration (#13397) 2021-12-24 14:20:45 +01:00
Colin Kinloch
c48d533950
(Wayland) Add scroll wheel support (#13398) 2021-12-24 03:42:33 +01:00
Nathan Strong
729c219f1a Rewrite DS3 driver
== DETAILS
The DS3 driver previously only worked with the Wii U HID implementation.

I adapted this driver from the Linux driver for the DS3. It's not quite
100%--I haven't got the LEDs to work properly--but it's functional.

Going to continue tweaking it to see if I can get the LEDs to work.
2021-10-16 14:52:56 -07:00
Autechre
3f179a5762
Merge pull request #12632 from Sunderland93/remove-xdg-shell-v6
[Wayland] Remove xdg-shell-v6 protocol
2021-10-07 05:10:53 +02:00
Nathan Strong
5da1cd08ff Unify the HID driver architecture
== DETAILS
When I first implemented the Wii U HID architecture, I ended up
having to design my own implementation because, at the time, I did
not have a way to read the HID device string to allow the existing
code to successfully detect the gamepad.

After spending some time experimenting, I've figured out how to
do this. And that means I can better align the HID driver with other
platforms.

change summary:

- create a single state structure for all three sub-types of wiiu pads
  (kpad, wpad, and hid)
- eliminate confusing duplicate pad lists
- eliminate confusing duplicate HID pad drivers (ds3, gamecube
  adapter, etc)
- ensure the ds3 driver still works
2021-10-05 09:23:08 -07:00
gblues
78858a9474
Fix analog inputs on HID devices (#12991)
== DETAILS

File this one under "I'm not sure how this ever worked."

I mean, it did (in 1.8.8). I'm not sure what changed, but ultimately what I did was
a bunch of comparative testing against 1.8.8:

- I confirmed the packet data was still being read successfully
- I confirmed that the axis value being passed into pad->get_axis() had
  not changed
- I confirmed the work done in `gamepad_read_axis_data()` was working the same
  between 1.8.8 and master

With the only difference between 1.8.8 and current being the return value from
`gamepad_read_axis_data()`, I just rewrote the method to work properly, and
also fixed up the default axis mapping.

I tested this with a sixaxis controller and GCA, configuring the analog-to-digital
control override to use the right stick.
2021-09-15 03:30:05 +02:00
Nathan Strong
feb4f266fa WIIU: Fix L3/R3 buttons
== DETAILS
After a bisect, the culprit was changing the gamepad interface from
returing a single button (bool) to multiple (int16).

The issue is that the Wii U gamepad (and presumably the Pro controller too)
have more than 16 buttons, which means some buttons get lost. Notably, L3 (18)
and R3 (17).

The solution: use int32 instead of int16.

I did a test build and confirmed that this change restores L3/R3 functionality
with the gamepad. Don't have a pro controller to test, but it should work too.
2021-08-07 23:23:33 -07:00
Aleksey Samoilov
146804fcbc Remove xdg_shell_v6 support 2021-07-10 14:22:58 +04:00
twinaphex
2fbcc99b24 RARCH_LOG_BUFFER - doesn't need early return 2021-04-04 20:05:00 +02:00
twinaphex
76ddfa022e Get rid of RARCH_LOG in wayland_common - gets rid of warning/error 2021-03-22 23:35:14 +01:00
jdgleaver
3fa1166ec4 (udev/linuxraw/wayland) Fix return key keyboard input 2020-09-29 11:23:35 +01:00
twinaphex
a82bff2055 (Wayland) Fix serious warnings - input struct pointer was being passed
to function that requires gfx struct pointer
2020-08-31 19:56:03 +02:00
twinaphex
1c0f79442b Cleanups 2020-08-28 20:40:06 +02:00