< prev index next >

modules/javafx.controls/src/main/java/javafx/scene/control/skin/TabPaneSkin.java

Print this page

        

*** 1233,1243 **** closeBtn.getStyleClass().setAll("tab-close-button"); closeBtn.setOnMousePressed(new EventHandler<MouseEvent>() { @Override public void handle(MouseEvent me) { Tab tab = getTab(); ! if (behavior.canCloseTab(tab)) { behavior.closeTab(tab); setOnMousePressed(null); me.consume(); } } --- 1233,1243 ---- closeBtn.getStyleClass().setAll("tab-close-button"); closeBtn.setOnMousePressed(new EventHandler<MouseEvent>() { @Override public void handle(MouseEvent me) { Tab tab = getTab(); ! if (me.getButton().equals(MouseButton.PRIMARY) && behavior.canCloseTab(tab)) { behavior.closeTab(tab); setOnMousePressed(null); me.consume(); } }
*** 1425,1447 **** me.consume(); } }); setOnMousePressed(new EventHandler<MouseEvent>() { @Override public void handle(MouseEvent me) { ! if (getTab().isDisable()) { return; } if (me.getButton().equals(MouseButton.MIDDLE)) { if (showCloseButton()) { - Tab tab = getTab(); if (behavior.canCloseTab(tab)) { removeListeners(tab); behavior.closeTab(tab); } } } else if (me.getButton().equals(MouseButton.PRIMARY)) { ! behavior.selectTab(getTab()); } } }); // initialize pseudo-class state --- 1425,1455 ---- me.consume(); } }); setOnMousePressed(new EventHandler<MouseEvent>() { @Override public void handle(MouseEvent me) { ! Tab tab = getTab(); ! if (tab.isDisable()) { return; } + if (me.getButton().equals(MouseButton.MIDDLE) + || me.getButton().equals(MouseButton.PRIMARY)) { + + if (tab.getContextMenu() != null + && tab.getContextMenu().isShowing()) { + tab.getContextMenu().hide(); + } + } if (me.getButton().equals(MouseButton.MIDDLE)) { if (showCloseButton()) { if (behavior.canCloseTab(tab)) { removeListeners(tab); behavior.closeTab(tab); } } } else if (me.getButton().equals(MouseButton.PRIMARY)) { ! behavior.selectTab(tab); } } }); // initialize pseudo-class state
*** 2003,2025 **** } }); } private void handleHeaderMousePressed(MouseEvent event) { ! ((StackPane)event.getSource()).setMouseTransparent(true); startDrag(event); } private void handleHeaderMouseReleased(MouseEvent event) { ! ((StackPane)event.getSource()).setMouseTransparent(false); stopDrag(); event.consume(); } private void handleHeaderDragged(MouseEvent event) { perfromDrag(event); } private double getDragDelta(double curr, double prev) { if (getSkinnable().getSide().equals(Side.TOP) || getSkinnable().getSide().equals(Side.RIGHT)) { return curr - prev; --- 2011,2039 ---- } }); } private void handleHeaderMousePressed(MouseEvent event) { ! if (event.getButton().equals(MouseButton.PRIMARY)) { ! ((StackPane) event.getSource()).setMouseTransparent(true); startDrag(event); } + } private void handleHeaderMouseReleased(MouseEvent event) { ! if (event.getButton().equals(MouseButton.PRIMARY)) { ! ((StackPane) event.getSource()).setMouseTransparent(false); stopDrag(); event.consume(); } + } private void handleHeaderDragged(MouseEvent event) { + if (event.getButton().equals(MouseButton.PRIMARY)) { perfromDrag(event); } + } private double getDragDelta(double curr, double prev) { if (getSkinnable().getSide().equals(Side.TOP) || getSkinnable().getSide().equals(Side.RIGHT)) { return curr - prev;
< prev index next >