[Xfce4-commits] r23134 - libxfcegui4/trunk/libxfcegui4

Olivier Fourdan olivier at xfce.org
Tue Sep 12 20:54:06 UTC 2006


Author: olivier
Date: 2006-09-12 20:54:05 +0000 (Tue, 12 Sep 2006)
New Revision: 23134

Modified:
   libxfcegui4/trunk/libxfcegui4/netk-window.c
Log:
Avoid sending spurious icon geometry updates (Nick Schermer <nick at xfce.org>, bug #2306)

Modified: libxfcegui4/trunk/libxfcegui4/netk-window.c
===================================================================
--- libxfcegui4/trunk/libxfcegui4/netk-window.c	2006-09-12 16:44:34 UTC (rev 23133)
+++ libxfcegui4/trunk/libxfcegui4/netk-window.c	2006-09-12 20:54:05 UTC (rev 23134)
@@ -71,6 +71,7 @@
     NetkClassGroup *class_group;
     Window group_leader;
     Window transient_for;
+    GdkRectangle icon_geometry;
     char *name;
     char *icon_name;
     char *session_id;
@@ -222,6 +223,8 @@
     window->priv->icon_name = NULL;
     window->priv->client_machine = NULL;
     window->priv->workspace = ALL_WORKSPACES;
+    
+    window->priv->icon_geometry.width = -1;
 
     window->priv->icon_cache = p_netk_icon_cache_new ();
 }
@@ -1294,6 +1297,17 @@
 netk_window_set_icon_geometry (NetkWindow * window, int x, int y, int width,
                                int height)
 {
+    if ((window->priv->icon_geometry.x == x)  &&
+        (window->priv->icon_geometry.y == y) &&
+        (window->priv->icon_geometry.width == width) &&
+        (window->priv->icon_geometry.height == height))
+            return;
+
+    window->priv->icon_geometry.x = x;
+    window->priv->icon_geometry.y = y;
+    window->priv->icon_geometry.width = width;
+    window->priv->icon_geometry.height = height;
+
     p_netk_set_icon_geometry (window->priv->xwindow, x, y, width, height);
 }
 



More information about the Xfce4-commits mailing list