Bug 528148 - Focus tab traversal does not work in the MVC Logo Example because the handler is not invoked
Summary: Focus tab traversal does not work in the MVC Logo Example because the handler...
Status: NEW
Alias: None
Product: GEF
Classification: Tools
Component: GEF MVC (show other bugs)
Version: 5.0.1   Edit
Hardware: All All
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: gef-inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-12-05 07:04 EST by Matthias Wienand CLA
Modified: 2017-12-05 07:04 EST (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Matthias Wienand CLA 2017-12-05 07:04:16 EST
The TraverseFocusOnTypeHandler is registered only for the root part within the MVC Logo example. Since only the handlers "nearest" to the interacted-with part are invoked to handle user interaction (see DefaultHandlerResolver), the handler for traversing focus on TAB and SHIFT-TAB is not invoked when a connection or shape part has focus, because, for example, the SelectFocusedOnTypeHandler is already found at the interacted-with part.

In order to enable tab traversal again for the MVC Logo example, the TraverseFocusOnTypeHandler needs to be registered at the connection and shape parts, too.

However, when binding the handler also for connections and shapes, then it will throw an IllegalStateException, because it cannot find the FocusTraversalPolicy necessary to carry out the focus change, because that policy is queried from the host, although it should be queried from the root part, instead.