From 3e274206342cd85bf36c0d7c63780c3ad55b39a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9s=20Cuervo?= Date: Fri, 1 Dec 2023 17:21:38 -0500 Subject: Handle repeating keys --- virtual-programs/keyboard.folk | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'virtual-programs') diff --git a/virtual-programs/keyboard.folk b/virtual-programs/keyboard.folk index c39f9c05..955624f6 100644 --- a/virtual-programs/keyboard.folk +++ b/virtual-programs/keyboard.folk @@ -99,8 +99,10 @@ foreach keyboard $keyboardDevices { set eventPathChannel [open $eventPath r] binary scan [read $eventPathChannel $evtBytes] $evtFormat tvSec tvUsec type code value } - if {$type == 0x01 && $value == 1} { - puts "got key event ($keyboardSpecifier): $code => [keyFromCode $code false] | $value" + if {$type == 0x01 && ($value == 1) || ($value == 2)} { + set key [keyFromCode $code 0] + # puts "shift: [string match *SHIFT $key] | $key" + puts "got key event ($keyboardSpecifier): $code => $key | $value" Retract keyboard $keyboardSpecifier claims key /k/ is /t/ Assert keyboard $keyboardSpecifier claims key [keyFromCode $code false] is [list $value] Step -- cgit v1.2.3