[gdk] Remove GdkWindowObject public structure
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=622677
This commit is contained in:
parent
df106318f8
commit
319d2bb4f1
@ -726,7 +726,6 @@ gdk_window_get_effective_toplevel
|
|||||||
<SUBSECTION Standard>
|
<SUBSECTION Standard>
|
||||||
GDK_WINDOW
|
GDK_WINDOW
|
||||||
GDK_WINDOW_GET_CLASS
|
GDK_WINDOW_GET_CLASS
|
||||||
GDK_WINDOW_OBJECT
|
|
||||||
GDK_TYPE_WINDOW
|
GDK_TYPE_WINDOW
|
||||||
GDK_IS_WINDOW
|
GDK_IS_WINDOW
|
||||||
GDK_WINDOW_CLASS
|
GDK_WINDOW_CLASS
|
||||||
|
@ -188,9 +188,10 @@ typedef void (* GdkDisplayPointerInfoForeach) (GdkDisplay *display,
|
|||||||
is public for historical reasons. Don't change that part */
|
is public for historical reasons. Don't change that part */
|
||||||
typedef struct _GdkWindowPaint GdkWindowPaint;
|
typedef struct _GdkWindowPaint GdkWindowPaint;
|
||||||
|
|
||||||
|
#define GDK_WINDOW_OBJECT(object) ((GdkWindowObject *) GDK_WINDOW (object))
|
||||||
|
|
||||||
struct _GdkWindowObject
|
struct _GdkWindowObject
|
||||||
{
|
{
|
||||||
/* vvvvvvv THIS PART IS PUBLIC. DON'T CHANGE vvvvvvvvvvvvvv */
|
|
||||||
GdkDrawable parent_instance;
|
GdkDrawable parent_instance;
|
||||||
|
|
||||||
GdkDrawable *impl; /* window-system-specific delegate object */
|
GdkDrawable *impl; /* window-system-specific delegate object */
|
||||||
@ -239,8 +240,6 @@ struct _GdkWindowObject
|
|||||||
|
|
||||||
GdkWindowRedirect *redirect;
|
GdkWindowRedirect *redirect;
|
||||||
|
|
||||||
/* ^^^^^^^^^^ THIS PART IS PUBLIC. DON'T CHANGE ^^^^^^^^^^ */
|
|
||||||
|
|
||||||
/* The GdkWindowObject that has the impl, ref:ed if another window.
|
/* The GdkWindowObject that has the impl, ref:ed if another window.
|
||||||
* This ref is required to keep the wrapper of the impl window alive
|
* This ref is required to keep the wrapper of the impl window alive
|
||||||
* for as long as any GdkWindow references the impl. */
|
* for as long as any GdkWindow references the impl. */
|
||||||
|
@ -491,68 +491,6 @@ typedef struct _GdkWindowObjectClass GdkWindowObjectClass;
|
|||||||
#define GDK_IS_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GDK_TYPE_WINDOW))
|
#define GDK_IS_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GDK_TYPE_WINDOW))
|
||||||
#define GDK_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GDK_TYPE_WINDOW, GdkWindowObjectClass))
|
#define GDK_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GDK_TYPE_WINDOW, GdkWindowObjectClass))
|
||||||
|
|
||||||
#ifndef GDK_DISABLE_DEPRECATED
|
|
||||||
#define GDK_WINDOW_OBJECT(object) ((GdkWindowObject *) GDK_WINDOW (object))
|
|
||||||
|
|
||||||
#ifndef GDK_COMPILATION
|
|
||||||
|
|
||||||
/* We used to export all of GdkWindowObject, but we don't want to keep doing so.
|
|
||||||
However, there are various parts of it accessed by macros and other code,
|
|
||||||
so we keep the old exported version public, but in reality it is larger. */
|
|
||||||
|
|
||||||
/**** DON'T CHANGE THIS STRUCT, the real version is in gdkinternals.h ****/
|
|
||||||
struct _GdkWindowObject
|
|
||||||
{
|
|
||||||
GdkDrawable parent_instance;
|
|
||||||
|
|
||||||
GdkDrawable *GSEAL (impl); /* window-system-specific delegate object */
|
|
||||||
|
|
||||||
GdkWindowObject *GSEAL (parent);
|
|
||||||
|
|
||||||
gpointer GSEAL (user_data);
|
|
||||||
|
|
||||||
gint GSEAL (x);
|
|
||||||
gint GSEAL (y);
|
|
||||||
|
|
||||||
gint GSEAL (extension_events);
|
|
||||||
|
|
||||||
GList *GSEAL (filters);
|
|
||||||
GList *GSEAL (children);
|
|
||||||
|
|
||||||
GdkColor GSEAL (bg_color);
|
|
||||||
GdkPixmap *GSEAL (bg_pixmap);
|
|
||||||
|
|
||||||
GSList *GSEAL (paint_stack);
|
|
||||||
|
|
||||||
cairo_region_t *GSEAL (update_area);
|
|
||||||
guint GSEAL (update_freeze_count);
|
|
||||||
|
|
||||||
guint8 GSEAL (window_type);
|
|
||||||
guint8 GSEAL (depth);
|
|
||||||
guint8 GSEAL (resize_count);
|
|
||||||
|
|
||||||
GdkWindowState GSEAL (state);
|
|
||||||
|
|
||||||
guint GSEAL (guffaw_gravity) : 1;
|
|
||||||
guint GSEAL (input_only) : 1;
|
|
||||||
guint GSEAL (modal_hint) : 1;
|
|
||||||
guint GSEAL (composited) : 1;
|
|
||||||
|
|
||||||
guint GSEAL (destroyed) : 2;
|
|
||||||
|
|
||||||
guint GSEAL (accept_focus) : 1;
|
|
||||||
guint GSEAL (focus_on_map) : 1;
|
|
||||||
guint GSEAL (shaped) : 1;
|
|
||||||
guint GSEAL (support_multidevice) : 1;
|
|
||||||
|
|
||||||
GdkEventMask GSEAL (event_mask);
|
|
||||||
|
|
||||||
guint GSEAL (update_and_descendants_freeze_count);
|
|
||||||
|
|
||||||
GdkWindowRedirect *GSEAL (redirect);
|
|
||||||
};
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
struct _GdkWindowObjectClass
|
struct _GdkWindowObjectClass
|
||||||
{
|
{
|
||||||
|
@ -18,10 +18,6 @@
|
|||||||
* Boston, MA 02111-1307, USA.
|
* Boston, MA 02111-1307, USA.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* need to get the prototypes of all get_type functions */
|
|
||||||
#undef GTK_DISABLE_DEPRECATED
|
|
||||||
/* Need to get GDK_WINDOW_OBJECT */
|
|
||||||
#undef GDK_DISABLE_DEPRECATED
|
|
||||||
|
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
|
|
||||||
@ -92,13 +88,13 @@ test_find_widget_input_windows (GtkWidget *widget,
|
|||||||
GSList *matches = NULL;
|
GSList *matches = NULL;
|
||||||
gpointer udata;
|
gpointer udata;
|
||||||
gdk_window_get_user_data (widget->window, &udata);
|
gdk_window_get_user_data (widget->window, &udata);
|
||||||
if (udata == widget && (!input_only || (GDK_IS_WINDOW (widget->window) && GDK_WINDOW_OBJECT (widget->window)->input_only)))
|
if (udata == widget && (!input_only || (GDK_IS_WINDOW (widget->window) && gdk_window_is_input_only (GDK_WINDOW (widget->window)))))
|
||||||
matches = g_slist_prepend (matches, widget->window);
|
matches = g_slist_prepend (matches, widget->window);
|
||||||
children = gdk_window_get_children (gtk_widget_get_parent_window (widget));
|
children = gdk_window_get_children (gtk_widget_get_parent_window (widget));
|
||||||
for (node = children; node; node = node->next)
|
for (node = children; node; node = node->next)
|
||||||
{
|
{
|
||||||
gdk_window_get_user_data (node->data, &udata);
|
gdk_window_get_user_data (node->data, &udata);
|
||||||
if (udata == widget && (!input_only || (GDK_IS_WINDOW (node->data) && GDK_WINDOW_OBJECT (node->data)->input_only)))
|
if (udata == widget && (!input_only || (GDK_IS_WINDOW (node->data) && gdk_window_is_input_only (GDK_WINDOW (node->data)))))
|
||||||
matches = g_slist_prepend (matches, node->data);
|
matches = g_slist_prepend (matches, node->data);
|
||||||
}
|
}
|
||||||
return g_slist_reverse (matches);
|
return g_slist_reverse (matches);
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
#undef GDK_DISABLE_DEPRECATED
|
|
||||||
#include <gtk/gtk.h>
|
#include <gtk/gtk.h>
|
||||||
#ifdef GDK_WINDOWING_X11
|
#ifdef GDK_WINDOWING_X11
|
||||||
#include <X11/Xlib.h>
|
#include <X11/Xlib.h>
|
||||||
@ -12,13 +11,6 @@ static void update_store (void);
|
|||||||
|
|
||||||
static GtkWidget *main_window;
|
static GtkWidget *main_window;
|
||||||
|
|
||||||
static gboolean
|
|
||||||
window_has_impl (GdkWindow *window)
|
|
||||||
{
|
|
||||||
GdkWindowObject *w;
|
|
||||||
w = (GdkWindowObject *)window;
|
|
||||||
return w->parent == NULL || w->parent->impl != w->impl;
|
|
||||||
}
|
|
||||||
|
|
||||||
GdkWindow *
|
GdkWindow *
|
||||||
create_window (GdkWindow *parent,
|
create_window (GdkWindow *parent,
|
||||||
@ -272,7 +264,7 @@ save_window (GString *s,
|
|||||||
g_string_append_printf (s, "%d,%d %dx%d (%d,%d,%d) %d %d\n",
|
g_string_append_printf (s, "%d,%d %dx%d (%d,%d,%d) %d %d\n",
|
||||||
x, y, w, h,
|
x, y, w, h,
|
||||||
color->red, color->green, color->blue,
|
color->red, color->green, color->blue,
|
||||||
window_has_impl (window),
|
gdk_window_has_native (window),
|
||||||
g_list_length (gdk_window_peek_children (window)));
|
g_list_length (gdk_window_peek_children (window)));
|
||||||
|
|
||||||
save_children (s, window);
|
save_children (s, window);
|
||||||
@ -749,6 +741,7 @@ render_window_cell (GtkTreeViewColumn *tree_column,
|
|||||||
GtkTreeIter *iter,
|
GtkTreeIter *iter,
|
||||||
gpointer data)
|
gpointer data)
|
||||||
{
|
{
|
||||||
|
GdkColor *color = NULL;
|
||||||
GdkWindow *window;
|
GdkWindow *window;
|
||||||
char *name;
|
char *name;
|
||||||
|
|
||||||
@ -757,14 +750,16 @@ render_window_cell (GtkTreeViewColumn *tree_column,
|
|||||||
0, &window,
|
0, &window,
|
||||||
-1);
|
-1);
|
||||||
|
|
||||||
if (window_has_impl (window))
|
if (gdk_window_has_native (window))
|
||||||
name = g_strdup_printf ("%p (native)", window);
|
name = g_strdup_printf ("%p (native)", window);
|
||||||
else
|
else
|
||||||
name = g_strdup_printf ("%p", window);
|
name = g_strdup_printf ("%p", window);
|
||||||
|
|
||||||
|
gdk_window_get_background (window, color);
|
||||||
g_object_set (cell,
|
g_object_set (cell,
|
||||||
"text", name,
|
"text", name,
|
||||||
"background-gdk", &((GdkWindowObject *)window)->bg_color,
|
"background-gdk", color,
|
||||||
NULL);
|
NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
Loading…
Reference in New Issue
Block a user