xserver/hw/xwayland
Olivier Fourdan 4248bfb0da xwayland: Keep track of outputs per window
Add a list of outputs a window is placed on, adding an output whenever
the surface enters the output and removing it once it leaves the output.

Note that not all Wayland compositors actually send a leave surface
event on output removal, so we need to make sure to remove the output
from the list for each window, otherwise we might end up pointing to
freed memory.

Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
Reviewed-By: Kenny Levinsen <kl@kl.wtf>
Acked-by: Peter Hutterer <peter.hutterer@who-t.net>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1197>
2024-03-20 09:05:36 +01:00
..
desktop xwayland: Use "-decorate" if available 2024-03-18 23:19:59 +00:00
man xwayland/glamor: Drop the EGLStream backend 2024-03-18 15:41:17 +00:00
.gitignore xwayland: Add wp_viewport wayland extension support 2019-10-12 12:19:14 +02:00
drm.xml wayland: Sync drm.xml with Mesa 2017-07-05 10:13:04 -04:00
meson.build xwayland: Use "-decorate" if available 2024-03-18 23:19:59 +00:00
xwayland-cursor.c xwayland: Account for the scale factor 2024-03-20 09:05:36 +01:00
xwayland-cursor.h xwayland: Add xwl_cursor_clear_frame_cb() 2021-10-25 12:05:42 +00:00
xwayland-cvt.c xwayland: Keep the CVT timings for non-standard modes 2023-05-15 10:33:21 +02:00
xwayland-cvt.h xwayland: Move Xwayland CVT declaration 2019-12-20 16:19:01 +01:00
xwayland-dmabuf.c xwayland/glamor: Drop xwl_screen_get_main_dev() 2024-03-18 15:41:18 +00:00
xwayland-dmabuf.h xwayland: Move dmabuf code to its own source file 2024-03-14 15:00:46 +01:00
xwayland-drm-lease.c randr: move private definitons from randrstr.h to randrstr_priv.h 2024-02-22 23:47:49 +00:00
xwayland-drm-lease.h Xwayland: implement drm-lease-v1 2021-12-07 10:02:29 +00:00
xwayland-glamor-gbm.c xwayland/glamor: Remove the backend pointers 2024-03-18 15:41:18 +00:00
xwayland-glamor-gbm.h xwayland/glamor: Make xwl_glamor_init_gbm() return its status 2024-03-18 15:41:17 +00:00
xwayland-glamor-xv.c xwayland: Cleanup and remove `xwayland.h` 2019-12-20 16:19:01 +01:00
xwayland-glamor.c xwayland/glamor: Drop xwl_glamor_needs_n_buffering() 2024-03-18 15:41:18 +00:00
xwayland-glamor.h xwayland/glamor: Drop xwl_glamor_needs_n_buffering() 2024-03-18 15:41:18 +00:00
xwayland-input.c xwayland: Apply the viewport's scale_x/y to all input 2024-03-20 09:05:36 +01:00
xwayland-input.h xwayland: Move the leave kbd/ptr code 2024-03-18 23:34:29 +00:00
xwayland-output.c xwayland: Keep track of outputs per window 2024-03-20 09:05:36 +01:00
xwayland-output.h xwayland: Track output scales 2024-03-20 09:05:36 +01:00
xwayland-pixmap.c xwayland: Add xwl_pixmap_get_wl_buffer helper 2024-01-22 14:14:05 +00:00
xwayland-pixmap.h xwayland: Replace window pixmap as needed for drawing operation 2024-03-06 17:12:54 +01:00
xwayland-present.c xwayland: correctly report PresentCompleteModeCopy 2024-03-14 10:37:28 +00:00
xwayland-present.h xwayland: correctly report PresentCompleteModeCopy 2024-03-14 10:37:28 +00:00
xwayland-screen.c xwayland: Add scale factor to the Xwayland screen 2024-03-20 09:05:36 +01:00
xwayland-screen.h xwayland: Add scale factor to the Xwayland screen 2024-03-20 09:05:36 +01:00
xwayland-shm.c os: move os_move_fd() out of public API 2024-03-09 17:12:46 +00:00
xwayland-shm.h xwayland: Move SHM declarations to their own header 2019-12-20 16:19:01 +01:00
xwayland-types.h xwayland/glamor: Remove the xwl_egl_backend structure 2024-03-18 15:41:18 +00:00
xwayland-vidmode.c xwayland: add a fixed geometry size for rootful 2022-06-30 17:52:22 +02:00
xwayland-vidmode.h xwayland: Move Xwayland vidmode declaration 2019-12-20 16:19:01 +01:00
xwayland-window-buffers.c xwayland: Drop xwl_window_buffers_get_pixmap() 2024-03-18 15:41:18 +00:00
xwayland-window-buffers.h xwayland: Drop xwl_window_buffers_get_pixmap() 2024-03-18 15:41:18 +00:00
xwayland-window.c xwayland: Keep track of outputs per window 2024-03-20 09:05:36 +01:00
xwayland-window.h xwayland: Keep track of outputs per window 2024-03-20 09:05:36 +01:00
xwayland-xtest.c Revert "Fix missing includes of <errno.h>" 2024-03-19 00:33:26 +00:00
xwayland-xtest.h xwayland: Fallback to plain XTEST if EI does not work 2023-06-26 13:19:19 +02:00
xwayland.c xwayland/glamor: Drop the EGLStream backend 2024-03-18 15:41:17 +00:00