forked from AuroraMiddleware/gtk
don't access widget->window if the widget is not realized.
2008-09-16 Michael Natterer <mitch@imendio.com> * gtk/gtkwidget.c (_gtk_widget_set,get_pointer_window): don't access widget->window if the widget is not realized. svn path=/trunk/; revision=21403
This commit is contained in:
parent
4eb4b152fe
commit
eca33d60be
@ -1,3 +1,8 @@
|
|||||||
|
2008-09-16 Michael Natterer <mitch@imendio.com>
|
||||||
|
|
||||||
|
* gtk/gtkwidget.c (_gtk_widget_set,get_pointer_window): don't
|
||||||
|
access widget->window if the widget is not realized.
|
||||||
|
|
||||||
2008-09-16 Matthias Clasen <mclasen@redhat.com>
|
2008-09-16 Matthias Clasen <mclasen@redhat.com>
|
||||||
|
|
||||||
Bug 551987 – GtkPaned redrawing problem
|
Bug 551987 – GtkPaned redrawing problem
|
||||||
|
@ -8059,20 +8059,23 @@ _gtk_widget_peek_colormap (void)
|
|||||||
* _gtk_widget_set_pointer_window:
|
* _gtk_widget_set_pointer_window:
|
||||||
* @widget: a #GtkWidget.
|
* @widget: a #GtkWidget.
|
||||||
* @pointer_window: the new pointer window.
|
* @pointer_window: the new pointer window.
|
||||||
*
|
*
|
||||||
* Sets pointer window for @widget. Does not ref @pointer_window.
|
* Sets pointer window for @widget. Does not ref @pointer_window.
|
||||||
* Actually stores it on the #GdkScreen, but you don't need to know that.
|
* Actually stores it on the #GdkScreen, but you don't need to know that.
|
||||||
**/
|
**/
|
||||||
void
|
void
|
||||||
_gtk_widget_set_pointer_window (GtkWidget *widget,
|
_gtk_widget_set_pointer_window (GtkWidget *widget,
|
||||||
GdkWindow *pointer_window)
|
GdkWindow *pointer_window)
|
||||||
{
|
{
|
||||||
GdkScreen *screen;
|
|
||||||
|
|
||||||
g_return_if_fail (GTK_IS_WIDGET (widget));
|
g_return_if_fail (GTK_IS_WIDGET (widget));
|
||||||
|
|
||||||
screen = gdk_drawable_get_screen (GDK_DRAWABLE (widget->window));
|
if (GTK_WIDGET_REALIZED (widget))
|
||||||
g_object_set_qdata (G_OBJECT (screen), quark_pointer_window, pointer_window);
|
{
|
||||||
|
GdkScreen *screen = gdk_drawable_get_screen (widget->window);
|
||||||
|
|
||||||
|
g_object_set_qdata (G_OBJECT (screen), quark_pointer_window,
|
||||||
|
pointer_window);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -8083,14 +8086,18 @@ _gtk_widget_set_pointer_window (GtkWidget *widget,
|
|||||||
* to, or %NULL.
|
* to, or %NULL.
|
||||||
**/
|
**/
|
||||||
GdkWindow *
|
GdkWindow *
|
||||||
_gtk_widget_get_pointer_window (GtkWidget *widget)
|
_gtk_widget_get_pointer_window (GtkWidget *widget)
|
||||||
{
|
{
|
||||||
GdkScreen *screen;
|
|
||||||
|
|
||||||
g_return_val_if_fail (GTK_IS_WIDGET (widget), NULL);
|
g_return_val_if_fail (GTK_IS_WIDGET (widget), NULL);
|
||||||
|
|
||||||
screen = gdk_drawable_get_screen (GDK_DRAWABLE (widget->window));
|
if (GTK_WIDGET_REALIZED (widget))
|
||||||
return g_object_get_qdata (G_OBJECT (screen), quark_pointer_window);
|
{
|
||||||
|
GdkScreen *screen = gdk_drawable_get_screen (widget->window);
|
||||||
|
|
||||||
|
return g_object_get_qdata (G_OBJECT (screen), quark_pointer_window);
|
||||||
|
}
|
||||||
|
|
||||||
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
Loading…
Reference in New Issue
Block a user