From 51b2759eb1909bc2888c509119f71880e020da50 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Sat, 20 Apr 2019 01:38:12 +0000 Subject: [PATCH] surface: Drop group api This was only ever implemented on X11, and GTK is not using it at all. Relegate it to x11-specific api. --- docs/reference/gdk/gdk4-sections.txt | 2 - gdk/broadway/gdksurface-broadway.c | 18 --------- gdk/gdksurface.c | 37 ------------------- gdk/gdksurface.h | 5 --- gdk/gdksurfaceimpl.h | 3 -- gdk/quartz/gdksurface-quartz.c | 23 ------------ gdk/wayland/gdksurface-wayland.c | 14 ------- gdk/win32/gdksurface-win32.c | 28 -------------- gdk/x11/gdkdrag-x11.c | 4 +- gdk/x11/gdksurface-x11.c | 8 ++-- gdk/x11/gdkx11surface.h | 7 ++++ .../messagedialog-secondarytext.ref.ui | 1 - .../reftests/messagedialog-secondarytext.ui | 1 - 13 files changed, 12 insertions(+), 139 deletions(-) diff --git a/docs/reference/gdk/gdk4-sections.txt b/docs/reference/gdk/gdk4-sections.txt index 41ec4d7e50..04b77ad3b4 100644 --- a/docs/reference/gdk/gdk4-sections.txt +++ b/docs/reference/gdk/gdk4-sections.txt @@ -277,8 +277,6 @@ gdk_surface_peek_children gdk_surface_set_icon_name gdk_surface_set_transient_for gdk_surface_set_startup_id -gdk_surface_set_group -gdk_surface_get_group gdk_surface_set_decorations gdk_surface_get_decorations GdkWMDecoration diff --git a/gdk/broadway/gdksurface-broadway.c b/gdk/broadway/gdksurface-broadway.c index a76b641a40..06b862c143 100644 --- a/gdk/broadway/gdksurface-broadway.c +++ b/gdk/broadway/gdksurface-broadway.c @@ -782,22 +782,6 @@ gdk_broadway_surface_set_keep_below (GdkSurface *surface, gboolean setting) } -static GdkSurface * -gdk_broadway_surface_get_group (GdkSurface *surface) -{ - if (GDK_SURFACE_DESTROYED (surface) || - !SURFACE_IS_TOPLEVEL (surface)) - return NULL; - - return surface; -} - -static void -gdk_broadway_surface_set_group (GdkSurface *surface, - GdkSurface *leader) -{ -} - static void gdk_broadway_surface_set_decorations (GdkSurface *surface, GdkWMDecoration decorations) @@ -1357,8 +1341,6 @@ gdk_surface_impl_broadway_class_init (GdkSurfaceImplBroadwayClass *klass) impl_class->unfullscreen = gdk_broadway_surface_unfullscreen; impl_class->set_keep_above = gdk_broadway_surface_set_keep_above; impl_class->set_keep_below = gdk_broadway_surface_set_keep_below; - impl_class->get_group = gdk_broadway_surface_get_group; - impl_class->set_group = gdk_broadway_surface_set_group; impl_class->set_decorations = gdk_broadway_surface_set_decorations; impl_class->get_decorations = gdk_broadway_surface_get_decorations; impl_class->set_functions = gdk_broadway_surface_set_functions; diff --git a/gdk/gdksurface.c b/gdk/gdksurface.c index f42b7c2715..552d5e8bae 100644 --- a/gdk/gdksurface.c +++ b/gdk/gdksurface.c @@ -4628,43 +4628,6 @@ gdk_surface_set_keep_below (GdkSurface *surface, GDK_SURFACE_IMPL_GET_CLASS (surface->impl)->set_keep_below (surface, setting); } -/** - * gdk_surface_get_group: - * @surface: a toplevel #GdkSurface - * - * Returns the group leader surface for @surface. See gdk_surface_set_group(). - * - * Returns: (transfer none): the group leader surface for @surface - **/ -GdkSurface * -gdk_surface_get_group (GdkSurface *surface) -{ - return GDK_SURFACE_IMPL_GET_CLASS (surface->impl)->get_group (surface); -} - -/** - * gdk_surface_set_group: - * @surface: a toplevel #GdkSurface - * @leader: (allow-none): group leader surface, or %NULL to restore the default group leader surface - * - * Sets the group leader surface for @surface. By default, - * GDK sets the group leader for all toplevel surfaces - * to a global surface implicitly created by GDK. With this function - * you can override this default. - * - * The group leader surface allows the window manager to distinguish - * all surfaces that belong to a single application. It may for example - * allow users to minimize/unminimize all surfaces belonging to an - * application at once. You should only set a non-default group surface - * if your application pretends to be multiple applications. - **/ -void -gdk_surface_set_group (GdkSurface *surface, - GdkSurface *leader) -{ - GDK_SURFACE_IMPL_GET_CLASS (surface->impl)->set_group (surface, leader); -} - /** * gdk_surface_set_decorations: * @surface: a toplevel #GdkSurface diff --git a/gdk/gdksurface.h b/gdk/gdksurface.h index 3b79cdc901..88722782db 100644 --- a/gdk/gdksurface.h +++ b/gdk/gdksurface.h @@ -653,11 +653,6 @@ GDK_AVAILABLE_IN_ALL void gdk_surface_set_icon_name (GdkSurface *surface, const gchar *name); GDK_AVAILABLE_IN_ALL -void gdk_surface_set_group (GdkSurface *surface, - GdkSurface *leader); -GDK_AVAILABLE_IN_ALL -GdkSurface* gdk_surface_get_group (GdkSurface *surface); -GDK_AVAILABLE_IN_ALL void gdk_surface_set_decorations (GdkSurface *surface, GdkWMDecoration decorations); GDK_AVAILABLE_IN_ALL diff --git a/gdk/gdksurfaceimpl.h b/gdk/gdksurfaceimpl.h index 077ae45860..c5bd90ae7c 100644 --- a/gdk/gdksurfaceimpl.h +++ b/gdk/gdksurfaceimpl.h @@ -159,9 +159,6 @@ struct _GdkSurfaceImplClass gboolean setting); void (* set_keep_below) (GdkSurface *surface, gboolean setting); - GdkSurface * (* get_group) (GdkSurface *surface); - void (* set_group) (GdkSurface *surface, - GdkSurface *leader); void (* set_decorations) (GdkSurface *surface, GdkWMDecoration decorations); gboolean (* get_decorations) (GdkSurface *surface, diff --git a/gdk/quartz/gdksurface-quartz.c b/gdk/quartz/gdksurface-quartz.c index 14c07b0168..1a8e865e08 100644 --- a/gdk/quartz/gdksurface-quartz.c +++ b/gdk/quartz/gdksurface-quartz.c @@ -2584,27 +2584,6 @@ gdk_quartz_surface_set_keep_below (GdkSurface *window, [impl->toplevel setLevel: level - (setting ? 1 : 0)]; } -static GdkSurface * -gdk_quartz_surface_get_group (GdkSurface *window) -{ - g_return_val_if_fail (GDK_SURFACE_TYPE (window) != GDK_SURFACE_CHILD, NULL); - - if (GDK_SURFACE_DESTROYED (window) || - !SURFACE_IS_TOPLEVEL (window)) - return NULL; - - /* FIXME: Implement */ - - return NULL; -} - -static void -gdk_quartz_surface_set_group (GdkSurface *window, - GdkSurface *leader) -{ - /* FIXME: Implement */ -} - static void gdk_quartz_surface_destroy_notify (GdkSurface *window) { @@ -2724,8 +2703,6 @@ gdk_surface_impl_quartz_class_init (GdkSurfaceImplQuartzClass *klass) impl_class->unfullscreen = gdk_quartz_surface_unfullscreen; impl_class->set_keep_above = gdk_quartz_surface_set_keep_above; impl_class->set_keep_below = gdk_quartz_surface_set_keep_below; - impl_class->get_group = gdk_quartz_surface_get_group; - impl_class->set_group = gdk_quartz_surface_set_group; impl_class->set_decorations = gdk_quartz_surface_set_decorations; impl_class->get_decorations = gdk_quartz_surface_get_decorations; impl_class->set_functions = gdk_quartz_surface_set_functions; diff --git a/gdk/wayland/gdksurface-wayland.c b/gdk/wayland/gdksurface-wayland.c index 9b8bc8108e..89ae48c72d 100644 --- a/gdk/wayland/gdksurface-wayland.c +++ b/gdk/wayland/gdksurface-wayland.c @@ -3499,18 +3499,6 @@ gdk_wayland_surface_set_keep_below (GdkSurface *surface, { } -static GdkSurface * -gdk_wayland_surface_get_group (GdkSurface *surface) -{ - return NULL; -} - -static void -gdk_wayland_surface_set_group (GdkSurface *surface, - GdkSurface *leader) -{ -} - static void gdk_wayland_surface_set_decorations (GdkSurface *surface, GdkWMDecoration decorations) @@ -3848,8 +3836,6 @@ _gdk_surface_impl_wayland_class_init (GdkSurfaceImplWaylandClass *klass) impl_class->unfullscreen = gdk_wayland_surface_unfullscreen; impl_class->set_keep_above = gdk_wayland_surface_set_keep_above; impl_class->set_keep_below = gdk_wayland_surface_set_keep_below; - impl_class->get_group = gdk_wayland_surface_get_group; - impl_class->set_group = gdk_wayland_surface_set_group; impl_class->set_decorations = gdk_wayland_surface_set_decorations; impl_class->get_decorations = gdk_wayland_surface_get_decorations; impl_class->set_functions = gdk_wayland_surface_set_functions; diff --git a/gdk/win32/gdksurface-win32.c b/gdk/win32/gdksurface-win32.c index bc8b82470d..d5daa7cf99 100644 --- a/gdk/win32/gdksurface-win32.c +++ b/gdk/win32/gdksurface-win32.c @@ -2066,32 +2066,6 @@ gdk_win32_surface_set_icon_name (GdkSurface *window, #endif } -static GdkSurface * -gdk_win32_surface_get_group (GdkSurface *window) -{ - g_return_val_if_fail (GDK_IS_SURFACE (window), NULL); - - if (GDK_SURFACE_DESTROYED (window)) - return NULL; - - g_warning ("gdk_surface_get_group not yet implemented"); - - return NULL; -} - -static void -gdk_win32_surface_set_group (GdkSurface *window, - GdkSurface *leader) -{ - g_return_if_fail (GDK_IS_SURFACE (window)); - g_return_if_fail (leader == NULL || GDK_IS_SURFACE (leader)); - - if (GDK_SURFACE_DESTROYED (window) || GDK_SURFACE_DESTROYED (leader)) - return; - - g_warning ("gdk_surface_set_group not implemented"); -} - static void update_single_bit (LONG *style, gboolean all, @@ -5268,8 +5242,6 @@ gdk_surface_impl_win32_class_init (GdkSurfaceImplWin32Class *klass) impl_class->unfullscreen = gdk_win32_surface_unfullscreen; impl_class->set_keep_above = gdk_win32_surface_set_keep_above; impl_class->set_keep_below = gdk_win32_surface_set_keep_below; - impl_class->get_group = gdk_win32_surface_get_group; - impl_class->set_group = gdk_win32_surface_set_group; impl_class->set_decorations = gdk_win32_surface_set_decorations; impl_class->get_decorations = gdk_win32_surface_get_decorations; impl_class->set_functions = gdk_win32_surface_set_functions; diff --git a/gdk/x11/gdkdrag-x11.c b/gdk/x11/gdkdrag-x11.c index 2a7e705c23..43779168ff 100644 --- a/gdk/x11/gdkdrag-x11.c +++ b/gdk/x11/gdkdrag-x11.c @@ -2110,8 +2110,8 @@ _gdk_x11_surface_drag_begin (GdkSurface *surface, x11_drag->protocol = GDK_DRAG_PROTO_XDND; x11_drag->actions = actions; x11_drag->ipc_surface = ipc_surface; - if (gdk_surface_get_group (surface)) - gdk_surface_set_group (x11_drag->ipc_surface, surface); + if (gdk_x11_surface_get_group (surface)) + gdk_x11_surface_set_group (x11_drag->ipc_surface, surface); gdk_surface_show (x11_drag->ipc_surface); x11_drag->drag_surface = create_drag_surface (display); diff --git a/gdk/x11/gdksurface-x11.c b/gdk/x11/gdksurface-x11.c index aa5eb9b5a4..e605710010 100644 --- a/gdk/x11/gdksurface-x11.c +++ b/gdk/x11/gdksurface-x11.c @@ -3363,7 +3363,7 @@ gdk_x11_surface_set_keep_below (GdkSurface *surface, gboolean setting) setting ? GDK_SURFACE_STATE_BELOW : 0); } -static GdkSurface * +GdkSurface * gdk_x11_surface_get_group (GdkSurface *surface) { GdkToplevelX11 *toplevel; @@ -3377,9 +3377,9 @@ gdk_x11_surface_get_group (GdkSurface *surface) return toplevel->group_leader; } -static void +void gdk_x11_surface_set_group (GdkSurface *surface, - GdkSurface *leader) + GdkSurface *leader) { GdkToplevelX11 *toplevel; @@ -4679,8 +4679,6 @@ gdk_surface_impl_x11_class_init (GdkSurfaceImplX11Class *klass) impl_class->unfullscreen = gdk_x11_surface_unfullscreen; impl_class->set_keep_above = gdk_x11_surface_set_keep_above; impl_class->set_keep_below = gdk_x11_surface_set_keep_below; - impl_class->get_group = gdk_x11_surface_get_group; - impl_class->set_group = gdk_x11_surface_set_group; impl_class->set_decorations = gdk_x11_surface_set_decorations; impl_class->get_decorations = gdk_x11_surface_get_decorations; impl_class->set_functions = gdk_x11_surface_set_functions; diff --git a/gdk/x11/gdkx11surface.h b/gdk/x11/gdkx11surface.h index fcd6a8006d..844a2de9cd 100644 --- a/gdk/x11/gdkx11surface.h +++ b/gdk/x11/gdkx11surface.h @@ -115,6 +115,13 @@ GDK_AVAILABLE_IN_ALL void gdk_x11_surface_set_urgency_hint (GdkSurface *surface, gboolean urgent); +GDK_AVAILABLE_IN_ALL +void gdk_x11_surface_set_group (GdkSurface *surface, + GdkSurface *leader); +GDK_AVAILABLE_IN_ALL +GdkSurface * gdk_x11_surface_get_group (GdkSurface *surface); + + G_END_DECLS #endif /* __GDK_X11_SURFACE_H__ */ diff --git a/testsuite/reftests/messagedialog-secondarytext.ref.ui b/testsuite/reftests/messagedialog-secondarytext.ref.ui index 5856b837fe..584ad22b19 100644 --- a/testsuite/reftests/messagedialog-secondarytext.ref.ui +++ b/testsuite/reftests/messagedialog-secondarytext.ref.ui @@ -3,7 +3,6 @@ popup dialog - 1 ok Text Secondary text #5 diff --git a/testsuite/reftests/messagedialog-secondarytext.ui b/testsuite/reftests/messagedialog-secondarytext.ui index f25df31515..8f97175665 100644 --- a/testsuite/reftests/messagedialog-secondarytext.ui +++ b/testsuite/reftests/messagedialog-secondarytext.ui @@ -3,7 +3,6 @@ popup dialog - 1 ok Text Secondary text #1