After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 87159 - Suggested keynav revision for moving between multiple menus/toolbars
Suggested keynav revision for moving between multiple menus/toolbars
Status: RESOLVED FIXED
Product: gtk+
Classification: Platform
Component: Widget: Other
2.0.x
Other All
: Normal major
: ---
Assigned To: gtk-bugs
gtk-bugs
Depends on:
Blocks:
 
 
Reported: 2002-07-02 18:36 UTC by Calum Benson
Modified: 2004-12-22 21:47 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Proposed patch (1.17 KB, patch)
2002-07-16 14:10 UTC, padraig.obriain
none Details | Review
Possible alternate patch making F10 cancel at the end instead of wrap (3.85 KB, patch)
2002-07-25 16:48 UTC, Owen Taylor
none Details | Review
Better patch for cancellation at the end instead of wrapping (2.87 KB, patch)
2002-07-25 16:56 UTC, Owen Taylor
none Details | Review

Description Calum Benson 2002-07-02 18:36:33 UTC
As Bill has just pointed out, the current keynav implementation for moving
between multiple menubars and toolbars (F10 to focus the first one, then
Ctrl-Tab to cycle between the others) is seriously inconsistent in its use
of Ctrl-Tab.  I think I have to hold my hands up on this one, as I'm sure I
probably agreed to the implementation at the time (although it's not
actually what's specified in the gtk keynav proposal).

The problem is that Ctrl-Tab is our universal 'get me out of here' key when
Tab doesn't work (e.g. when a multi-line textfield has focus), so we really
shouldn't be using it the way we do here as it could seriously confuse
people relying on screenreaders etc.

In retrospect, it would probably make much more sense if F10 just cycled
through all available menus and toolbars.  When a menu or menu item has
focus, Ctrl-Tab should probably just do the same as Esc, if indeed it needs
to do anything at all.

Since toolbars aren't yet focusable from the keyboard anyway, and no
application has more than one menubar in the same window, the only place
the user will ever have encountered this behaviour to date is on the menu
panel-- where you have to press F10 to open the Applications menu, then
Ctrl-Tab to switch focus to the dropdown window list at the opposite end of
the panel.  And I bet nobody's ever discovered you can do that anyway.

Since this would barely a functional regression, if at all, is there any
chance at all that a patch for this would be accepted in the near future?
Comment 1 padraig.obriain 2002-07-16 14:10:54 UTC
Created attachment 9899 [details] [review]
Proposed patch
Comment 2 Calum Benson 2002-07-17 10:34:47 UTC
(Note: this stuff is also related to bug #54047)
Comment 3 Owen Taylor 2002-07-25 16:48:05 UTC
The current patch has the effect that when there is only
one menu bar, F10 has no effect when the menus are popped
up. Shouldn't F10 cycle through all menu bars and the
no menu state?

Are these changes making there way into the keynav document?
I really would like to have as much as possible one
place to go for what keynav "should be" in GTK+.
Comment 4 Owen Taylor 2002-07-25 16:48:50 UTC
Created attachment 10049 [details] [review]
Possible alternate patch making F10 cancel at the end instead of wrap
Comment 5 Owen Taylor 2002-07-25 16:56:24 UTC
Created attachment 10050 [details] [review]
Better patch for cancellation at the end instead of wrapping
Comment 6 Owen Taylor 2002-07-25 16:57:08 UTC
Actually, the last patch wasn't very good .. there is no
reason to make gtkmenushell.c do the cancellation. Second
patch should be cleaner.
Comment 7 Calum Benson 2002-07-25 17:45:39 UTC
You're right about the keynav docs, they're in serious need of
updating and simplification.  I'll get onto this in the next few days,
hopefully.
Comment 8 Owen Taylor 2002-07-25 18:18:41 UTC
Applied to both stable and HEAD

Thu Jul 25 14:14:46 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmenushell.c: When a menubar is up, use F10 to cycle
        menubars, not Control-Tab (#87159, Calum Benson. Patch from
        Padraig O'Briain.)

        * gtk/gtkmenubar.c: When cycling menu bars, cancel
        after the last instead of wrapping around.