pidgin/plugins/win32/winprefs/gtkappbar.c

changeset 35896
bfee243ed8b1
parent 31294
73607ab89c6f
child 40079
a37a1e349491
--- a/pidgin/plugins/win32/winprefs/gtkappbar.c	Thu Apr 24 14:28:06 2014 +0200
+++ b/pidgin/plugins/win32/winprefs/gtkappbar.c	Thu Apr 24 16:12:06 2014 +0200
@@ -43,6 +43,12 @@
 
 static void gtk_appbar_do_dock(GtkAppBar *ab, UINT side);
 
+static inline HWND
+appbar_get_handle(GtkAppBar *ab)
+{
+	return GDK_WINDOW_HWND(gtk_widget_get_window(ab->win));
+}
+
 /* Retrieve the rectangular display area from the specified monitor
  * Return TRUE if successful, otherwise FALSE
  */
@@ -358,7 +364,7 @@
 
 	if (hide) {
 		purple_debug_info("gtkappbar", "hidden\n");
-		gtk_appbar_unregister(ab, GDK_WINDOW_HWND(ab->win->window));
+		gtk_appbar_unregister(ab, appbar_get_handle(ab));
 		ab->docked = TRUE;
 		ab->iconized = TRUE;
 	} else {
@@ -457,7 +463,7 @@
         if(msg->wParam == SIZE_MINIMIZED) {
                 purple_debug(PURPLE_DEBUG_INFO, "gtkappbar", "Minimize\n");
                 if(ab->docked) {
-                        gtk_appbar_unregister(ab, GDK_WINDOW_HWND(ab->win->window));
+			gtk_appbar_unregister(ab, appbar_get_handle(ab));
                         ab->docked = TRUE;
                 }
         }
@@ -600,21 +606,21 @@
 
         purple_debug(PURPLE_DEBUG_INFO, "gtkappbar", "gtk_appbar_do_dock\n");
 
-        if(!ab || !IsWindow(GDK_WINDOW_HWND(ab->win->window)))
-                return;
+	if (!ab || !IsWindow(appbar_get_handle(ab)))
+		return;
 
         ab->side = side;
-        get_window_normal_rc(GDK_WINDOW_HWND(ab->win->window), &(ab->docked_rect));
+	get_window_normal_rc(appbar_get_handle(ab), &(ab->docked_rect));
         CopyRect(&orig, &(ab->docked_rect));
-	get_rect_of_window(GDK_WINDOW_HWND(ab->win->window), &windowRect);
-	gtk_appbar_querypos(ab, GDK_WINDOW_HWND(ab->win->window), windowRect);
+	get_rect_of_window(appbar_get_handle(ab), &windowRect);
+	gtk_appbar_querypos(ab, appbar_get_handle(ab), windowRect);
         if(EqualRect(&orig, &(ab->docked_rect)) == 0)
-                MoveWindow(GDK_WINDOW_HWND(ab->win->window),
+		MoveWindow(appbar_get_handle(ab),
                            ab->docked_rect.left,
                            ab->docked_rect.top,
                            ab->docked_rect.right - ab->docked_rect.left,
                            ab->docked_rect.bottom - ab->docked_rect.top, TRUE);
-        gtk_appbar_setpos(ab, GDK_WINDOW_HWND(ab->win->window));
+	gtk_appbar_setpos(ab, appbar_get_handle(ab));
         ab->docked = TRUE;
 }
 
@@ -623,7 +629,7 @@
 
 	g_return_if_fail(ab != NULL);
 
-	hwnd = GDK_WINDOW_HWND(ab->win->window);
+	hwnd = appbar_get_handle(ab);
 
 	g_return_if_fail(IsWindow(hwnd));
 
@@ -654,10 +660,10 @@
         ab->win = win;
 
         /* init docking coords */
-        get_window_normal_rc(GDK_WINDOW_HWND(win->window), &(ab->docked_rect));
+	get_window_normal_rc(appbar_get_handle(ab), &(ab->docked_rect));
 
         /* Add main window filter */
-	gdk_window_add_filter(win->window,
+	gdk_window_add_filter(gtk_widget_get_window(win),
                               gtk_appbar_event_filter,
                               ab);
         return ab;
@@ -670,8 +676,8 @@
         if(!ab)
                 return;
 
-	hwnd = GDK_WINDOW_HWND(ab->win->window);
-        gdk_window_remove_filter(ab->win->window,
+	hwnd = appbar_get_handle(ab);
+	gdk_window_remove_filter(gtk_widget_get_window(ab->win),
                                  gtk_appbar_event_filter,
                                  ab);
         if(ab->docked) {

mercurial