diff --git a/dockinginfonode/src/main/java/fr/soleil/docking/infonode/view/InfoNodeView.java b/dockinginfonode/src/main/java/fr/soleil/docking/infonode/view/InfoNodeView.java
index 2f4385afc9ee92b4c5d224b4fa1a520f5f9a4bc1..ab918a95bcb35dc2b0e56ea0ff90f6830cd11c04 100644
--- a/dockinginfonode/src/main/java/fr/soleil/docking/infonode/view/InfoNodeView.java
+++ b/dockinginfonode/src/main/java/fr/soleil/docking/infonode/view/InfoNodeView.java
@@ -13,6 +13,7 @@ import java.util.List;
 
 import javax.swing.Icon;
 
+import net.infonode.docking.AbstractTabWindow;
 import net.infonode.docking.DockingWindow;
 import net.infonode.docking.DockingWindowListener;
 import net.infonode.docking.OperationAbortedException;
@@ -28,7 +29,7 @@ import fr.soleil.docking.view.IViewListener;
  */
 public class InfoNodeView extends View implements IView {
 
-    private static final long serialVersionUID = -8766019787338480450L;
+    private static final long serialVersionUID = 7028633985357675678L;
 
     protected Object id;
 
@@ -74,6 +75,30 @@ public class InfoNodeView extends View implements IView {
         super.setEnabled(visible);
     }
 
+    @Override
+    public void select() {
+        recursiveSelect(this);
+        // requestFocusInWindow();
+        // Component comp = getComponent();
+        // if (comp != null) {
+        // comp.requestFocusInWindow();
+        // }
+    }
+
+    protected static void recursiveSelect(DockingWindow window) {
+        if (window != null) {
+            DockingWindow parent = window.getWindowParent();
+            if (parent instanceof AbstractTabWindow) {
+                AbstractTabWindow tabWindow = (AbstractTabWindow) parent;
+                int index = parent.getChildWindowIndex(window);
+                if (index > -1) {
+                    tabWindow.setSelectedTab(index);
+                }
+            }
+            recursiveSelect(parent);
+        }
+    }
+
     @Override
     protected void update() {
         super.update();
@@ -116,9 +141,9 @@ public class InfoNodeView extends View implements IView {
         win.setBackground(bg);
         win.setBorder(null);
         win.getWindowProperties().getTabProperties().getTitledTabProperties().getNormalProperties()
-        .getComponentProperties().setBackgroundColor(bg);
+                .getComponentProperties().setBackgroundColor(bg);
         win.getWindowProperties().getTabProperties().getTitledTabProperties().getHighlightedProperties()
-        .getComponentProperties().setBackgroundColor(bg);
+                .getComponentProperties().setBackgroundColor(bg);
     }
 
     /**
@@ -130,9 +155,9 @@ public class InfoNodeView extends View implements IView {
     protected void setForeground(DockingWindow win, Color fg) {
         win.setForeground(fg);
         win.getWindowProperties().getTabProperties().getTitledTabProperties().getNormalProperties()
-        .getComponentProperties().setForegroundColor(fg);
+                .getComponentProperties().setForegroundColor(fg);
         win.getWindowProperties().getTabProperties().getTitledTabProperties().getHighlightedProperties()
-        .getComponentProperties().setForegroundColor(fg);
+                .getComponentProperties().setForegroundColor(fg);
     }
 
     /**
@@ -171,9 +196,9 @@ public class InfoNodeView extends View implements IView {
     public void setClosable(boolean closable) {
         if (getWindowProperties() != null) {
             getWindowProperties().getTabProperties().getNormalButtonProperties().getCloseButtonProperties()
-            .setVisible(closable);
+                    .setVisible(closable);
             getWindowProperties().getTabProperties().getHighlightedButtonProperties().getCloseButtonProperties()
-            .setVisible(closable);
+                    .setVisible(closable);
             getWindowProperties().setCloseEnabled(closable);
         }
     }