shithub: riscv

Download patch

ref: d78dd0557c8f854322470a86815ea3e0b5f441a4
parent: 19b38409fc2f2fb9513cd50492b2a3c47a74a3d8
author: qwx <qwx@sciops.net>
date: Thu Aug 10 11:40:21 EDT 2023

riow: skip redundant k events with shifted keys

this fixes shift + number key switching workspaces but also letting
through the number key.  the key presses trigger both a c event and a
k event but only the c event was handled, passing through the key.

--- a/sys/src/cmd/riow.c
+++ b/sys/src/cmd/riow.c
@@ -377,6 +377,9 @@
 			return 0;
 		}
 	}
+	/* skip redundant event */
+	if(c == 'k' && (mod & Mshift) == 0)
+		return 0;
 	/* mod4 + shift + 1…0 yields a shifted value on 'c': workaround */
 	if(c == 'k' && mod == (Mmod4|Mshift) && r >= '0' && r <= '9'){
 		vdaction(r - '0');