The `Scene.KeyHandler` class doesn't seem to have a clear purpose, mixing focus handling with event propagation. Since JDK-8268225, `KeyHandler.setFocusVisible` is also called from mouse and touch event handlers, which makes the purpose of the class even less pronounced.
Moving the focus-related functionality next to the other focus functions in the `Scene` class is a safe and straightforward change, and it makes it easier to work with the code in the future.
With the focus-related functions gone, `KeyHandler` only contains a single, small method that is called from `Scene.processKeyEvent`. For simplicity, this code can be rolled into `Scene.processKeyEvent` and the now-empty `KeyHandler` class can be removed.
Moving the focus-related functionality next to the other focus functions in the `Scene` class is a safe and straightforward change, and it makes it easier to work with the code in the future.
With the focus-related functions gone, `KeyHandler` only contains a single, small method that is called from `Scene.processKeyEvent`. For simplicity, this code can be rolled into `Scene.processKeyEvent` and the now-empty `KeyHandler` class can be removed.
- relates to
-
JDK-8268225 Support :focus-visible and :focus-within CSS pseudoclasses
- Resolved