2010-11-12 12:18:58 +00:00
|
|
|
/* GDK - The GIMP Drawing Kit
|
|
|
|
* Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
|
|
|
|
*
|
|
|
|
* 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
|
2012-02-27 13:01:10 +00:00
|
|
|
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
|
2010-11-12 12:18:58 +00:00
|
|
|
*/
|
|
|
|
|
|
|
|
/*
|
|
|
|
* Modified by the GTK+ Team and others 1997-2000. See the AUTHORS
|
|
|
|
* file for a list of people on the GTK+ Team. See the ChangeLog
|
|
|
|
* files for a list of changes. These files are distributed with
|
|
|
|
* GTK+ at ftp://ftp.gtk.org/pub/gtk/.
|
|
|
|
*/
|
|
|
|
|
2023-03-31 19:11:10 +00:00
|
|
|
#pragma once
|
2010-11-12 12:18:58 +00:00
|
|
|
|
2019-04-22 01:14:46 +00:00
|
|
|
#include <gdk/gdksurfaceprivate.h>
|
|
|
|
#include "gdkbroadwaysurface.h"
|
2010-11-12 12:18:58 +00:00
|
|
|
|
|
|
|
G_BEGIN_DECLS
|
|
|
|
|
2018-03-21 08:17:50 +00:00
|
|
|
/* Surface implementation for Broadway
|
2010-11-12 12:18:58 +00:00
|
|
|
*/
|
|
|
|
|
2023-04-21 03:41:48 +00:00
|
|
|
GType gdk_broadway_toplevel_get_type (void) G_GNUC_CONST;
|
|
|
|
GType gdk_broadway_popup_get_type (void) G_GNUC_CONST;
|
|
|
|
GType gdk_broadway_drag_surface_get_type (void) G_GNUC_CONST;
|
|
|
|
|
|
|
|
#define GDK_TYPE_BROADWAY_TOPLEVEL (gdk_broadway_toplevel_get_type ())
|
|
|
|
#define GDK_TYPE_BROADWAY_POPUP (gdk_broadway_popup_get_type ())
|
|
|
|
#define GDK_TYPE_BROADWAY_DRAG_SURFACE (gdk_broadway_drag_surface_get_type ())
|
|
|
|
|
2019-04-22 01:14:46 +00:00
|
|
|
struct _GdkBroadwaySurface
|
2010-11-12 12:18:58 +00:00
|
|
|
{
|
2019-04-22 01:14:46 +00:00
|
|
|
GdkSurface parent_instance;
|
2010-12-04 21:28:31 +00:00
|
|
|
|
2010-11-12 12:18:58 +00:00
|
|
|
GdkCursor *cursor;
|
|
|
|
|
2010-12-04 21:28:31 +00:00
|
|
|
int id;
|
|
|
|
|
2011-04-11 09:56:22 +00:00
|
|
|
gboolean visible;
|
2015-06-26 11:49:23 +00:00
|
|
|
gboolean maximized;
|
2011-04-05 10:02:46 +00:00
|
|
|
int transient_for;
|
|
|
|
|
2015-06-26 11:49:23 +00:00
|
|
|
int pre_maximize_x;
|
|
|
|
int pre_maximize_y;
|
|
|
|
int pre_maximize_width;
|
|
|
|
int pre_maximize_height;
|
|
|
|
|
2019-03-29 11:31:42 +00:00
|
|
|
gint64 pending_frame_counter;
|
|
|
|
|
2010-11-15 20:51:32 +00:00
|
|
|
gboolean dirty;
|
2010-11-16 12:09:37 +00:00
|
|
|
gboolean last_synced;
|
2022-01-31 00:30:32 +00:00
|
|
|
gboolean modal_hint;
|
2013-03-28 19:03:13 +00:00
|
|
|
|
|
|
|
GdkGeometry geometry_hints;
|
2018-03-20 10:40:08 +00:00
|
|
|
GdkSurfaceHints geometry_hints_mask;
|
2017-11-21 18:33:12 +00:00
|
|
|
|
|
|
|
GArray *node_data;
|
|
|
|
GPtrArray *node_data_textures;
|
2019-04-22 20:27:08 +00:00
|
|
|
|
2020-03-13 13:33:07 +00:00
|
|
|
int root_x;
|
|
|
|
int root_y;
|
2020-12-02 13:58:45 +00:00
|
|
|
|
|
|
|
int shadow_left;
|
|
|
|
int shadow_right;
|
|
|
|
int shadow_top;
|
|
|
|
int shadow_bottom;
|
2010-11-12 12:18:58 +00:00
|
|
|
};
|
|
|
|
|
2019-04-22 01:14:46 +00:00
|
|
|
struct _GdkBroadwaySurfaceClass
|
2010-11-12 12:18:58 +00:00
|
|
|
{
|
2019-04-22 01:14:46 +00:00
|
|
|
GdkSurfaceClass parent_class;
|
2010-11-12 12:18:58 +00:00
|
|
|
};
|
|
|
|
|
2019-04-22 01:14:46 +00:00
|
|
|
GType gdk_surface_broadway_get_type (void);
|
2010-11-12 12:18:58 +00:00
|
|
|
|
|
|
|
G_END_DECLS
|
|
|
|
|