diff options
author | Brian P. Hinz <bphinz@users.sf.net> | 2017-11-12 15:42:23 -0500 |
---|---|---|
committer | Brian P. Hinz <bphinz@users.sf.net> | 2017-11-13 18:21:28 -0500 |
commit | 2dc6529ecdb83afe58b6520427623a848de41d71 (patch) | |
tree | 6c1a485ed526ab14b0339e20075c83594811d2c0 /java | |
parent | e5b4003bfb24f740e0d6ea2c82422d1dacf7b927 (diff) | |
download | tigervnc-2dc6529ecdb83afe58b6520427623a848de41d71.tar.gz tigervnc-2dc6529ecdb83afe58b6520427623a848de41d71.zip |
Override implicit focus transfer when "F10" key is pressed
Java L&F has pre-defined hook that transfers the focus to the
menu of the RootPane. Since the viewer doesn't have a menu
this just causes a loss of focus and subsequent unexpected
behavior of keyboard and mouse.
Diffstat (limited to 'java')
-rw-r--r-- | java/com/tigervnc/vncviewer/Viewport.java | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/java/com/tigervnc/vncviewer/Viewport.java b/java/com/tigervnc/vncviewer/Viewport.java index 72d61605..a588f0f4 100644 --- a/java/com/tigervnc/vncviewer/Viewport.java +++ b/java/com/tigervnc/vncviewer/Viewport.java @@ -102,6 +102,16 @@ class Viewport extends JPanel implements ActionListener { releaseDownKeys(); } }); + Action action = new AbstractAction() { + public void actionPerformed(ActionEvent e) { } + }; + KeyStroke f10 = KeyStroke.getKeyStroke(KeyEvent.VK_F10, 0); + getInputMap(JComponent.WHEN_FOCUSED).put(f10, "requestFocus"); + getActionMap().put("requestFocus", new AbstractAction() { + public void actionPerformed(ActionEvent e) { + requestFocusInWindow(); + } + }); setFocusTraversalKeysEnabled(false); setFocusable(true); |