Andy, > Speaking of the platform nuances – this might be relevant to the ongoing > platform API discussion. Right now FX picks up nothing from the preferences > set by the user within the OS. You are right, macOS allows the user to > change key modifiers (for example, switch control and command keys, Settings > -> Keyboard -> Keyboard Shortcuts -> Modifier Keys) and FX remains oblivious > to this change.
Those changes happen at a low level in the OS and are transparent to JavaFX. There’s nothing we need to do there. We can’t directly query the OS to find a binding like, say, Shift + RIGHT => “moveRight:”. The default mappings are well-established so just re-implementing them is fine. A super power user can alter these bindings by editing a text file and unless we go parse that text file we won’t honor those changes. But that file might contain bindings we can never map (like multi-character Emacs-style sequences) so there’s no guarantee that we can honor their bindings anyway. A regular old power user (rather than a super power user) would probably use something like Karabiner which remaps things at a low level that’s transparent to us. TL;DR not a bad idea to honor the platform key bindings but it would be nightmare to test and implement and benefit a very small number of super power users. Martin