gtk+ r21403 - in trunk: . gtk
- From: mitch svn gnome org
- To: svn-commits-list gnome org
- Subject: gtk+ r21403 - in trunk: . gtk
- Date: Tue, 16 Sep 2008 17:47:30 +0000 (UTC)
Author: mitch
Date: Tue Sep 16 17:47:30 2008
New Revision: 21403
URL: http://svn.gnome.org/viewvc/gtk+?rev=21403&view=rev
Log:
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.
Modified:
trunk/ChangeLog
trunk/gtk/gtkwidget.c
Modified: trunk/gtk/gtkwidget.c
==============================================================================
--- trunk/gtk/gtkwidget.c (original)
+++ trunk/gtk/gtkwidget.c Tue Sep 16 17:47:30 2008
@@ -8059,20 +8059,23 @@
* _gtk_widget_set_pointer_window:
* @widget: a #GtkWidget.
* @pointer_window: the new 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.
**/
void
-_gtk_widget_set_pointer_window (GtkWidget *widget,
- GdkWindow *pointer_window)
+_gtk_widget_set_pointer_window (GtkWidget *widget,
+ GdkWindow *pointer_window)
{
- GdkScreen *screen;
-
g_return_if_fail (GTK_IS_WIDGET (widget));
- screen = gdk_drawable_get_screen (GDK_DRAWABLE (widget->window));
- g_object_set_qdata (G_OBJECT (screen), quark_pointer_window, pointer_window);
+ if (GTK_WIDGET_REALIZED (widget))
+ {
+ GdkScreen *screen = gdk_drawable_get_screen (widget->window);
+
+ g_object_set_qdata (G_OBJECT (screen), quark_pointer_window,
+ pointer_window);
+ }
}
/**
@@ -8083,14 +8086,18 @@
* to, or %NULL.
**/
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);
- screen = gdk_drawable_get_screen (GDK_DRAWABLE (widget->window));
- return g_object_get_qdata (G_OBJECT (screen), quark_pointer_window);
+ if (GTK_WIDGET_REALIZED (widget))
+ {
+ GdkScreen *screen = gdk_drawable_get_screen (widget->window);
+
+ return g_object_get_qdata (G_OBJECT (screen), quark_pointer_window);
+ }
+
+ return NULL;
}
static void
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]