> The issue occurs because the key events are consumed by the `ListView` in > `Popup`, which displays the items. > This is a regression of > [JDK-8077916](https://bugs.openjdk.java.net/browse/JDK-8077916). This change > aadded several > `KeyMapping`s for focus traversals to `ListView`, which consume the `Left`, > `Right` and `Ctrl+A` key events. > Fix: > 1. Remove the four focus traversal arrow `KeyMapping`s from > `ListViewBehavior`. > 2. Add the `Ctrl + A` `KeyMapping` to `ListViewBehavior` only if the > `ListView`'s selection mode is set to > `SelectionMode.MULTIPLE`. `ComboBox` uses the `ListView` with > `SelectionMode.SINGLE` mode. > Change unrelated to fix: > `ComboBoxListViewBehavior` adds `KeyMapping` for `Up` and `Down` keys, which > are not invoked when the `ComboBox` popup > is showing. When the popup is shown, the Up and Down key events are handled > by the `ListView` and the `KeyMapping` code > from `ComboBoxListViewBehavior` does not get executed. These KeyMapping are > removed. However this change is not needed > for the fix. But this seems to be dead code. Verification: > Added new unit tests to verify the change. > Also verified that the behavior ListView behaves same before and after this > change.
Ambarish Rapte has updated the pull request incrementally with one additional commit since the last revision: Change approach to use Interceptor ------------- Changes: - all: https://git.openjdk.java.net/jfx/pull/172/files - new: https://git.openjdk.java.net/jfx/pull/172/files/b948ef18..de91bed4 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jfx&pr=172&range=09 - incr: https://webrevs.openjdk.java.net/?repo=jfx&pr=172&range=08-09 Stats: 125 lines in 4 files changed: 29 ins; 71 del; 25 mod Patch: https://git.openjdk.java.net/jfx/pull/172.diff Fetch: git fetch https://git.openjdk.java.net/jfx pull/172/head:pull/172 PR: https://git.openjdk.java.net/jfx/pull/172