diff options
author | Matthias Clasen <mclasen@redhat.com> | 2022-11-15 14:52:49 -0500 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2023-01-06 13:47:34 -0500 |
commit | 348acde6bd95c92a1dafc98a0b45c452a853244d (patch) | |
tree | 1ac918e72d8e795842411dfb3ed29983b2bb3f65 /gdk/wayland | |
parent | 5ba793842bc9d3deb4093afd56561f8d1e02fc82 (diff) | |
download | gtk+-348acde6bd95c92a1dafc98a0b45c452a853244d.tar.gz |
wayland: Split public headers
Split gdkwaylandsurface.h into itself,
gdkwaylandtoplevel.h and gdkwaylandpopup.h.
This is in preparation for splitting the
types for real.
Diffstat (limited to 'gdk/wayland')
-rw-r--r-- | gdk/wayland/gdksurface-wayland.h | 2 | ||||
-rw-r--r-- | gdk/wayland/gdkwayland.h | 4 | ||||
-rw-r--r-- | gdk/wayland/gdkwaylandpopup.h | 44 | ||||
-rw-r--r-- | gdk/wayland/gdkwaylandsurface.h | 39 | ||||
-rw-r--r-- | gdk/wayland/gdkwaylandtoplevel.h | 66 | ||||
-rw-r--r-- | gdk/wayland/meson.build | 2 |
6 files changed, 117 insertions, 40 deletions
diff --git a/gdk/wayland/gdksurface-wayland.h b/gdk/wayland/gdksurface-wayland.h index cb4c63b049..67ed926afd 100644 --- a/gdk/wayland/gdksurface-wayland.h +++ b/gdk/wayland/gdksurface-wayland.h @@ -21,6 +21,8 @@ #pragma once #include "gdkwaylandsurface.h" +#include "gdkwaylandtoplevel.h" +#include "gdkwaylandpopup.h" G_BEGIN_DECLS diff --git a/gdk/wayland/gdkwayland.h b/gdk/wayland/gdkwayland.h index 4e7981a229..e48d6946e5 100644 --- a/gdk/wayland/gdkwayland.h +++ b/gdk/wayland/gdkwayland.h @@ -31,10 +31,12 @@ #include <gdk/wayland/gdkwaylanddevice.h> #include <gdk/wayland/gdkwaylanddisplay.h> +#include <gdk/wayland/gdkwaylandglcontext.h> #include <gdk/wayland/gdkwaylandmonitor.h> +#include <gdk/wayland/gdkwaylandpopup.h> #include <gdk/wayland/gdkwaylandseat.h> #include <gdk/wayland/gdkwaylandsurface.h> -#include <gdk/wayland/gdkwaylandglcontext.h> +#include <gdk/wayland/gdkwaylandtoplevel.h> #undef __GDKWAYLAND_H_INSIDE__ diff --git a/gdk/wayland/gdkwaylandpopup.h b/gdk/wayland/gdkwaylandpopup.h new file mode 100644 index 0000000000..6eba06792b --- /dev/null +++ b/gdk/wayland/gdkwaylandpopup.h @@ -0,0 +1,44 @@ +/* GDK - The GIMP Drawing Kit + * Copyright (C) 2013 Jan Arne Petersen + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see <http://www.gnu.org/licenses/>. + */ + +#pragma once + +#if !defined (__GDKWAYLAND_H_INSIDE__) && !defined (GTK_COMPILATION) +#error "Only <gdk/wayland/gdkwayland.h> can be included directly." +#endif + +#include <gdk/gdk.h> +#include <gdk/wayland/gdkwaylandsurface.h> + +#include <wayland-client.h> + +G_BEGIN_DECLS + +#ifdef GTK_COMPILATION +typedef struct _GdkWaylandPopup GdkWaylandPopup; +#else +typedef GdkPopup GdkWaylandPopup; +#endif + +#define GDK_TYPE_WAYLAND_POPUP (gdk_wayland_popup_get_type()) +#define GDK_WAYLAND_POPUP(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_WAYLAND_POPUP, GdkWaylandPopup)) +#define GDK_IS_WAYLAND_POPUP(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_WAYLAND_POPUP)) + +GDK_AVAILABLE_IN_ALL +GType gdk_wayland_popup_get_type (void); + +G_END_DECLS diff --git a/gdk/wayland/gdkwaylandsurface.h b/gdk/wayland/gdkwaylandsurface.h index 851a4d5607..7d9e0897b2 100644 --- a/gdk/wayland/gdkwaylandsurface.h +++ b/gdk/wayland/gdkwaylandsurface.h @@ -30,59 +30,20 @@ G_BEGIN_DECLS #ifdef GTK_COMPILATION typedef struct _GdkWaylandSurface GdkWaylandSurface; -typedef struct _GdkWaylandToplevel GdkWaylandToplevel; -typedef struct _GdkWaylandPopup GdkWaylandPopup; #else typedef GdkSurface GdkWaylandSurface; -typedef GdkToplevel GdkWaylandToplevel; -typedef GdkPopup GdkWaylandPopup; #endif #define GDK_TYPE_WAYLAND_SURFACE (gdk_wayland_surface_get_type()) #define GDK_WAYLAND_SURFACE(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_WAYLAND_SURFACE, GdkWaylandSurface)) #define GDK_IS_WAYLAND_SURFACE(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_WAYLAND_SURFACE)) -#define GDK_TYPE_WAYLAND_TOPLEVEL (gdk_wayland_toplevel_get_type()) -#define GDK_WAYLAND_TOPLEVEL(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_WAYLAND_TOPLEVEL, GdkWaylandToplevel)) -#define GDK_IS_WAYLAND_TOPLEVEL(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_WAYLAND_TOPLEVEL)) - -#define GDK_TYPE_WAYLAND_POPUP (gdk_wayland_popup_get_type()) -#define GDK_WAYLAND_POPUP(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_WAYLAND_POPUP, GdkWaylandPopup)) -#define GDK_IS_WAYLAND_POPUP(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_WAYLAND_POPUP)) - GDK_AVAILABLE_IN_ALL GType gdk_wayland_surface_get_type (void); GDK_AVAILABLE_IN_ALL -GType gdk_wayland_toplevel_get_type (void); - -GDK_AVAILABLE_IN_ALL -GType gdk_wayland_popup_get_type (void); - -GDK_AVAILABLE_IN_ALL struct wl_surface *gdk_wayland_surface_get_wl_surface (GdkSurface *surface); -typedef void (*GdkWaylandToplevelExported) (GdkToplevel *toplevel, - const char *handle, - gpointer user_data); - -GDK_AVAILABLE_IN_ALL -gboolean gdk_wayland_toplevel_export_handle (GdkToplevel *toplevel, - GdkWaylandToplevelExported callback, - gpointer user_data, - GDestroyNotify destroy_func); - -GDK_AVAILABLE_IN_ALL -void gdk_wayland_toplevel_unexport_handle (GdkToplevel *toplevel); - -GDK_AVAILABLE_IN_ALL -gboolean gdk_wayland_toplevel_set_transient_for_exported (GdkToplevel *toplevel, - const char *parent_handle_str); - -GDK_AVAILABLE_IN_ALL -void gdk_wayland_toplevel_set_application_id (GdkToplevel *toplevel, - const char *application_id); - G_END_DECLS #endif /* __GDK_WAYLAND_SURFACE_H__ */ diff --git a/gdk/wayland/gdkwaylandtoplevel.h b/gdk/wayland/gdkwaylandtoplevel.h new file mode 100644 index 0000000000..36410b3054 --- /dev/null +++ b/gdk/wayland/gdkwaylandtoplevel.h @@ -0,0 +1,66 @@ +/* GDK - The GIMP Drawing Kit + * Copyright (C) 2013 Jan Arne Petersen + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see <http://www.gnu.org/licenses/>. + */ + +#pragma once + +#if !defined (__GDKWAYLAND_H_INSIDE__) && !defined (GTK_COMPILATION) +#error "Only <gdk/wayland/gdkwayland.h> can be included directly." +#endif + +#include <gdk/gdk.h> +#include <gdk/wayland/gdkwaylandsurface.h> + +#include <wayland-client.h> + +G_BEGIN_DECLS + +#ifdef GTK_COMPILATION +typedef struct _GdkWaylandToplevel GdkWaylandToplevel; +#else +typedef GdkToplevel GdkWaylandToplevel; +#endif + +#define GDK_TYPE_WAYLAND_TOPLEVEL (gdk_wayland_toplevel_get_type()) +#define GDK_WAYLAND_TOPLEVEL(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_WAYLAND_TOPLEVEL, GdkWaylandToplevel)) +#define GDK_IS_WAYLAND_TOPLEVEL(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_WAYLAND_TOPLEVEL)) + +GDK_AVAILABLE_IN_ALL +GType gdk_wayland_toplevel_get_type (void); + + +typedef void (*GdkWaylandToplevelExported) (GdkToplevel *toplevel, + const char *handle, + gpointer user_data); + +GDK_AVAILABLE_IN_ALL +gboolean gdk_wayland_toplevel_export_handle (GdkToplevel *toplevel, + GdkWaylandToplevelExported callback, + gpointer user_data, + GDestroyNotify destroy_func); + +GDK_AVAILABLE_IN_ALL +void gdk_wayland_toplevel_unexport_handle (GdkToplevel *toplevel); + +GDK_AVAILABLE_IN_ALL +gboolean gdk_wayland_toplevel_set_transient_for_exported (GdkToplevel *toplevel, + const char *parent_handle_str); + +GDK_AVAILABLE_IN_ALL +void gdk_wayland_toplevel_set_application_id (GdkToplevel *toplevel, + const char *application_id); + +G_END_DECLS diff --git a/gdk/wayland/meson.build b/gdk/wayland/meson.build index 294e30ea20..f63f149230 100644 --- a/gdk/wayland/meson.build +++ b/gdk/wayland/meson.build @@ -25,8 +25,10 @@ gdk_wayland_public_headers = files([ 'gdkwaylanddisplay.h', 'gdkwaylandglcontext.h', 'gdkwaylandmonitor.h', + 'gdkwaylandpopup.h', 'gdkwaylandseat.h', 'gdkwaylandsurface.h', + 'gdkwaylandtoplevel.h', ]) install_headers(gdk_wayland_public_headers, 'gdkwayland.h', subdir: 'gtk-4.0/gdk/wayland/') |