From dae756313a3e65e32a9b07b51749b6c251891abf Mon Sep 17 00:00:00 2001
From: Olivier Fourdan <fourdan.olivier@wanadoo.fr>
Date: Thu, 22 Dec 2005 21:26:22 +0000
Subject: [PATCH] Display workspace number only when cycling through workspaces
 is enabled

(Old svn revision: 19124)
---
 src/client.c |  4 +++-
 src/tabwin.c | 14 +++++++++++---
 src/tabwin.h |  3 ++-
 3 files changed, 16 insertions(+), 5 deletions(-)

diff --git a/src/client.c b/src/client.c
index 725d00b7c..da7eb3396 100644
--- a/src/client.c
+++ b/src/client.c
@@ -4131,7 +4131,9 @@ clientCycle (Client * c, XEvent * ev)
         TRACE ("entering cycle loop");
         passdata.wireframe = wireframeCreate (passdata.c);
         icon = getAppIcon (display_info, passdata.c->window, 32, 32);
-        passdata.tabwin = tabwinCreate (passdata.c->screen_info->gscr, c, passdata.cycle_range);
+        passdata.tabwin = tabwinCreate (passdata.c->screen_info->gscr, c, 
+                                        passdata.cycle_range, 
+                                        screen_info->params->cycle_workspaces);
         xfce_push_event_filter (display_info->xfilter, clientCycle_event_filter, &passdata);
         gtk_main ();
         xfce_pop_event_filter (display_info->xfilter);
diff --git a/src/tabwin.c b/src/tabwin.c
index 63405e64e..313340358 100644
--- a/src/tabwin.c
+++ b/src/tabwin.c
@@ -111,8 +111,15 @@ tabwinSetLabel (Tabwin * t, gchar * class, gchar * label, int workspace)
 
     gtk_label_set_markup (GTK_LABEL (t->class), markup);
     g_free (markup);
-
-    message = g_strdup_printf ("[%i] - %s", workspace + 1, label);
+    
+    if (t->display_workspace)
+    {
+        message = g_strdup_printf ("[%i] - %s", workspace + 1, label);
+    }
+    else
+    {
+        message = g_strdup_printf ("%s", label);
+    }
     gtk_label_set_text (GTK_LABEL (t->label), message);
     g_free (message);
 }
@@ -215,7 +222,7 @@ createWindowlist (GdkScreen * scr, Client * c, unsigned int cycle_range, Tabwin
 }
 
 Tabwin *
-tabwinCreate (GdkScreen * scr, Client * c, unsigned int cycle_range)
+tabwinCreate (GdkScreen * scr, Client * c, unsigned int cycle_range, gboolean display_workspace)
 {
     Tabwin *tabwin;
     GtkWidget *frame;
@@ -228,6 +235,7 @@ tabwinCreate (GdkScreen * scr, Client * c, unsigned int cycle_range)
 
     tabwin->window = gtk_window_new (GTK_WINDOW_POPUP);
     
+    tabwin->display_workspace = display_workspace;
     gtk_window_set_screen (GTK_WINDOW (tabwin->window), scr);
     gtk_widget_realize (GTK_WIDGET (tabwin->window));
     gtk_container_set_border_width (GTK_CONTAINER (tabwin->window), 0);
diff --git a/src/tabwin.h b/src/tabwin.h
index ebbde6474..e48c9a552 100644
--- a/src/tabwin.h
+++ b/src/tabwin.h
@@ -42,12 +42,13 @@ struct _Tabwin
     GtkWidget *container;
     GList *current;
     gulong selected_callback;
+    gboolean display_workspace;
 
     int grid_cols;
     int grid_rows;
 };
 
-Tabwin *tabwinCreate (GdkScreen *, Client *, unsigned int);
+Tabwin *tabwinCreate (GdkScreen *, Client *, unsigned int, gboolean);
 Client *tabwinGetSelected (Tabwin *);
 Client *tabwinSelectNext (Tabwin *);
 Client *tabwinSelectPrev (Tabwin *);
-- 
GitLab