< 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 >