summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorSigrid Solveig Haflínudóttir <sigrid@ftrv.se>2023-05-12 16:42:40 +0000
committerSigrid Solveig Haflínudóttir <sigrid@ftrv.se>2023-05-12 16:42:40 +0000
commitcc7a274d01780313eb7fe952329fa4d4b10d2c05 (patch)
treebc3dff66b3b6caaf2ef66ef50f0d18aa36b30493 /sys
parent970710ce92a363153637b0e176b66ac9cacfc929 (diff)
riow: add mod4+shift+q (delete current window)
Diffstat (limited to 'sys')
-rw-r--r--sys/man/1/riow3
-rw-r--r--sys/src/cmd/riow.c16
2 files changed, 19 insertions, 0 deletions
diff --git a/sys/man/1/riow b/sys/man/1/riow
index c0816ce8a..9fe5d36a6 100644
--- a/sys/man/1/riow
+++ b/sys/man/1/riow
@@ -66,6 +66,9 @@ option.
Spawn a new
.IR window (1).
.TP
+.B Kmod4+shift+q
+Delete the current window.
+.TP
.B Kmod4+h/j/k/l
Focus left/down/up/right.
.TP
diff --git a/sys/src/cmd/riow.c b/sys/src/cmd/riow.c
index 434b0d14d..384976556 100644
--- a/sys/src/cmd/riow.c
+++ b/sys/src/cmd/riow.c
@@ -261,6 +261,18 @@ arrowaction(int x, int y)
close(f);
}
+static void
+delete(void)
+{
+ int f;
+
+ wsupdate();
+ if(wcur == nil || (f = wwctl(wcur->id, OWRITE)) < 0)
+ return;
+ fprint(f, "delete");
+ close(f);
+}
+
static struct {
int x, y;
}cyclectx;
@@ -356,6 +368,10 @@ keyevent(char c, Rune r)
cycleaction(0, -1);
return 0;
}
+ if(r == 'Q' && mod == (Mmod4|Mshift)){
+ delete();
+ return 0;
+ }
if(r >= '0' && r <= '9' && (mod & Mctl) == 0){
vdaction(r - '0');
return 0;