RFR: 8024624: [TEST_BUG] [macosx] CTRL+RIGHT(LEFT) doesn't move selection on next cell in JTable on Aqua L&F

DamonGuy duke at openjdk.java.net
Wed Mar 16 17:36:55 UTC 2022


On Fri, 11 Mar 2022 23:13:15 GMT, DamonGuy <duke at openjdk.java.net> wrote:

> Aqua L&F tables lacked support for `CTRL+ARROW`, `CTRL+PG_UP/DOWN`, and `CTRL+SHIFT+PG_UP/DOWN` key bindings. This allows for navigation and selection of table cells without the need of a mouse and without deselecting the current selected cell group. 
> 
> Those key bindings are added to Aqua's key bindings for tables. The `SPACE` key binding was also added because it allows for the selection of cells after navigating using the `CTRL+ARROW` bindings, and some of the new bindings are only useful with the `SPACE` binding added. The closed test that this bug originates from tests for both left-to-right and right-to-left functionality, so the new directional bindings are also added to the right-to-left key bindings table where needed.
> 
> This requires mission control shortcuts in macOS to be disabled as `CTRL+ARROW` keys are normally used for virtual desktop navigation.

> _Mailing list message from [Miguel Munoz](mailto:swingguy1024 at yahoo.com) on [client-libs-dev](mailto:client-libs-dev at mail.openjdk.java.net):_
> 
> On the MacOS, it's the OPTION-CLICK event, not the COMMAND-CLICK event that does the same thing as CONTROL-CLICK on Windows and other platforms. Every platform has modifier key used to advance the cursor by words instead of characters, but the modifiers are different on the Mac.
> 
> To see this working correctly, try an app running under JDK 8, which was the last one they worked under. (Actually, I haven't tried 9 or 10) Or you can try any non-java application. This is a standard user interface convention, and Java should continue to support it like it did through Java -8.
> 
> ? Miguel Mu?oz On Tuesday, March 15, 2022, 06:53:19 PM PDT, Sergey Bylokhov <serb at openjdk.java.net> wrote:
> 
> On Sat, 12 Mar 2022 01:27:34 GMT, DamonGuy <duke at openjdk.java.net> wrote:
> 
> > Apple Pages has no support at all for these table navigation functions other than `COMMAND+LEFT_CLICK`. Excel has a selection mode that can be toggled on/off using SHIFT+F8. I also tested in macOS's `System Preferences > Keyboard > Text` and `CMD+CLICK` is the only supported way to select non-adjacent cells as well.
> 
> Since for any reason the macOS does not supported such navigation in the tables and use it by mission control it seems correct to do the same in the native look and feel, and ignore the test.
> 
> -------------
> 
> PR: https://git.openjdk.java.net/jdk/pull/7792

I tested again on native macOS tables, and CMD+CLICK seems to be the functioning modifier+key combination for selecting multiple non-adjacent cells. I also found [this](https://support.apple.com/guide/pages/select-tables-cells-rows-and-columns-tan661e2f40a/mac) information under `cells` and `rows and columns` that shows the same key bindings. I could change the bindings, but that would change Aqua L&F to be further from native macOS behavior.

-------------

PR: https://git.openjdk.java.net/jdk/pull/7792



More information about the client-libs-dev mailing list