]> Dogcows Code - chaz/openbox/commitdiff
watch for windows with titlecounts changing their title and getting an incorrect...
authorDana Jansens <danakj@orodu.net>
Mon, 8 Sep 2003 17:51:54 +0000 (17:51 +0000)
committerDana Jansens <danakj@orodu.net>
Mon, 8 Sep 2003 17:51:54 +0000 (17:51 +0000)
openbox/client.c

index c5934dedbe6159d6d053247dd10e246cd30582ea..fe23f05df94f017af187122ac5a4da59b6f254f2 100644 (file)
@@ -1308,10 +1308,11 @@ void client_update_title(ObClient *self)
     GList *it;
     guint32 nums;
     guint i;
-    char *data = NULL;
+    gchar *data = NULL;
     gboolean read_title;
+    gchar *old_title;
 
-    g_free(self->title);
+    old_title = self->title;
      
     /* try netwm */
     if (!PROP_GETS(self->window, net_wm_name, utf8, &data))
@@ -1319,6 +1320,10 @@ void client_update_title(ObClient *self)
        if (!PROP_GETS(self->window, wm_name, locale, &data))
            data = g_strdup("Unnamed Window");
 
+    /* did the title change? then reset the title_count */
+    if (old_title && 0 != strncmp(old_title, data, strlen(data)))
+        self->title_count = 1;
+
     /* look for duplicates and append a number */
     nums = 0;
     for (it = client_list; it; it = it->next)
@@ -1349,6 +1354,8 @@ void client_update_title(ObClient *self)
     if (self->frame)
        frame_adjust_title(self->frame);
 
+    g_free(old_title);
+
     /* update the icon title */
     data = NULL;
     g_free(self->icon_title);
This page took 0.026804 seconds and 4 git commands to generate.