+vncterm (1.0-3) unstable; urgency=low
+
+ * fix focus traversal
+
+ -- Proxmox Support Team <support@proxmox.com> Tue, 21 Aug 2012 09:14:04 +0200
+
vncterm (1.0-2) unstable; urgency=low
* do not create a new process group (with setsid), so
--- /dev/null
+Sources found at http://dogfeathers.com/mark/java7issue.html
+
+Index: tigervnc.new/java/src/com/tigervnc/vncviewer/VncViewer.java
+===================================================================
+--- tigervnc.new.orig/java/src/com/tigervnc/vncviewer/VncViewer.java 2012-08-21 09:05:04.000000000 +0200
++++ tigervnc.new/java/src/com/tigervnc/vncviewer/VncViewer.java 2012-08-21 09:10:27.000000000 +0200
+@@ -110,6 +110,28 @@
+
+ public void init() {
+
++ // fix focus traversal
++ Container topParent = null;
++ Container parent = this;
++ // The natural thing would be to call getParent() until it returns
++ // null, but then you would be looping for a long time, since
++ // PluginEmbeddedFrame's getParent() returns itself.
++ for (int k=0; k < 10; k++) {
++ topParent = parent;
++ parent = parent.getParent();
++ if (parent == null) break;
++ }
++
++ // If topParent isn't a KeyEventDispatcher then we must be in some
++ // Plugin version that doesn't need the workaround.
++ try {
++ KeyEventDispatcher ked = (KeyEventDispatcher)topParent;
++ KeyboardFocusManager kfm = KeyboardFocusManager.getCurrentKeyboardFocusManager();
++ // You have to remove it twice, otherwise the problem isn't fixed
++ kfm.removeKeyEventDispatcher(ked);
++ kfm.removeKeyEventDispatcher(ked);
++ } catch (ClassCastException e) {}
++
+ readParameters();
+
+ refApplet = this;