forked from pool/tigervnc
33 lines
958 B
Diff
33 lines
958 B
Diff
|
From 9f83180219380c690fb743182308bc2d534b8b1b Mon Sep 17 00:00:00 2001
|
||
|
From: Dominique Martinet <asmadeus@codewreck.org>
|
||
|
Date: Sun, 8 Jul 2018 02:15:43 +0900
|
||
|
Subject: [PATCH] viewer: reset ctrl / alt to menu state on focus
|
||
|
|
||
|
Setting Ctrl or Alt key on menu only sends the key press, and the
|
||
|
state is lost when focus is lost and recovered.
|
||
|
This checks the menu variable and sends the keys again if needed.
|
||
|
---
|
||
|
vncviewer/Viewport.cxx | 6 ++++++
|
||
|
1 file changed, 6 insertions(+)
|
||
|
|
||
|
diff --git a/vncviewer/Viewport.cxx b/vncviewer/Viewport.cxx
|
||
|
index 4e23dc8c..317f06b2 100644
|
||
|
--- a/vncviewer/Viewport.cxx
|
||
|
+++ b/vncviewer/Viewport.cxx
|
||
|
@@ -635,6 +635,12 @@ int Viewport::handle(int event)
|
||
|
exit_vncviewer(e.str());
|
||
|
}
|
||
|
|
||
|
+ // Resend Ctrl/Alt if needed
|
||
|
+ if (menuCtrlKey)
|
||
|
+ handleKeyPress(0x1d, XK_Control_L);
|
||
|
+ if (menuAltKey)
|
||
|
+ handleKeyPress(0x38, XK_Alt_L);
|
||
|
+
|
||
|
// Yes, we would like some focus please!
|
||
|
return 1;
|
||
|
|
||
|
--
|
||
|
2.16.4
|
||
|
|