Commit graph

502 commits

Author SHA1 Message Date
Simon Ser
b3f3f6c92d rendervulkan: log whether DRM modifiers are supported 2021-04-20 09:13:10 +02:00
Simon Ser
0aa74266c4 Relax Vulkan import plane check
Try to import multi-planar textures even if we don't have a
modifier. This is the case for e.g. DMA-BUFs coming from VA-API.
2021-04-20 09:13:10 +02:00
Simon Ser
be735e9360 Set GAMESCOPE_WAYLAND_DISPLAY
This allows gamescope-specific Wayland clients to connect to the
Wayland server, while preventing regular Wayland clients from doing
so.
2021-04-20 09:13:10 +02:00
Simon Ser
a05e5b0a39 Implement gamescope-xwayland protocol 2021-04-20 09:13:10 +02:00
Simon Ser
6f8e25dc89 Add gamescope-xwayland protocol 2021-04-20 09:13:10 +02:00
Simon Ser
10816e6ed8 wlserver: adjust assertion in wlserver_surface_set_wlr
Make sure we don't overwrite an existing surf->wlr. We don't really
care about the Wayland surface ID here.
2021-04-20 09:13:10 +02:00
Simon Ser
ce0a3f7259 Rename wlserver_surface_set_id to wlserver_surface_set_wl_id
Make it clear the ID refers to a Wayland object.
2021-04-20 09:13:10 +02:00
Simon Ser
db14ce1eeb readme: use shell syntax for example comments 2021-04-16 12:15:09 +02:00
Simon Ser
f66c8057f6 readme: format keyboard shortcuts as a list 2021-04-16 12:13:39 +02:00
Simon Ser
bfe9777abc readme: improve formatting a bit 2021-04-16 12:13:06 +02:00
Simon Ser
f283207ced readme: document end-user options 2021-04-16 12:12:17 +02:00
Simon Ser
1a8a4bdcf5 readme: R600_DEBUG=nodcc is only required on GFX8- 2021-04-16 12:03:41 +02:00
Simon Ser
bee939e691 build: force-enable xwayland in wlroots subproject
This should give a better error message if xwayland deps are missing.
2021-04-10 10:23:24 +02:00
Simon Ser
e76d82828b build: update wlroots system dep version 2021-04-08 09:27:10 +02:00
Simon Ser
25a0a75811 build: simplify wlroots xwayland check 2021-04-08 09:26:17 +02:00
Simon Ser
21ab0dd372 Add .editorconfig 2021-04-08 09:15:39 +02:00
Sefa Eyeoglu
ed44909813 Update wlroots to 0.13.0
Update usage of wlr_headless_backend_create,
wlr_renderer_get_shm_texture_formats,
wlr_texture_from_pixels and add missing include for render/egl.h.
2021-04-08 09:15:05 +02:00
Simon Ser
c834999a5f Introduce wlserver_surface 2021-04-02 08:37:53 +02:00
Simon Ser
4f24653d77 Add support for multi-planar DMA-BUF Vulkan export 2021-04-01 19:06:08 +02:00
Simon Ser
a900bef8b8 Query plane 0 layout with VK_IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT 2021-04-01 18:17:04 +02:00
Simon Ser
ff33a3738e Query image modifier on Vulkan DMA-BUF export 2021-04-01 18:03:18 +02:00
Simon Ser
b8ab5a74ee rendervulkan: add support for legacy wl_drm buffers
There are still clients (e.g. steam) not supporting modifiers at
all.
2021-04-01 17:41:06 +02:00
Simon Ser
df18c40815 Only advertise scanout capable modifiers 2021-04-01 17:41:06 +02:00
Simon Ser
26a25b1d29 Pass list of modifiers when allocating with Vulkan
This allows us to remove the wsi_image_create_info hack when
modifiers are supported.

References: https://github.com/Plagman/gamescope/issues/51
2021-04-01 13:13:38 +02:00
Sefa Eyeoglu
774002483b fix: update liftoff log initialisation
Also: Update liftoff dependency to b08bbaa5e6331ed2
("Split liftoff_log_init into set_handler and set_priority")

