Issue : https://bugs.openjdk.java.net/browse/JDK-8244110
Root Cause : Fix of [JDK-8175358](https://bugs.openjdk.java.net/browse/JDK-8175358) added code to remove accelerators from a scene in Scene property listener of MenuButtonSkinBase. That fix uses getSkinnable() in listener. It turned out that it can be null as found out by failing system test. Fix : As pointed out by @kleopatra on the JBS, getSkinnable() should never be null for a valid skin. Hence, the correct fix is to remove listener cleanly in dispose method. See JBS comments for more info. This also addresses [JDK-8244081](https://bugs.openjdk.java.net/browse/JDK-8244081). Testing : 1) Failing system test - passes after the fix 2) 3 unit tests which used to log NPE message silently and pass have been made to fail without this fix - these tests passes after the fix Special Thanks to @kleopatra for most of the test digging and fix guidance. ------------- Commit messages: - MenuButtonSkinBase_Regression_fix Changes: https://git.openjdk.java.net/jfx/pull/205/files Webrev: https://webrevs.openjdk.java.net/jfx/205/webrev.00 Issue: https://bugs.openjdk.java.net/browse/JDK-8244110 Stats: 43 lines in 2 files changed: 38 ins; 1 del; 4 mod Patch: https://git.openjdk.java.net/jfx/pull/205.diff Fetch: git fetch https://git.openjdk.java.net/jfx pull/205/head:pull/205 PR: https://git.openjdk.java.net/jfx/pull/205