mutter/src/wayland
Olivier Fourdan dda13526c3 wayland: Add conditional Xwayland EI portal support
With EI support wired to XTEST, and oeffis being enabled in Xwayland
means that XTEST will always go through the XDG portal.

While this the intended behavior for the general use case of Xwayland
running rootless on a desktop compositor, that breaks when Xwayland is
running on a nested compositor, because the portal is for the entire
session and not limited to the nested Wayland compositor.

Enable XDG portal support in Xwayland only when we managed to connect
to the GNOME session manager, which means we are running in a full
desktop session, and not in any form of nested mode.

This is determined by simply using the status returned by set_gnome_env()
which will fail if not connected to a GNOME Session manager.

See-also: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1586
See-also: https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1170
Closes: https://gitlab.gnome.org/GNOME/mutter/-/issues/3047
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3303>
2023-10-09 07:36:52 +00:00
..
protocol wayland: Add X11 interop service client protocol 2023-02-13 15:34:24 +00:00
meta-cursor-sprite-wayland.c cursor-sprite: Register all cursor sprites with the cursor tracker 2021-12-22 16:22:08 +00:00
meta-cursor-sprite-wayland.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
meta-pointer-confinement-wayland.c Update license access method 2023-08-30 08:48:23 +02:00
meta-pointer-confinement-wayland.h Update license access method 2023-08-30 08:48:23 +02:00
meta-pointer-lock-wayland.c mutter: Replace cairo_rectangle_int_t with MtkRectangle 2023-08-30 16:46:13 +02:00
meta-pointer-lock-wayland.h Update license access method 2023-08-30 08:48:23 +02:00
meta-selection-source-wayland-private.h Update license access method 2023-08-30 08:48:23 +02:00
meta-selection-source-wayland.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-activation.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-activation.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
meta-wayland-actor-surface.c mutter: Completely replace MetaRectangle with MtkRectangle 2023-08-30 16:46:14 +02:00
meta-wayland-actor-surface.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-buffer.c mutter: Replace cairo_rectangle_int_t with MtkRectangle 2023-08-30 16:46:13 +02:00
meta-wayland-buffer.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-client-private.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-client.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-cursor-surface.c mtk: Move Rectangle.to_graphene_rect from Meta 2023-08-30 16:46:14 +02:00
meta-wayland-cursor-surface.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-data-device-primary.c wayland: Setup and use ownership chains 2022-12-17 15:13:48 +01:00
meta-wayland-data-device-primary.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
meta-wayland-data-device.c Remove unused meta_wayland_data_device_is_dnd_surface 2023-08-12 19:53:46 +00:00
meta-wayland-data-device.h Remove unused meta_wayland_data_device_is_dnd_surface 2023-08-12 19:53:46 +00:00
meta-wayland-data-offer-primary.c wayland: Do not trigger focus sync when destroying data offers 2023-09-06 10:55:55 +00:00
meta-wayland-data-offer-primary.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
meta-wayland-data-offer.c wayland: Do not trigger focus sync when destroying data offers 2023-09-06 10:55:55 +00:00
meta-wayland-data-offer.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
meta-wayland-data-source-primary.c wayland: Add support for wayland-protocols primary selection protocol 2020-05-13 18:27:46 +02:00
meta-wayland-data-source-primary.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
meta-wayland-data-source.c cleanup: Stop translating nick/blurb for pspecs 2023-07-19 11:33:59 +00:00
meta-wayland-data-source.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
meta-wayland-dma-buf.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-dma-buf.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-dnd-surface.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-dnd-surface.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-egl-stream.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-egl-stream.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-filter-manager.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-filter-manager.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-fractional-scale.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-fractional-scale.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-gtk-shell.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-gtk-shell.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-idle-inhibit.c wayland/idle-inhibit: Handle actor going away 2023-09-13 23:06:28 +00:00
meta-wayland-idle-inhibit.h wayland: Implement idle inhibit protocol 2023-08-26 20:19:22 +02:00
meta-wayland-inhibit-shortcuts-dialog.c
meta-wayland-inhibit-shortcuts-dialog.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
meta-wayland-inhibit-shortcuts.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-inhibit-shortcuts.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-input-device.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-input-device.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-keyboard.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-keyboard.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-legacy-xdg-foreign.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-legacy-xdg-foreign.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-outputs.c mutter: Completely replace MetaRectangle with MtkRectangle 2023-08-30 16:46:14 +02:00
meta-wayland-outputs.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-pointer-constraints.c mutter: Replace cairo_rectangle_int_t with MtkRectangle 2023-08-30 16:46:13 +02:00
meta-wayland-pointer-constraints.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-pointer-gesture-hold.c wayland: Use ClutterEvent getter methods 2023-08-08 04:11:13 +02:00
meta-wayland-pointer-gesture-hold.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
meta-wayland-pointer-gesture-pinch.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-pointer-gesture-pinch.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
meta-wayland-pointer-gesture-swipe.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-pointer-gesture-swipe.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
meta-wayland-pointer-gestures.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-pointer-gestures.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
meta-wayland-pointer.c wayland/pointer: Update cursor surface when current surface changes 2023-09-13 10:38:06 +00:00
meta-wayland-pointer.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
meta-wayland-popup.c wayland: Drop redundant MetaDisplay grab op 2023-01-30 10:56:29 +00:00
meta-wayland-popup.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
meta-wayland-presentation-time-private.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-presentation-time.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-private.h xwayland: Add EI portal support to the Xwayland manager 2023-10-09 07:36:52 +00:00
meta-wayland-region.c mutter: Replace cairo_rectangle_int_t with MtkRectangle 2023-08-30 16:46:13 +02:00
meta-wayland-region.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-seat.c wayland: Get device directly from clutter in get_grab_info() for touch case 2023-09-03 09:12:29 +00:00
meta-wayland-seat.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-shell-surface.c mutter: Completely replace MetaRectangle with MtkRectangle 2023-08-30 16:46:14 +02:00
meta-wayland-shell-surface.h mutter: Completely replace MetaRectangle with MtkRectangle 2023-08-30 16:46:14 +02:00
meta-wayland-single-pixel-buffer.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-single-pixel-buffer.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-subsurface.c mutter: Completely replace MetaRectangle with MtkRectangle 2023-08-30 16:46:14 +02:00
meta-wayland-subsurface.h mutter: Completely replace MetaRectangle with MtkRectangle 2023-08-30 16:46:14 +02:00
meta-wayland-surface.c wayland/surface: Account for geometry scale in scanout check 2023-09-28 16:37:44 +08:00
meta-wayland-surface.h wayland/surface: Drop undeclared function definition from header 2023-09-27 16:53:36 +02:00
meta-wayland-tablet-cursor-surface.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-tablet-cursor-surface.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-tablet-manager.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-tablet-manager.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
meta-wayland-tablet-pad-group.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-tablet-pad-group.h Remove unused meta_wayland_tablet_pad_group_lookup_resource 2023-08-12 19:53:46 +00:00
meta-wayland-tablet-pad-ring.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-tablet-pad-ring.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
meta-wayland-tablet-pad-strip.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-tablet-pad-strip.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
meta-wayland-tablet-pad.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-tablet-pad.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
meta-wayland-tablet-seat.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-tablet-seat.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
meta-wayland-tablet-tool.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-tablet-tool.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
meta-wayland-tablet.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-tablet.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
meta-wayland-text-input.c mutter: Replace cairo_rectangle_int_t with MtkRectangle 2023-08-30 16:46:13 +02:00
meta-wayland-text-input.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-touch.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-touch.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
meta-wayland-transaction.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-transaction.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-types.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-versions.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-viewporter.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-viewporter.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-window-configuration.c mutter: Completely replace MetaRectangle with MtkRectangle 2023-08-30 16:46:14 +02:00
meta-wayland-window-configuration.h mutter: Completely replace MetaRectangle with MtkRectangle 2023-08-30 16:46:14 +02:00
meta-wayland-x11-interop.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-x11-interop.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-xdg-foreign-private.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-xdg-foreign.c Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-xdg-foreign.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland-xdg-shell.c mutter: Completely replace MetaRectangle with MtkRectangle 2023-08-30 16:46:14 +02:00
meta-wayland-xdg-shell.h Update license access method 2023-08-30 08:48:23 +02:00
meta-wayland.c wayland: Add conditional Xwayland EI portal support 2023-10-09 07:36:52 +00:00
meta-wayland.h Update license access method 2023-08-30 08:48:23 +02:00
meta-window-wayland.c mutter: Completely replace MetaRectangle with MtkRectangle 2023-08-30 16:46:14 +02:00
meta-window-wayland.h mutter: Completely replace MetaRectangle with MtkRectangle 2023-08-30 16:46:14 +02:00
meta-window-xwayland.c mutter: Completely replace MetaRectangle with MtkRectangle 2023-08-30 16:46:14 +02:00
meta-window-xwayland.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
meta-xwayland-dnd-private.h Update license access method 2023-08-30 08:48:23 +02:00
meta-xwayland-dnd.c wayland: Change MetaWaylandDragDest::motion vmethod signature 2023-08-08 03:58:42 +02:00
meta-xwayland-grab-keyboard.c Update license access method 2023-08-30 08:48:23 +02:00
meta-xwayland-grab-keyboard.h Update license access method 2023-08-30 08:48:23 +02:00
meta-xwayland-private.h xwayland: Add EI portal support to the Xwayland manager 2023-10-09 07:36:52 +00:00
meta-xwayland-surface.c mutter: Completely replace MetaRectangle with MtkRectangle 2023-08-30 16:46:14 +02:00
meta-xwayland-surface.h Update license access method 2023-08-30 08:48:23 +02:00
meta-xwayland.c xwayland: Enable optional XDG EI portal support 2023-10-09 07:36:52 +00:00
meta-xwayland.h Update license access method 2023-08-30 08:48:23 +02:00