public EventHandler<Event> createOnCloseRequestHandler(Tab tab, FXDockableEntry dockableEntry, DockingAreaPane dockingAreaPane) { return event -> { final FXDockableData dockableData = dockableEntry.getDockableData(); LOG.debug("Closing tab: {} ...", dockableData.getTitle()); closeRequest = new CloseRequest(); DockableCloseRequestEvent dockableCloseRequestEvent = new DockableCloseRequestEvent(dockableEntry, dockingAreaPane, dockingAreaPane); dockingAreaPane.fireEvent(dockableCloseRequestEvent); if (closeRequest.isStopClosingTab()) { event.consume(); LOG.debug("onCloseRequest event consumed for: {}", dockableData.getTitle()); } closeRequest = null; }; }