mirror of
https://github.com/brl/mutter.git
synced 2025-04-13 13:49:38 +00:00
wayland/xdg-shell: Port to unstable v6
Port the xdg_shell implementation to use the unstable v6 protocol. This includes: - making xdg_surface a generic base interface for xdg_shell surface roles - create a xdg_toplevel role replacing the old xdg_surface - change the xdg_opup role to be based on xdg_surface - make xdg_popup not grab by default - add support for xdg_positioner https://bugzilla.gnome.org/show_bug.cgi?id=769936
This commit is contained in:
parent
24c3844246
commit
ef3e036b45
@ -272,7 +272,7 @@ AS_IF([test "$have_wayland" = "yes"], [
|
|||||||
AC_SUBST([WAYLAND_SCANNER])
|
AC_SUBST([WAYLAND_SCANNER])
|
||||||
AC_DEFINE([HAVE_WAYLAND],[1],[Define if you want to enable Wayland support])
|
AC_DEFINE([HAVE_WAYLAND],[1],[Define if you want to enable Wayland support])
|
||||||
|
|
||||||
PKG_CHECK_MODULES(WAYLAND_PROTOCOLS, [wayland-protocols >= 1.6],
|
PKG_CHECK_MODULES(WAYLAND_PROTOCOLS, [wayland-protocols >= 1.7],
|
||||||
[ac_wayland_protocols_pkgdatadir=`$PKG_CONFIG --variable=pkgdatadir wayland-protocols`])
|
[ac_wayland_protocols_pkgdatadir=`$PKG_CONFIG --variable=pkgdatadir wayland-protocols`])
|
||||||
AC_SUBST(WAYLAND_PROTOCOLS_DATADIR, $ac_wayland_protocols_pkgdatadir)
|
AC_SUBST(WAYLAND_PROTOCOLS_DATADIR, $ac_wayland_protocols_pkgdatadir)
|
||||||
])
|
])
|
||||||
|
@ -61,8 +61,8 @@ mutter_built_sources += \
|
|||||||
gtk-shell-server-protocol.h \
|
gtk-shell-server-protocol.h \
|
||||||
gtk-primary-selection-protocol.c \
|
gtk-primary-selection-protocol.c \
|
||||||
gtk-primary-selection-server-protocol.h \
|
gtk-primary-selection-server-protocol.h \
|
||||||
xdg-shell-unstable-v5-protocol.c \
|
xdg-shell-unstable-v6-protocol.c \
|
||||||
xdg-shell-unstable-v5-server-protocol.h \
|
xdg-shell-unstable-v6-server-protocol.h \
|
||||||
relative-pointer-unstable-v1-protocol.c \
|
relative-pointer-unstable-v1-protocol.c \
|
||||||
relative-pointer-unstable-v1-server-protocol.h \
|
relative-pointer-unstable-v1-server-protocol.h \
|
||||||
pointer-constraints-unstable-v1-protocol.c \
|
pointer-constraints-unstable-v1-protocol.c \
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -23,16 +23,29 @@
|
|||||||
#include "wayland/meta-wayland-surface.h"
|
#include "wayland/meta-wayland-surface.h"
|
||||||
|
|
||||||
#define META_TYPE_WAYLAND_XDG_SURFACE (meta_wayland_xdg_surface_get_type ())
|
#define META_TYPE_WAYLAND_XDG_SURFACE (meta_wayland_xdg_surface_get_type ())
|
||||||
G_DECLARE_FINAL_TYPE (MetaWaylandXdgSurface,
|
G_DECLARE_DERIVABLE_TYPE (MetaWaylandXdgSurface,
|
||||||
meta_wayland_xdg_surface,
|
meta_wayland_xdg_surface,
|
||||||
META, WAYLAND_XDG_SURFACE,
|
META, WAYLAND_XDG_SURFACE,
|
||||||
MetaWaylandSurfaceRoleShellSurface);
|
MetaWaylandSurfaceRoleShellSurface);
|
||||||
|
|
||||||
|
struct _MetaWaylandXdgSurfaceClass
|
||||||
|
{
|
||||||
|
MetaWaylandSurfaceRoleShellSurfaceClass parent_class;
|
||||||
|
|
||||||
|
void (*shell_client_destroyed) (MetaWaylandXdgSurface *xdg_surface);
|
||||||
|
};
|
||||||
|
|
||||||
|
#define META_TYPE_WAYLAND_XDG_TOPLEVEL (meta_wayland_xdg_toplevel_get_type ())
|
||||||
|
G_DECLARE_FINAL_TYPE (MetaWaylandXdgToplevel,
|
||||||
|
meta_wayland_xdg_toplevel,
|
||||||
|
META, WAYLAND_XDG_TOPLEVEL,
|
||||||
|
MetaWaylandXdgSurface);
|
||||||
|
|
||||||
#define META_TYPE_WAYLAND_XDG_POPUP (meta_wayland_xdg_popup_get_type ())
|
#define META_TYPE_WAYLAND_XDG_POPUP (meta_wayland_xdg_popup_get_type ())
|
||||||
G_DECLARE_FINAL_TYPE (MetaWaylandXdgPopup,
|
G_DECLARE_FINAL_TYPE (MetaWaylandXdgPopup,
|
||||||
meta_wayland_xdg_popup,
|
meta_wayland_xdg_popup,
|
||||||
META, WAYLAND_XDG_POPUP,
|
META, WAYLAND_XDG_POPUP,
|
||||||
MetaWaylandSurfaceRoleShellSurface);
|
MetaWaylandXdgSurface);
|
||||||
|
|
||||||
void meta_wayland_xdg_shell_init (MetaWaylandCompositor *compositor);
|
void meta_wayland_xdg_shell_init (MetaWaylandCompositor *compositor);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user