as determined by SkinMemoryLeakTest (remove line 170) and a leak tester https://github.com/andy-goryachev-oracle/Test/blob/main/src/goryachev/apps/LeakTest.java
Also applies to SplitMenuButton, since they share the same base class MenuButtonSkinBase. Make sure to configure the current test in LeakTest: protected final Type WE_ARE_TESTING = Type.MENU_BUTTON; // or SPLIT_MENU_BUTTON In addition, there seems to be another failure scenario when simply replacing the skin - no menu is shown upon a click. To reproduce, launch LeakTest and click once on the [Replace Skin] button. Second click restores the function. caused by: - adding and not removing EventHandlers - setting and not clearing onAction handlers - incorrect logic in setting mousePressed/mouse/Released handlers ------------- Commit messages: - Merge remote-tracking branch 'origin/master' into - 8295426: listener helper update - Merge remote-tracking branch 'origin/8294809.listener.helper' into 8295426.menu.button.skin - 8294809: review comments - Merge remote-tracking branch 'origin/master' into 8294809.listener.helper - 8294809: whitespace - 8294809: no public api - 8294809: map change listener - Merge remote-tracking branch 'origin/master' into 8294809.listener.helper - Merge branch '8294809.listener.helper' into 8295426.menu.button.skin - ... and 26 more: https://git.openjdk.org/jfx/compare/3376228a...88e8a7e5 Changes: https://git.openjdk.org/jfx/pull/919/files Webrev: https://webrevs.openjdk.org/?repo=jfx&pr=919&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8295426 Stats: 175 lines in 4 files changed: 109 ins; 32 del; 34 mod Patch: https://git.openjdk.org/jfx/pull/919.diff Fetch: git fetch https://git.openjdk.org/jfx pull/919/head:pull/919 PR: https://git.openjdk.org/jfx/pull/919