Xinqi Bao's Git
projects
/
dwm.git
/ blobdiff
summary
|
log
|
commit
|
diff
|
tree
raw
|
inline
| side by side
small bugfix
[dwm.git]
/
layout.c
diff --git
a/layout.c
b/layout.c
index
5a7d4b4
..
5d43187
100644
(file)
--- a/
layout.c
+++ b/
layout.c
@@
-2,6
+2,7
@@
* See LICENSE file for license details.
*/
#include "dwm.h"
* See LICENSE file for license details.
*/
#include "dwm.h"
+#include <stdlib.h>
unsigned int blw = 0;
Layout *lt = NULL;
unsigned int blw = 0;
Layout *lt = NULL;
@@
-69,7
+70,7
@@
LAYOUTS
/* extern */
void
/* extern */
void
-focusnext(
Arg
arg) {
+focusnext(
const char *
arg) {
Client *c;
if(!sel)
Client *c;
if(!sel)
@@
-84,7
+85,7
@@
focusnext(Arg arg) {
}
void
}
void
-focusprev(
Arg
arg) {
+focusprev(
const char *
arg) {
Client *c;
if(!sel)
Client *c;
if(!sel)
@@
-101,26
+102,35
@@
focusprev(Arg arg) {
}
void
}
void
-incmasterw(Arg arg) {
+incmasterw(const char *arg) {
+ int i;
if(lt->arrange != tile)
return;
if(lt->arrange != tile)
return;
- if(
arg.i == 0
)
+ if(
!arg
)
masterw = MASTERWIDTH;
else {
masterw = MASTERWIDTH;
else {
- if(waw * (masterw + arg.i) / 1000 >= waw - 2 * BORDERPX
- || waw * (masterw + arg.i) / 1000 <= 2 * BORDERPX)
+ i = atoi(arg);
+ if(waw * (masterw + i) / 1000 >= waw - 2 * BORDERPX
+ || waw * (masterw + i) / 1000 <= 2 * BORDERPX)
return;
return;
- masterw +=
arg.
i;
+ masterw += i;
}
lt->arrange();
}
void
}
lt->arrange();
}
void
-incnmaster(Arg arg) {
- if((lt->arrange != tile) || (nmaster + arg.i < 1)
- || (wah / (nmaster + arg.i) <= 2 * BORDERPX))
- return;
- nmaster += arg.i;
+incnmaster(const char *arg) {
+ int i;
+
+ if(!arg)
+ nmaster = NMASTER;
+ else {
+ i = atoi(arg);
+ if((lt->arrange != tile) || (nmaster + i < 1)
+ || (wah / (nmaster + i) <= 2 * BORDERPX))
+ return;
+ nmaster += i;
+ }
if(sel)
lt->arrange();
else
if(sel)
lt->arrange();
else
@@
-170,10
+180,10
@@
restack(void) {
}
void
}
void
-setlayout(
Arg
arg) {
-
unsigned
int i;
+setlayout(
const char *
arg) {
+ int i;
- if(
arg.i == -1
) {
+ if(
!arg
) {
for(i = 0; i < nlayouts && lt != &layout[i]; i++);
if(i == nlayouts - 1)
lt = &layout[0];
for(i = 0; i < nlayouts && lt != &layout[i]; i++);
if(i == nlayouts - 1)
lt = &layout[0];
@@
-181,9
+191,10
@@
setlayout(Arg arg) {
lt = &layout[++i];
}
else {
lt = &layout[++i];
}
else {
- if(arg.i < 0 || arg.i >= nlayouts)
+ i = atoi(arg);
+ if(i < 0 || i >= nlayouts)
return;
return;
- lt = &layout[
arg.
i];
+ lt = &layout[i];
}
if(sel)
lt->arrange();
}
if(sel)
lt->arrange();
@@
-192,7
+203,7
@@
setlayout(Arg arg) {
}
void
}
void
-togglemax(
Arg
arg) {
+togglemax(
const char *
arg) {
XEvent ev;
if(!sel || (lt->arrange != versatile && !sel->isversatile) || sel->isfixed)
XEvent ev;
if(!sel || (lt->arrange != versatile && !sel->isversatile) || sel->isfixed)
@@
-234,7
+245,7
@@
versatile(void) {
}
void
}
void
-zoom(
Arg
arg) {
+zoom(
const char *
arg) {
unsigned int n;
Client *c;
unsigned int n;
Client *c;