# HG changeset patch # User Diggory Hardy # Date 1230822960 0 # Node ID 46c63cb1c74f8a1a2e876a773252310a5b96043c # Parent d28aea50c6da4f2cfb47fbb0866189a74d6430c8 Ideas for keyboard selection of widgets. diff -r d28aea50c6da -r 46c63cb1c74f codeDoc/ideas.txt --- a/codeDoc/ideas.txt Thu Jan 01 14:52:09 2009 +0000 +++ b/codeDoc/ideas.txt Thu Jan 01 15:16:00 2009 +0000 @@ -15,3 +15,17 @@ -> Click events: widgets only receive clickEvent for left-button press, other button events handled alternatively from WidgetManager? -> Click callbacks: replace with "drag callback" notifying widget of release position (and widget)? -> possibly better for drag-and drop support +-> Keyboard widget focus/selection: + -> a widget is highlighted + -> pressing an arrow key replaces widget with widget.nextInDirection (widget, direction) + -> on non-parents, nextInDirection returns parent.nextInDirection (this, direction) + -> on parent widgets, if widget is a child and not right against relevent edge, + then tries to return next descendant in direction (only non-parent widgets are returned) + else does same as non-parent widgets + -> some widgets may popup a menu when activated + -> caveats: + -> all widgets need a highlighted state to show focus + -> may require moving through a lot of widgets + -> with complicated substructures, may not be very intuitive + -> limit to popup menus? + -> these keyboard events only passed if activated by code outside the WidgetManager and no text input callback is active?