Joshua Ashton
4cc3367ccf
ci: Add libxmu
2023-01-12 01:29:54 +00:00
Joshua Ashton
2d7ec208c4
sdlwindow: Forward cursor in absolute mode to host compositor
2023-01-12 01:29:25 +00:00
Joshua Ashton
86ff9cfc58
main: Fix compilation
2023-01-12 00:55:02 +00:00
Joshua Ashton
054458fdaf
sdlwindow: Default to non-relative mouse when a cursor image exists
...
Add --force-grab-cursor to keep old behaviour
2023-01-12 00:52:38 +00:00
Joshua Ashton
f8e66bf4fb
sdlwindow: Refactor user events
...
Allows us to have more user events, and submit them nicely instead of ugly derping into one big user event.
2023-01-12 00:33:21 +00:00
Joshua Ashton
d3424703a8
steamcompmgr: Load host cursor by default in nested
2023-01-12 00:17:20 +00:00
Joshua Ashton
b124200e36
steamcompmgr: Default to left_ptr from cursor font
...
Avoids having ugly X cursor by default.
Based in part on #280 .
2023-01-12 00:11:04 +00:00
Joshua Ashton
f2a4533cce
steamcompmgr: Avoid leaking title in get_win_title
2023-01-11 22:43:19 +00:00
Joshua Ashton
45552dfdec
ci: Add novr build
2023-01-11 21:20:24 +00:00
Joshua Ashton
cae9b3efb7
vr: Fix usage of HAVE_OPENVR macro
2023-01-11 21:20:24 +00:00
Joshua Ashton
8b01fbefd9
build: Use openvr_api as subproject
2023-01-11 21:20:24 +00:00
Joshua Ashton
33f1103155
vr_session: Add Steam UI integration
2023-01-11 21:20:24 +00:00
Joshua Ashton
48d726c72b
steamcompmgr: Make get_appid_from_pid more robust
...
Was some undefined value ptrs going on here, and not checking if the PID stat opened successfully.
2023-01-11 21:20:24 +00:00
Joshua Ashton
f4f0239b31
vr_session: Initial implementation
2023-01-11 21:20:24 +00:00
Joshua Ashton
b0f2b7e89f
ime: Add support for local IMEs
2023-01-11 21:20:24 +00:00
Joshua Ashton
1c186cd286
ime: Fix warnings on newer compilers
...
Should unbreak CI.
2023-01-11 19:19:03 +00:00
Joshua Ashton
201d5feb39
steamcompmgr: Add --force-windows-fullscreen
...
Useful for browsers or nested desktop environments.
Also adds GAMESCOPE_FORCE_WINDOWS_FULLSCREEN atom per-xwayland.
2023-01-11 19:14:12 +00:00
Joshua Ashton
041ee8dcd8
drm: Simplify some hdr_output_metadata logic
2023-01-11 00:22:47 +00:00
Joshua Ashton
a9541332b7
drm: Set Colorspace+HDR_OUTPUT_METADATA on non-modeset path too
2023-01-11 00:21:58 +00:00
Joshua Ashton
bb523af686
build: Remove stb submodule that somehow got here
2023-01-07 12:26:31 +00:00
Joshua Ashton
501cb45150
layer: Handle lack of gamescope socket with grace
2023-01-07 12:09:12 +00:00
Joshua Ashton
79ce85b4cb
layer: Check if VkFormat is supported for underlying surface in CreateSwapchainKHR
2023-01-07 10:35:38 +00:00
Joshua Ashton
d19872963e
steamcompmgr: Support Xwayland resizing in nested
2023-01-07 10:09:46 +00:00
Joshua Ashton
10ca15cc1c
steamcompmgr: Handle commit size != window size for layer
2023-01-07 10:02:45 +00:00
Joshua Ashton
5054054768
drm, steamcompmgr: Implement 3DLUT + SHAPERLUT support
2023-01-06 15:54:31 +00:00
Joshua Ashton
dc6d755ada
drm: Use 'contains' on map to simplify property code
...
May as well use C++20 for everything now we need it for the
layer.
2023-01-06 15:25:04 +00:00
Joshua Ashton
67d79cfee7
steamcompmgr: Always composite when debug heatmap is enabled.
2023-01-06 14:21:50 +00:00
Joshua Ashton
d2c14e78b7
steamcompmgr: Fix GAMESCOPE_DEBUG_HDR_HEATMAP
2023-01-06 14:21:50 +00:00
Joaquín Ignacio Aramendía
45c9ffd088
steamcompmgr: add basic handling of system() ffmpeg call
2023-01-05 12:11:42 +01:00
Joshua Ashton
054dcec856
steamcompmgr: Replicate gamescopeHDROutputFeedback to other servers properly
2023-01-05 06:26:33 +00:00
Joshua Ashton
a1bff9fc70
shaders: Fix primaries for scRGB content
...
Need to go from 709 -> 2020.
2023-01-04 08:40:46 +00:00
Joshua Ashton
1e9ccbd05c
layer: Remove duplicate largestObscuringWindowSize check
2023-01-04 07:44:05 +00:00
Joshua Ashton
da33453174
steamcompmgr: Add GAMESCOPE_HDR_SDR_CONTENT_BRIGHTNESS atom
2023-01-03 14:53:00 +00:00
Joshua Ashton
7251fdd878
shaders: Improved heatmap code frol Lilium
2023-01-03 14:03:06 +00:00
Joshua Ashton
d1fd41fd5b
rendervulkan: Apply tonemapping to HDR content on SDR outputs
...
Also add a debug flag for Reinhard.
2023-01-03 14:02:54 +00:00
Joshua Ashton
905376f036
steamcompmgr: Add GAMESCOPE_DEBUG_HDR_HEATMAP
2023-01-03 12:43:38 +00:00
Joshua Ashton
0c3653d159
color_helpers: Handle naughty clients/EDIDs with more grace
...
Avoid asserting and simply clamping to deal with broken EDIDs like
on LG OLED panels for now.
2023-01-03 12:14:32 +00:00
Joshua Ashton
d2cc74c570
main: Add heatmap debug to help
2023-01-03 06:00:39 +00:00
Joshua Ashton
8a16fa346f
subprojects: Update vkroots
2023-01-03 05:57:17 +00:00
Joshua Ashton
ae02e05e4b
layer: Clean up return logic in QueuePresentKHR
2023-01-03 03:50:11 +00:00
Joshua Ashton
6d6cc98f0f
layer: Return result from QueuePresentKHR when not forcing suboptimal
2023-01-03 03:48:20 +00:00
Joshua Ashton
acbb71966f
layer: Enable VK_KHR_xcb_surface extension
...
Needed for fallback surface.
2023-01-02 06:41:16 +00:00
Joshua Ashton
ece20d0120
layer: Add Reply audo-delete helper for XCB replies
2023-01-02 06:08:32 +00:00
Joshua Ashton
89456dd976
layer: Free reply in getToplevelWindow when root is reached
...
I need to write some wrapper here, this crappy xcb api is rife for errors liek this.
2023-01-02 06:00:06 +00:00
Joshua Ashton
d84d0fcfc9
layer: Free attributeReply after use
...
Oops!
2023-01-02 05:58:48 +00:00
Joshua Ashton
6a6a89c818
layer: Add fallback to XCB surface when we cannot safely flip
2023-01-02 05:57:44 +00:00
Joshua Ashton
b5e2602f69
layer: Move XCB helpers to header
2023-01-02 04:13:16 +00:00
Joshua Ashton
eb29ba4af5
main: Add hdr-sdr-content-nits argument
2023-01-02 04:04:15 +00:00
Jan Beich
50d5ea83b6
steamcompmgr: reap children like Linux on some BSDs
...
DragonFly and FreeBSD adopted a similar API to Linux. Other sytems
maybe interested as well, so add a warning.
src/steamcompmgr.cpp:51:10: fatal error: 'sys/prctl.h' file not found
#include <sys/prctl.h>
^~~~~~~~~~~~~
src/steamcompmgr.cpp:3118:9: error: use of undeclared identifier 'PR_SET_CHILD_SUBREAPER'
prctl( PR_SET_CHILD_SUBREAPER, 1, 0, 0, 0 );
^
2023-01-01 19:40:07 +00:00
Jan Beich
241df252fd
main: don't renice as non-root on non-Linux
...
On BSD systems only the super-user may lower priority values.
meson.build:40:0: ERROR: Dependency "libcap" not found, tried pkgconfig and cmake
src/main.cpp:7:10: fatal error: 'sys/capability.h' file not found
#include <sys/capability.h>
^~~~~~~~~~~~~~~~~~
src/main.cpp:244:2: error: unknown type name 'cap_t'
cap_t caps = cap_get_proc();
^
src/main.cpp:244:15: error: use of undeclared identifier 'cap_get_proc'
cap_t caps = cap_get_proc();
^
src/main.cpp:247:3: error: unknown type name 'cap_flag_value_t'
cap_flag_value_t nicecapvalue = CAP_CLEAR;
^
src/main.cpp:247:35: error: use of undeclared identifier 'CAP_CLEAR'
cap_flag_value_t nicecapvalue = CAP_CLEAR;
^
src/main.cpp:248:23: error: use of undeclared identifier 'CAP_SYS_NICE'
cap_get_flag( caps, CAP_SYS_NICE, CAP_EFFECTIVE, &nicecapvalue );
^
src/main.cpp:248:37: error: use of undeclared identifier 'CAP_EFFECTIVE'
cap_get_flag( caps, CAP_SYS_NICE, CAP_EFFECTIVE, &nicecapvalue );
^
src/main.cpp:250:24: error: use of undeclared identifier 'CAP_SET'
if ( nicecapvalue == CAP_SET )
^
2023-01-01 19:40:07 +00:00