From 8c85fa6923f1fe2dc09f1aa3025babf9c3a7afe2 Mon Sep 17 00:00:00 2001 From: Raphael Girardot <raphael.girardot@synchrotron-soleil.fr> Date: Mon, 2 Nov 2015 16:33:46 +0000 Subject: [PATCH] minor changes --- .../java/fr/soleil/docking/vl/view/VlDockView.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/dockingvl/src/main/java/fr/soleil/docking/vl/view/VlDockView.java b/dockingvl/src/main/java/fr/soleil/docking/vl/view/VlDockView.java index ca1d81a..af2b355 100644 --- a/dockingvl/src/main/java/fr/soleil/docking/vl/view/VlDockView.java +++ b/dockingvl/src/main/java/fr/soleil/docking/vl/view/VlDockView.java @@ -111,27 +111,27 @@ public class VlDockView implements IView, Dockable, DockingActionListener, Focus public void select() { setVisible(true); // TODO Doesn't work !!!!!! - focus(component); + focus(component, true); focusGained(new FocusEvent(component, FocusEvent.FOCUS_GAINED)); } - protected static boolean focus(Component comp) { + protected static boolean focus(Component comp, boolean forceFocus) { boolean focused = false; if (comp != null) { - if (comp.isVisible() && comp.isShowing()) { + if (forceFocus || (comp.isVisible() && comp.isShowing())) { if (comp.isFocusable()) { comp.requestFocus(); + comp.requestFocusInWindow(); focused = true; } else if (comp instanceof Container) { Container container = (Container) comp; for (Component child : container.getComponents()) { - if (focus(child)) { + if (focus(child, false)) { + focused = true; break; } } } - } else { - comp.setVisible(true); } } return focused; -- GitLab