RFR: 8340852: ScrollPane should not consume navigation keys when it doesn't have direct focus

John Hendrikx jhendrikx at openjdk.org
Thu Oct 3 19:14:44 UTC 2024


On Thu, 3 Oct 2024 16:33:12 GMT, Andy Goryachev <angorya at openjdk.org> wrote:

> > or perhaps indeed something with traversal policies would need to be created by the user to solve this on a case by case basis. It will be hard to always do the expected thing with a control as generic as ScrollPane.
> 
> I played with your examples and this PR a bit more. I am now convinced you are right and we should fix the ScrollPane as you proposed (with a minor suggestion).
> 
> On the traversal subject, the keyboard navigation in FX is sometimes weird, which further confirms the need for a public traversal APIs (#1555). For example, arrow down unexpectedly navigates away from the scroll pane content into the side panel (with or without this PR):

The directional navigation does a best fit approach here, it looks for the closest target in a 90 degree arc from the origin to find the nearest matching target -- I think it just clips the HBar policy dropdown, which is nearest, so it goes there.  Otherwise it would have gone most likely to the HMax drop down.  It is not aware of things like rows or layout :)

<img width="514" alt="image" src="https://github.com/user-attachments/assets/b55fc077-7954-4d93-b616-349340145006">

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

PR Comment: https://git.openjdk.org/jfx/pull/1582#issuecomment-2392140893


More information about the openjfx-dev mailing list