X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=sys%2Fsrc%2Fcmd%2Faux%2Fkbdfs%2Fkbdfs.c;h=3d64e1564cfc79dfde1fc6b1464a1bc5c4062292;hb=fad1b3f7f77f08764f0e32f8ce18bee16da3aa69;hp=d231520342ae27d8b7577382cb4c3d9b0cf25363;hpb=e85aa1089d1d4954aa949cd05c5b6b9c3fca596c;p=plan9front.git diff --git a/sys/src/cmd/aux/kbdfs/kbdfs.c b/sys/src/cmd/aux/kbdfs/kbdfs.c index d23152034..3d64e1564 100644 --- a/sys/src/cmd/aux/kbdfs/kbdfs.c +++ b/sys/src/cmd/aux/kbdfs/kbdfs.c @@ -371,6 +371,13 @@ shutdown(void) threadexitsall(nil); } +void +shiftup(void) +{ + Key key = { .down = 0, .r = Kshift, .b = Kshift }; + send(keychan, &key); +} + /* * Scan code processing */ @@ -433,8 +440,12 @@ kbdputsc(Scan *scan, int c) if(scan->caps && key.r<='z' && key.r>='a') key.r += 'A' - 'a'; - if(scan->ctl && scan->alt && key.r == Kdel) - reboot(); + if(scan->ctl && scan->alt && key.r == Kdel){ + if(scan->shift) + shiftup(); + else + reboot(); + } if(key.b) send(keychan, &key);