private void onFocusOwnerChanged(Node oldFocusOwner, Node newFocusOwner) { if (oldFocusOwner != null && isViewerVisual(oldFocusOwner)) { oldFocusOwner.focusedProperty().removeListener(focusOwnerFocusedObserver); } if (newFocusOwner != null && isViewerVisual(newFocusOwner)) { newFocusOwner.focusedProperty().addListener(focusOwnerFocusedObserver); // check if viewer is focused if (Boolean.TRUE.equals(newFocusOwner.focusedProperty().get())) { isFocusOwnerFocused = true; viewerFocusedPropertyBinding.invalidate(); } } else { // viewer unfocused isFocusOwnerFocused = false; viewerFocusedPropertyBinding.invalidate(); } }
private void onWindowChanged(Window oldValue, Window newValue) { if (oldValue != null) { oldValue.focusedProperty().removeListener(windowFocusedObserver); } if (newValue != null) { newValue.focusedProperty().addListener(windowFocusedObserver); // check if window is focused if (Boolean.TRUE.equals(newValue.focusedProperty().get())) { isWindowFocused = true; viewerFocusedPropertyBinding.invalidate(); } } else { // window unfocused isInitialized = false; isWindowFocused = false; viewerFocusedPropertyBinding.invalidate(); } }
private void onWindowFocusedChanged(Boolean oldValue, Boolean newValue) { isWindowFocused = Boolean.TRUE.equals(newValue); viewerFocusedPropertyBinding.invalidate(); if (!isInitialized) { // XXX: When the embedded scene is opened, the viewer needs to // request focus for the root visual once so that a focus owner is // set. This could also possibly be done in the FXFocusBehavior, but // keeping it here we can limit 'knowledge' about the embedded // window. getRootPart().getVisual().requestFocus(); isInitialized = true; } }
private void onFocusOwnerFocusedChanged(Boolean oldValue, Boolean newValue) { isFocusOwnerFocused = Boolean.TRUE.equals(newValue); viewerFocusedPropertyBinding.invalidate(); }