The callback parameter was moved into a different method, though it is
not needed in this case as we didn't give it one before.
2021-03-31 14:25:39 +02:00
Pierre-Loup A. Griffais
7dfb55c8a8 steamcompmgr: disable XRes1.2 support by default.
Can re-enable it once an XRes release with this fix has been tagged for a bit:

https://gitlab.freedesktop.org/xorg/lib/libxres/-/merge_requests/1?commit_id=3e6bdd90c604e061c71715865eb403ffdd0dd7f0

Or users can use -x for now.
2021-03-30 18:11:27 -07:00
Pierre-Loup A. Griffais
5936baa865 steamcompmgr: make cursor hide time configurable, -C in ms 2021-03-24 20:35:33 -07:00
Simon Ser
8f9a284d32 Print error if poll fails in imageWaitThreadMain 2021-03-12 19:19:25 +01:00
Simon Ser
29d00dbc68 tracing: use {begin,end}_ctx helpers, remove unnecessary newlines 2021-03-11 11:25:34 +01:00
Simon Ser
36c8b983ee drm: fix missing flag in drmModeAddFB2WithModifiers call
That's a nice footgun right here.
2021-03-05 16:04:45 +01:00
Simon Ser
7633401874 drm: check DRM format/modifier prior to addfb2 2021-03-05 14:47:59 +01:00
Simon Ser
f89f585cdd drm: build set of scanout capable formats 2021-03-05 14:26:30 +01:00
Simon Ser
706bdf849e drm: store KMS props in a map 2021-03-05 14:18:09 +01:00
Simon Ser
47fed361cd drm: remove obscure macros 2021-03-05 11:46:59 +01:00
Simon Ser
9f07d66143 drm: whitespace fixes 2021-03-05 11:32:22 +01:00
Simon Ser
1dc98da7d1 Log when tracing is enabled 2021-03-03 16:51:58 +01:00
Simon Ser
ad06b347ee Always print error on missing DRM_CAP_ADDFB2_MODIFIERS 2021-03-03 16:07:35 +01:00
Simon Ser
0f96db3dc2 Fix is_focus_priority_greater function 2021-03-02 19:16:56 +01:00
Simon Ser
2d992653a0 drm: remove workaround for small buffers
Even if we get EINVAL, we'll just return false later on.
2021-02-25 17:21:27 +01:00
Simon Ser
c0fba1fe9f drm: remove duplicate assert 2021-02-25 17:14:18 +01:00
Simon Ser
29a23e90e1 drm: simplify rotation in drm_prepare_basic 2021-02-25 17:11:36 +01:00
Simon Ser
141f2cf374 Revert "Remove bogus ARGB8888 entry from Vulkan format list"
This reverts commit 202915271e.

We actually need this format for the cursor plane.
2021-02-25 17:11:36 +01:00
Sefa Eyeoglu
72c629638d fix: update libliftoff pkg-config dependency
emersion/libliftoff@470af77869 changed the
name of the pkg-config dependency to libliftoff
2021-02-25 14:59:02 +01:00
Simon Ser
79acc095b2 rendervulkan: assert DRM format is valid when exporting DMA-BUF 2021-02-24 15:07:23 +01:00
Simon Ser
49e0cc046e Move Vulkan init into main
Some Wayland server setup will need Vulkan initialized.
2021-02-22 12:37:56 +01:00
Simon Ser
202915271e Remove bogus ARGB8888 entry from Vulkan format list 2021-02-22 12:37:52 +01:00
Simon Ser
b37880c62f Add TODO about multi-planar DMA-BUFs and vkBindImageMemory 2021-02-22 12:37:46 +01:00
Simon Ser
9b63bf755e drm: initialize handles before drmModeAddFB2WithModifiers
This fixes a drmModeAddFB2WithModifiers EINVAL.
2021-02-19 17:41:33 +01:00
Simon Ser
7eb7e8ec63 Don't scale games by default
Right now scale games by default to 720p even if the screen is 1080p.
This happens when -w/-h is *not* specified.

Instead, don't scale the game by default. This means using a 720p
window when nested (shouldn't change anything), and using the screen's
resolution when embedded.
2021-02-12 22:16:34 +01:00
Simon Ser
70af2c38f0 Query window PID via XRes
References: https://github.com/Plagman/gamescope/issues/17
2021-02-12 22:16:04 +01:00