]> Pileus Git - ~andy/gtk/commitdiff
win32: Avoid type warning for offscreen windows in xp theme
authorMartin Schlemmer <11285613@nwu.ac.za>
Mon, 14 Jun 2010 18:47:57 +0000 (20:47 +0200)
committerAlexander Larsson <alexl@redhat.com>
Mon, 14 Jun 2010 18:57:22 +0000 (20:57 +0200)
See bug #598299

gdk/gdk.symbols
gdk/win32/gdkwin32.h
gdk/win32/gdkwindow-win32.c
modules/engines/ms-windows/xp_theme.c

index 5a36215f8a6afd6a34f3dedab33024a21d0664fa..d0f8f723853bfc7a930bddbec67909be3335a5c2 100644 (file)
@@ -1210,6 +1210,7 @@ gdk_window_destroy_notify
 #ifdef GDK_WINDOWING_WIN32
 #if IN_HEADER(__GDK_WIN32_H__)
 #if IN_FILE(__GDK_WINDOW_WIN32_C__)
+gdk_win32_window_is_win32
 gdk_win32_begin_direct_draw_libgtk_only
 gdk_win32_end_direct_draw_libgtk_only
 #endif
index 34fc537739434db6ff3ca16d8782f31212890a7c..5f769b0ae53614e7a1448d2edaacbc5d85f0f2cb 100644 (file)
@@ -73,6 +73,9 @@ G_BEGIN_DECLS
 #endif
 
 
+/* Return true if the GdkWindow is a win32 implemented window */
+gboolean      gdk_win32_window_is_win32 (GdkWindow *window);
+
 /* Return the Gdk* for a particular HANDLE */
 gpointer      gdk_win32_handle_table_lookup (GdkNativeWindow handle);
 
index 9161f6f6477c269c31f99dab0f6f5cf2efd85217..639d2fdccdf9455dfc0195018b5cb9da1c6769b4 100644 (file)
@@ -3378,6 +3378,12 @@ gdk_window_impl_iface_init (GdkWindowImplIface *iface)
   iface->destroy = _gdk_win32_window_destroy;
 }
 
+gboolean
+gdk_win32_window_is_win32 (GdkWindow *window)
+{
+  return GDK_WINDOW_IS_WIN32 (window);
+}
+
 GdkDrawable *
 gdk_win32_begin_direct_draw_libgtk_only (GdkDrawable *drawable,
                                         GdkGC *gc,
index d217295d44c44de80bd45bf578b950c5b42ba686..f86451570dcd95385f2b64338e0bd599db0bbcd0 100755 (executable)
@@ -909,7 +909,8 @@ xp_theme_draw (GdkWindow *win, XpThemeElement element, GtkStyle *style,
     return FALSE;
 
   /* FIXME: Recheck its function */
-  enable_theme_dialog_texture_func (GDK_WINDOW_HWND (win), ETDT_ENABLETAB);
+  if (GDK_IS_WINDOW (win) && gdk_win32_window_is_win32 (win))
+    enable_theme_dialog_texture_func (GDK_WINDOW_HWND (win), ETDT_ENABLETAB);
 
   dc = get_window_dc (style, win, state_type, &dc_info,
                      x, y, width, height,