From 8034f29c5c1c6115d1f001d6641362e522015d58 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan <fourdan.olivier@wanadoo.fr>
Date: Sat, 23 Oct 2004 13:14:27 +0000
Subject: [PATCH] Turn on wrap_layout by default Code cleanup

(Old svn revision: 12094)
---
 defaults/defaults |  2 +-
 src/client.c      | 10 +++-------
 src/workspaces.c  | 11 ++++++-----
 3 files changed, 10 insertions(+), 13 deletions(-)

diff --git a/defaults/defaults b/defaults/defaults
index 99e06fc10..b4777714a 100644
--- a/defaults/defaults
+++ b/defaults/defaults
@@ -35,6 +35,6 @@ workspace_count=4
 wrap_resistance=10
 wrap_windows=true
 wrap_workspaces=false
-wrap_layout=false
+wrap_layout=true
 wrap_cycle=true
 scroll_workspaces=true
diff --git a/src/client.c b/src/client.c
index 059f4b6d2..cce862e52 100644
--- a/src/client.c
+++ b/src/client.c
@@ -2132,10 +2132,8 @@ clientToggleShowDesktop (ScreenInfo *screen_info, gboolean show_desktop)
                 && FLAG_TEST (c->xfwm_flags, XFWM_FLAG_HAS_BORDER)
                 && !FLAG_TEST (c->flags, CLIENT_FLAG_ICONIFIED))
             {
-                {
-                    FLAG_SET (c->xfwm_flags, XFWM_FLAG_WAS_SHOWN);
-                    clientHide (c, c->win_workspace, TRUE);
-                }
+                FLAG_SET (c->xfwm_flags, XFWM_FLAG_WAS_SHOWN);
+                clientHide (c, c->win_workspace, TRUE);
             }
         }
         clientFocusTop (screen_info, WIN_LAYER_DESKTOP);
@@ -2147,9 +2145,7 @@ clientToggleShowDesktop (ScreenInfo *screen_info, gboolean show_desktop)
             Client *c = (Client *) index->data;
             if (FLAG_TEST (c->xfwm_flags, XFWM_FLAG_WAS_SHOWN))
             {
-                {
-                    clientShow (c, TRUE);
-                }
+                clientShow (c, TRUE);
             }
             FLAG_UNSET (c->xfwm_flags, XFWM_FLAG_WAS_SHOWN);
         }
diff --git a/src/workspaces.c b/src/workspaces.c
index ec8ba79b5..9ca2bed7e 100644
--- a/src/workspaces.c
+++ b/src/workspaces.c
@@ -170,7 +170,7 @@ modify_with_wrap (int value, int by, int limit, gboolean wrap)
 gboolean
 workspaceMove (ScreenInfo *screen_info, int rowmod, int colmod, Client * c2)
 {
-    int row, col, newrow, newcol, n;
+    int row, col, newrow, newcol, previous_ws, n;
 
     workspaceGetPosition(screen_info, screen_info->current_ws, &row, &col);
     newrow = modify_with_wrap(row, rowmod, screen_info->desktop_layout.rows, screen_info->params->wrap_layout);
@@ -182,7 +182,8 @@ workspaceMove (ScreenInfo *screen_info, int rowmod, int colmod, Client * c2)
         return FALSE;
     }
 
-    if (n < screen_info->workspace_count)
+    previous_ws = screen_info->current_ws;
+    if ((n >= 0) && (n < screen_info->workspace_count))
     {
         workspaceSwitch(screen_info, n, c2);
     }
@@ -208,15 +209,15 @@ workspaceMove (ScreenInfo *screen_info, int rowmod, int colmod, Client * c2)
             }
             else 
             {
-                g_return_val_if_fail(FALSE, FALSE);
+                return FALSE;
             }
 
             n = workspaceGetNumber(screen_info, newrow, newcol);
         }
-        g_return_val_if_fail(n < screen_info->workspace_count, FALSE);
         workspaceSwitch(screen_info, n, c2);
     }
-    return TRUE;
+
+    return (screen_info->current_ws != previous_ws);
 }
 
 void
-- 
GitLab