The root cause is that the skin used two fields to store one entity (`focusedMenu` and `focusedMenuIndex`), causing mismatch when invisible menu(s) are present.
The fix involves using a single index variable. Also wanted to note that in theory, `openMenu` and `openMenuButton` can also be replaced with a single boolean, but I decided not to change these in order to keep the amount of diffs to a minimum. ------------- Commit messages: - 8330304 MenuBar: Invisible Menu works incorrectly with keyboard arrows Changes: https://git.openjdk.org/jfx/pull/1467/files Webrev: https://webrevs.openjdk.org/?repo=jfx&pr=1467&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8330304 Stats: 80 lines in 3 files changed: 68 ins; 6 del; 6 mod Patch: https://git.openjdk.org/jfx/pull/1467.diff Fetch: git fetch https://git.openjdk.org/jfx.git pull/1467/head:pull/1467 PR: https://git.openjdk.org/jfx/pull/1467