Palette browser - fix bug when adding several blocks by ENTER 99/18399/2 palette-browser
Marcos CARDINOT [Sun, 31 Jul 2016 03:13:34 +0000 (04:13 +0100)]
test case:
- select several blocks by mouse dragging
- ENTER

Change-Id: I01ac1ff17a847f4796d79b217f0e30ba8cdbca33

scilab/modules/xcos/src/java/org/scilab/modules/xcos/palette/listener/PaletteBlockKeyListener.java
scilab/modules/xcos/src/java/org/scilab/modules/xcos/palette/listener/PaletteMouseListener.java

index 21338b7..79035db 100644 (file)
@@ -42,7 +42,7 @@ public final class PaletteBlockKeyListener implements KeyListener {
      */
     @Override
     public void keyPressed(KeyEvent e) {
-        /** add the current block to the most recent diagram **/
+        /** add the selected blocks into the most recent diagram **/
         if (e.getKeyCode() == KeyEvent.VK_ENTER) {
             final List<XcosDiagram> allDiagrams = Xcos.getInstance().openedDiagrams();
             final PaletteBlockCtrl control = ((PaletteBlockView) e.getSource()).getController();
index c3f8172..5bcca07 100644 (file)
@@ -96,6 +96,11 @@ public final class PaletteMouseListener extends MouseAdapter {
     @Override
     public void mouseReleased(MouseEvent e) {
         super.mouseReleased(e);
-        ((PaletteView) e.getSource()).setSelectionRectangle(null);
+        PaletteView view = (PaletteView) e.getSource();
+        view.setSelectionRectangle(null);
+        Component[] blocks = view.getComponents();
+        if (blocks.length > 0) {
+            blocks[0].requestFocus();
+        }
     }
 }