dwm

my fork of dwm
Index Commits Files Refs README LICENSE
commit 0937cc78bf5d8855dcd757b18e10c7dd49e7a1ab
parent f6e41b0bc3a00a2c48a996e2da4ad84be9a719f7
Author: Anselm R. Garbe <garbeam@gmail.com>
Date:   Sun, 12 Aug 2007 13:10:21 +0200

moved floating to layout.c, kept tile.c outside
Diffstat:
Mconfig.arg.h | 1-
Mconfig.default.h | 1-
Mconfig.mk | 4++--
Mdwm.h | 2++
Dfloat.c | 41-----------------------------------------
Dfloat.h | 5-----
Mlayout.c | 37+++++++++++++++++++++++++++++++++++++
7 files changed, 41 insertions(+), 50 deletions(-)
diff --git a/config.arg.h b/config.arg.h
@@ -25,7 +25,6 @@ static Rule rule[] = { \
 
 /* layout(s) */
 #include "tile.h"
-#include "float.h"
 #define LAYOUTS \
 static Layout layout[] = { \
     /* symbol        function */ \
diff --git a/config.default.h b/config.default.h
@@ -26,7 +26,6 @@ static Rule rule[] = { \
 
 /* layout(s) */
 #include "tile.h"
-#include "float.h"
 #define LAYOUTS \
 static Layout layout[] = { \
     /* symbol        function */ \
diff --git a/config.mk b/config.mk
@@ -3,8 +3,8 @@ VERSION = 4.4
 
 # Customize below to fit your system
 
-# layouts
-SRC = float.c tile.c
+# additional layouts beside floating
+SRC = tile.c
 
 # paths
 PREFIX = /usr/local
diff --git a/dwm.h b/dwm.h
@@ -120,12 +120,14 @@ unsigned int textw(const char *text);	/* return the width of text in px*/
 void grabkeys(void);            /* grab all keys defined in config.h */
 
 /* layout.c */
+void floating(void);            /* arranges all windows floating, fallback layout  */
 void focusclient(const char *arg);    /* focuses next(1)/previous(-1) visible client */
 void initlayouts(void);            /* initialize layout array */
 Client *nexttiled(Client *c);        /* returns tiled successor of c */
 void restack(void);            /* restores z layers of all clients */
 void setlayout(const char *arg);    /* sets layout, NULL means next layout */
 void togglebar(const char *arg);    /* shows/hides the bar */
+void togglemax(const char *arg);    /* toggles maximization of floating client */
 
 /* main.c */
 void updatebarpos(void);        /* updates the bar position */
diff --git a/float.c b/float.c
@@ -1,41 +0,0 @@
-/* See LICENSE file for copyright and license details. */
-#include "dwm.h"
-
-/* extern */
-
-void
-floating(void) {
-    Client *c;
-
-    if(lt->arrange != floating)
-        return;
-
-    for(c = clients; c; c = c->next)
-        if(isvisible(c)) {
-            unban(c);
-            resize(c, c->x, c->y, c->w, c->h, True);
-        }
-        else
-            ban(c);
-    focus(NULL);
-    restack();
-}
-
-void
-togglemax(const char *arg) {
-    XEvent ev;
-
-    if(!sel || (lt->arrange != floating && !sel->isfloating) || sel->isfixed)
-        return;
-    if((sel->ismax = !sel->ismax)) {
-        sel->rx = sel->x;
-        sel->ry = sel->y;
-        sel->rw = sel->w;
-        sel->rh = sel->h;
-        resize(sel, wax, way, waw - 2 * sel->border, wah - 2 * sel->border, True);
-    }
-    else
-        resize(sel, sel->rx, sel->ry, sel->rw, sel->rh, True);
-    drawstatus();
-    while(XCheckMaskEvent(dpy, EnterWindowMask, &ev));
-}
diff --git a/float.h b/float.h
@@ -1,5 +0,0 @@
-/* See LICENSE file for copyright and license details. */
-
-/* float.c */
-void floating(void);            /* arranges all windows floating */
-void togglemax(const char *arg);    /* toggles maximization of floating client */
diff --git a/layout.c b/layout.c
@@ -14,6 +14,24 @@ LAYOUTS
 /* extern */
 
 void
+floating(void) {
+    Client *c;
+
+    if(lt->arrange != floating)
+        return;
+
+    for(c = clients; c; c = c->next)
+        if(isvisible(c)) {
+            unban(c);
+            resize(c, c->x, c->y, c->w, c->h, True);
+        }
+        else
+            ban(c);
+    focus(NULL);
+    restack();
+}
+
+void
 focusclient(const char *arg) {
     Client *c;
    
@@ -115,3 +133,22 @@ togglebar(const char *arg) {
     updatebarpos();
     lt->arrange();
 }
+
+void
+togglemax(const char *arg) {
+    XEvent ev;
+
+    if(!sel || (lt->arrange != floating && !sel->isfloating) || sel->isfixed)
+        return;
+    if((sel->ismax = !sel->ismax)) {
+        sel->rx = sel->x;
+        sel->ry = sel->y;
+        sel->rw = sel->w;
+        sel->rh = sel->h;
+        resize(sel, wax, way, waw - 2 * sel->border, wah - 2 * sel->border, True);
+    }
+    else
+        resize(sel, sel->rx, sel->ry, sel->rw, sel->rh, True);
+    drawstatus();
+    while(XCheckMaskEvent(dpy, EnterWindowMask, &ev));
+}