commit eaa2d5f3821fc73cda58b49f6e83cd6ecee5b13b
parent 6d878a1b71a41b23c7fde6f45576ab02eb61d02f
Author: Anselm R. Garbe <garbeam@wmii.de>
Date: Wed, 12 Apr 2006 14:28:05 +0200
added /view/ctl for view-specific commands, fixed retag command of /ctl
Diffstat:
2 files changed, 18 insertions(+), 9 deletions(-)
diff --git a/cmd/wm/fs.c b/cmd/wm/fs.c
@@ -44,11 +44,14 @@ enum { WMII_IOUNIT = 2048 };
* /bar/lab/ FsDbar
* /bar/lab/data FsFdata <arbitrary data which gets displayed>
* /bar/lab/colors FsFcolors <#RRGGBB> <#RRGGBB> <#RRGGBB>
- * /client/ FsDclients
+ * /client/ FsDclients
* /client/1/ FsDGclient see /view/X/X/X/ namespace below
* /event FsFevent
* /ctl FsFctl command interface (root)
* /view/ FsDviews views
+ * /view/ctl FsFctl command interface (view)
+ * /view/sel/ FsDview
+ * /view/X/ FsDview
* /view/X/ctl FsFctl command interface (tag)
* /view/X/name FsFname current view name
* /view/X/sel/ FsDarea
@@ -760,7 +763,7 @@ xread(IXPConn *c, Fcall *fcall)
break;
case FsDviews:
/* jump to offset */
- len = 0;
+ len = type2stat(&stat, "ctl", &m->qid);
if(view.size)
len += type2stat(&stat, "sel", &m->qid);
for(i = 0; i < view.size; i++) {
@@ -896,8 +899,10 @@ xread(IXPConn *c, Fcall *fcall)
}
break;
case FsDviews:
+ fcall->count = type2stat(&stat, "ctl", &m->qid);
+ p = ixp_enc_stat(p, &stat);
if(view.size) {
- fcall->count = type2stat(&stat, "sel", &m->qid);
+ fcall->count += type2stat(&stat, "sel", &m->qid);
p = ixp_enc_stat(p, &stat);
}
for(i = 0; i < view.size; i++) {
@@ -1172,13 +1177,17 @@ xwrite(IXPConn *c, Fcall *fcall)
case FsDroot:
if(!strncmp(buf, "quit", 5))
srv.running = 0;
- else if(!strncmp(buf, "view ", 5))
- select_view(&buf[5]);
- else if(!strncmp(buf, "reapply_rules", 6))
+ else if(!strncmp(buf, "retag", 6))
reapply_rules();
else
return Enocommand;
break;
+ case FsDviews:
+ if(!strncmp(buf, "view ", 5))
+ select_view(&buf[5]);
+ else
+ return Enocommand;
+ break;
case FsDview:
if(!strncmp(buf, "select ", 7))
if(view.size)
diff --git a/rc/wmiirc b/rc/wmiirc
@@ -107,7 +107,7 @@ do
exit
fi;;
BarClick)
- xwrite /ctl view "$1";;
+ xwrite /view/ctl view "$1";;
Key)
case "$1" in
$MODKEY-$LEFT)
@@ -131,9 +131,9 @@ do
$MODKEY-p)
extern `wmiimenu </tmp/ns.$USER.$DISPLAY/progs` &;;
$MODKEY-t)
- xwrite /ctl view "`wmiir read /view | awk '{print $10}' | grep -v sel | wmiimenu`" &;;
+ xwrite /view/ctl view "`wmiir read /view | awk '{print $10}' | grep -v 'sel' | grep -v 'ctl' | wmiimenu`" &;;
$MODKEY-[0-9])
- xwrite /ctl view `echo $1 | sed 's/.*-//'`;;
+ xwrite /view/ctl view `echo $1 | sed 's/.*-//'`;;
$MODKEY-Return)
extern xterm &;;
$MODKEY-Shift-h)