Commit graph

1470 commits

Author SHA1 Message Date
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
Joshua Ashton
ba467640a8 shaders: Fix output scaling of heatmap 2022-12-31 10:53:12 +00:00
Joshua Ashton
5b805dda00 rendervulkan: Framework for configurable SDR on HDR content brightness 2022-12-31 10:39:41 +00:00
Joshua Ashton
1fea04e073 steamcompmgr: Fix cached value of ST2084 support 2022-12-31 09:59:18 +00:00
Joshua Ashton
8f0008e3a6 rendervulkan: Add Lilium's HDR heatmap 2022-12-30 03:21:55 +00:00
Joshua Ashton
31c94f8869 rendervulkan: Add HDR heatmap debug + way to force support but not PQ output 2022-12-30 03:21:55 +00:00
Joshua Ashton
c25a368193 rendervulkan: Turn composite debug into flags rather than bool 2022-12-30 03:21:55 +00:00
Joshua Ashton
269bbc8444 rendervulkan: Expose 16161616_UNORM format for surfaces 2022-12-30 03:21:55 +00:00
Joshua Ashton
b033bbe5f8 layer: Support for x86 and x86_64 builds at the same time 2022-12-30 03:21:55 +00:00
Joshua Ashton
6bc6a85d6d build: Add options for building layer/executable 2022-12-30 03:21:55 +00:00
Joshua Ashton
a50ead0357 layer: Respect vk_x11_override_min_image_count
Avoids regressing things
2022-12-30 03:21:55 +00:00
Joshua Ashton
3591f2d4ab layer: Dump surface state on creation 2022-12-30 03:21:55 +00:00
Joshua Ashton
a4f30a87ff layer: Only expose HDR formats when gamescope HDR output is enabled and it isn't blacklisted for this app 2022-12-30 03:21:55 +00:00
Joshua Ashton
acf76d6cff steamcompmgr: Add GAMESCOPE_HDR_OUTPUT_FEEDBACK
Exposes whether HDR output is currently enabled.
2022-12-30 03:21:55 +00:00
Joshua Ashton
1ab8757558 layer: Make getting property values generic 2022-12-30 03:21:55 +00:00
Joshua Ashton
efd47c3012 layer: Expose scRGB surface format 2022-12-30 03:21:55 +00:00
Joshua Ashton
418a84dfb7 steamcompmgr, rendervulkan: Add force wide gammut option 2022-12-30 03:21:55 +00:00
Joshua Ashton
06c7c3efff drm: Respect connector HDR capabilities 2022-12-30 03:21:55 +00:00
Joshua Ashton
0d86168480 drm: Respect app's HDR metadata 2022-12-30 03:21:55 +00:00
Joshua Ashton
70b74e73be drm: Hook up Colorspace and HDR_OUTPUT_METADATA 2022-12-30 03:21:55 +00:00
Joshua Ashton
b5bb169889 drm, rendervulkan: Hook up composite ST2084 output 2022-12-30 03:21:55 +00:00
Joshua Ashton
24a7c40c47 steamcompmgr, main: Add hdr atoms + startup options 2022-12-30 03:21:55 +00:00
Joshua Ashton
22806541e2 drm: Parse out HDR/colorimetry metadata from EDID 2022-12-30 03:21:55 +00:00
Joshua Ashton
b3347f32fa layer: Use string views
Safer than strcmp
2022-12-30 03:21:55 +00:00
Joshua Ashton
a0222d4142 layer: Log swapchain format 2022-12-30 03:21:55 +00:00
Joshua Ashton
29d5f8d3f9 layer: Respect xserver's id when overriding contents
Uses override_window_content2 now.
2022-12-30 03:21:55 +00:00
Joshua Ashton
7fffcc813c protocol, wlserver: Add override_window_content2 2022-12-30 03:21:55 +00:00
Joshua Ashton
71f7f1362f layer: Hook up SetHDRMetadata 2022-12-30 03:21:55 +00:00
Joshua Ashton
87b75026f8 protocol: Add set_hdr_metadata to gamescope_xwayland 2022-12-30 03:21:55 +00:00
Joshua Ashton
384cd9ad7d layer: Refactor SynchronizedMapObject usage 2022-12-30 03:21:55 +00:00
Joshua Ashton
99d3597600 layer: Minor formatting changes 2022-12-30 03:21:55 +00:00
Joshua Ashton
e4ab4ab5c9 layer: Consolidate extra surface format arrays 2022-12-30 03:21:55 +00:00
Joshua Ashton
703516c194 subprojects: Add libdisplay-info dependency 2022-12-30 03:21:55 +00:00
Joshua Ashton
440f85e8d9 layer: Handle nullptr pApplicationName 2022-12-30 03:21:55 +00:00
Joshua Ashton
b83516ed4e rendervulkan: Expose R8G8B8A8 surfaces 2022-12-30 03:21:55 +00:00
Joshua Ashton
d4ff3b4213 layer: Log colorspace for Gamescope surfaces 2022-12-30 03:21:55 +00:00
Joshua Ashton
a1d5c0583d shaders: Convert primaries for non-HDR10PQ formats when outputting to HDR10PQ 2022-12-30 03:21:55 +00:00
Joshua Ashton
47069426f7 rendervulkan: Handle manual sRGB->Linear for formats without SRGB views
We need these for 1010102 formats.
2022-12-30 03:21:55 +00:00
Joshua Ashton
83392e2afb layer: Fixup currentExtent surface cap + minImageCount 2022-12-30 03:21:55 +00:00