Sam Lantinga
a316418c89
pipwire: Added protocol requesting scaling on the pipewire capture
...
The capture texture will scaled to fit the requested capture size while
maintaining correct aspect ratio. The actual scaling will be implemented
in a separate commit.
2022-10-28 03:34:00 +01:00
Joshua Ashton
c20e14ee74
steamcompmgr: Force Steam to use FIT + LINEAR
2022-10-28 02:57:00 +01:00
Joshua Ashton
62775c765b
steamcompmgr: Account for globalScaleRatio for STRETCH
2022-10-28 02:25:37 +01:00
Joshua Ashton
a7203603fe
steamcompmgr: Add STRETCH scaling mode
2022-10-28 02:20:19 +01:00
Joshua Ashton
f302a23069
steamcompmgr: Add FILL upscaler
2022-10-28 02:18:11 +01:00
Joshua Ashton
9b86a797a8
steamcompmgr: Refactor out to calc_scale_factor helper
2022-10-28 02:17:01 +01:00
Joshua Ashton
f5f0fc8c24
steamcompmgr: Rename SMART_FIT to AUTO
2022-10-28 02:02:29 +01:00
Joshua Ashton
c9c0044250
steamcompmgr: Add regular FIT as an option
2022-10-28 02:02:06 +01:00
Joshua Ashton
4a4178075e
steamcompmgr: Refactor scaling
...
Split out scalers and scaling filters.
2022-10-28 02:01:15 +01:00
Eric Sullivan
2f95c0fa5d
nis: Update to v1.0.3
...
The docs, and samples directories have been removed along with the third_party_licenses.txt file.
Source downloaded from: https://github.com/NVIDIAGameWorks/NVIDIAImageScaling/archive/refs/tags/v1.0.3.tar.gz
2022-10-22 00:11:13 +01:00
Joshua Ashton
677e3b6624
vblankmanager: Fix build
2022-10-19 18:59:09 +01:00
Joshua Ashton
ec6bd30bb6
drm, steamcompmgr: Support for VRR
...
Exposes GAMESCOPE_VRR_ENABLED, GAMESCOPE_VRR_CAPABLE and GAMESCOPE_VRR_FEEDBACK
2022-10-19 18:57:14 +01:00
Joshua Ashton
4e748ba1e5
main: Set XDG_CURRENT_DESKTOP to gamescope
...
A proper session will already do this from eg. SDDM, but when running nested, we want this to still be present.
2022-10-19 15:41:04 +01:00
Joshua Ashton
98d61844d8
main: Reset XDG_SESSION_TYPE to x11
...
We don't support Wayland clients, so let's convince any child apps that are launched that we are just X11.
Fixes QT apps misbehaving.
2022-10-19 15:40:20 +01:00
Simon Ser
0626c7c8f8
Add note that --force-orientation is for internal display only
2022-10-17 13:26:26 +02:00
Simon Ser
45061ad3e3
drm: drop trailing whitespace
2022-10-13 15:50:41 +02:00
Simon Ser
14f0b78f61
drm: cleanup orientation code
2022-10-13 15:49:23 +02:00
ruineka
12bff31008
drm: fix an issue where g_nOutputWidth and g_nOutputHeight weren't updated
2022-10-13 15:43:47 +02:00
Simon Ser
f51b7229ae
drm: de-duplicate connector type logic
2022-10-11 19:05:44 +02:00
ruineka
cf89b2fbae
drm: add support for the panel orientation property
2022-10-11 18:20:14 +02:00
ruineka
647e1d96d0
Add --force-orientation option
...
Co-authored-by: Joaquín Ignacio Aramendía <samsagax@gmail.com>
Co-authored-by: alphonsez1 <alphonsez743@gmail.com>
Co-authored-by: Ruineka <ruineka@pop-os.localdomain>
2022-10-07 15:29:52 +02:00
Joshua Ashton
b87660561f
drm: Fix respecting custom mode refresh rates
...
This was being overwritten by some dynamic refresh code.
2022-10-01 21:10:34 -02:30
Joshua Ashton
20062ec645
steamcompmgr: Add GAMESCOPE_STEAM_MAX_HEIGHT
...
0 to disable, any other value sets the max height of Steam
2022-10-01 20:33:37 -02:30
Simon Ser
79ad108c41
wlserver: fix output global not exposed
...
Fixes: 7c0f65e62d
("wlserver: stop re-creating wl_output global")
2022-10-01 19:11:52 +02:00
Simon Ser
870d54c54e
Force repaint on SDL_WINDOWEVENT_EXPOSED
...
Co-authored-by: Bad Sector <badsector@runtimeterror.com>
2022-10-01 18:42:44 +02:00
Simon Ser
7c0f65e62d
wlserver: stop re-creating wl_output global
2022-09-27 19:03:00 +01:00
Simon Ser
576041c2b3
wlserver: remove trailing whitespace
2022-09-27 19:38:29 +02:00
Joshua Ashton
7f2db65c00
steamcompmgr: Add GAMESCOPE_CURSOR_VISIBLE_FEEDBACK
2022-09-23 20:44:51 +00:00
Joshua Ashton
122ba3dda9
steamcompmgr: Undirty cursor when resolving empty state
...
Otherwise we read this back every single paint, which is bruh.
2022-09-23 20:40:14 +00:00
Joshua Ashton
9a984234ba
steamcompmgr: Avoid duplicate commits
...
Xwayland blits sometimes send us duplicate commits when strange things happen such as connector hotplugs.
2022-09-23 21:26:46 +01:00
Joshua Ashton
777fe39010
steamcompmgr: Be more lenient when failing flips
...
Replaces the abort here to be more lenient.
Some intense connector hotplugging could be occuring and the
connector could become destroyed before we had a chance to use it
as we hadn't reffed it in a commit yet.
2022-09-23 21:26:38 +01:00
Joshua Ashton
554a4af14d
wlserver: Only update first xwayland server wlserver_set_output_info
...
Only [0] should get updated with any of this info.
Games do NOT need to see hotplug because they just crash... The Xrandr interface for crtc stuff is VERY broken with MST and our reconnect spam here.
2022-09-21 23:01:48 +00:00
Simon Ser
b1d928ab6f
rendervulkan: fix inverted wlr_buffer_begin_data_ptr_access() check
2022-09-21 19:42:18 +02:00
Joshua Ashton
8608e017ec
wlserver: Handle wl commits before X11 surface has come up
...
The inverse case of the pending surfaces...
2022-09-19 09:51:57 +01:00
Joshua Ashton
b305a97e9d
drm: Don't re-zero connector CRTCs we already have zero-ed.
...
Fixes an issue where we would use an invalid connector because
the MST connector object got destroyed from our last CRTC set.
This avoids just using it again.
2022-09-16 06:06:50 +01:00
Joshua Ashton
4f62e5d18b
wlserver: Avoid use after free of wlr surface data when wlserver_wl_surface_info is destroyed
2022-09-16 01:08:28 +00:00
Joshua Ashton
8562f4ee5a
steamcompmgr: Workaround X11 bug for ASAN testing
2022-09-16 00:16:50 +00:00
Joshua Ashton
4754b17824
wlserver: Fix stale wlr pointer in x11_surface_info + fix mouse focus surface destruction
...
Stale pointers aaaa
2022-09-16 00:44:22 +01:00
Joshua Ashton
716552b7d6
wlserver: Fix crash in content_override_handle_surface_destroy
...
The x11 surface owned by the window can be destroyed, causing us to access a stale ptr.
Assume server 0 to delete the content override, because thats the only one it can be created on.
We should rev the protocol at some point with support for specifying the DISPLAY... ughghghghghghgh
2022-09-16 00:44:22 +01:00
Joshua Ashton
c8057afbc4
wlserver: Clear out x11_surface ptr when destroyed
2022-09-16 00:44:22 +01:00
Simon Ser
6237c3452b
wlserver: explain why filter_global may need to handle NULL wlr_output
...
1. output plugged in, gamescope creates new wlr_output and sends a
wl_registry.global event
2. client sees it, sends a wl_registry.bind request
3. output plugged out, gamescope sends a wl_registry.global_remove
event and destroys the wlr_output
4. gamescope receives the wl_registry.bind request, but the wlr_output
no longer exists
5. client receives the wl_registry.global_remove event
2022-09-15 08:05:41 +01:00
Joshua Ashton
7b51f5964d
wlserver: Crappy workaround for rare filter_global crash...
2022-09-15 01:59:02 +00:00
Joshua Ashton
215a19b0e8
wlserver: Expose base wl_output to non-xwayland server clients
2022-09-15 01:53:51 +01:00
Ben Jackson
40cbcd87ef
ime: Delay release of last keypress
...
More closely simulate a human pressing by holding the last (or only) key in
key pressed for 30ms before releasing. The key is released automatically
after the timer expires or just in time before a subsequent injected key.
2022-09-13 10:18:00 -07:00
Simon Ser
3303289afa
ime: add move_{up,down} actions
2022-09-13 17:56:33 +01:00
Simon Ser
343e286308
build: bump wayland-server dep version
...
Wayland global filtering requires 1.21 to work properly with
globals which are created and destroyed on-the-fly.
2022-09-10 00:06:44 +00:00
Simon Ser
26bbb53de7
wlserver: create one wl_output global per Xwayland server
...
Closes: https://github.com/Plagman/gamescope/issues/571
2022-09-10 00:06:44 +00:00
Simon Ser
697818a228
wlserver: start all Xwayland processes in parallel
...
The next commit will need to inspect wlserver.wlr.xwayland_servers
to figure out which wl_output global to expose.
2022-09-10 00:06:44 +00:00
Joshua Ashton
ec1ce12f13
steamcompmgr: Add GAMESCOPE_DISPLAY_MODE_LIST_EXTERNAL and GAMESCOPE_DISPLAY_IS_EXTERNAL
2022-09-07 12:58:16 +00:00
Joshua Ashton
5ec3b7cffb
drm, steamcompmgr: Add GAMESCOPE_DISPLAY_MODE_NUDGE
2022-09-07 11:36:44 +00:00