Document itself is last item in tabbing order, user must tab through UI to get to content

VERIFIED FIXED in mozilla0.9.2

Status

()

Core
Embedding: APIs
P2
normal
VERIFIED FIXED
17 years ago
16 years ago

People

(Reporter: Alex Weyers, Assigned: Brian Ryner (not reading))

Tracking

({access})

Trunk
mozilla0.9.2
x86
Windows 2000
access
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: critical for 0.9.2)

Attachments

(3 attachments)

(Reporter)

Description

17 years ago
Currently, nsEventStateManager::ShiftFocus() offers the focus the document 
itself before offering it upwards to UI controls.  Unlike the browser, we are 
embedding gecko in a window/dialog that has many 
controls (not just a single url bar).

Now, if the document is at the end of the tabbing order AND has the initial 
focus, it means that the user must tab through all of the parent window's UI 
before ever getting to the links within the document.  Clearly, in a case where 
this doesn't involve two keypresses (one tab to url bar, one tab out of url 
bar) the result is a tedious (7 tabs) user experience while simply attempting 
to get to that first hyperlink.

We would like to see the following - 
A flag set somewhere during window/document creation that determines whether 
the document gains focus at the head or tail of the tabbing order.  If the 
default value was the tail, then the browser implementation need not concern 
itself.  Embedding applications would, however, have the option of determining 
whether users will be forced to traverse all UI before stepping through the 
document's contents.  

The document would still get the initial focus regardless.

Updated

17 years ago
Status: UNCONFIRMED → NEW
Ever confirmed: true

Comment 1

17 years ago
-> saari.
Assignee: adamlock → saari

Comment 2

17 years ago
CC'ing bryner@netscape.com and rods@netscape.com who are both working on similar
issues, and one of them should probably own this.

Comment 3

17 years ago
rods, I'm giving this to you since you've got your head wrapped around the issue
already.
Assignee: saari → rods

Comment 4

17 years ago
bryner, you are the one who had the the document focus itself and I was just 
following that convension. I'll take a quicklook and see if I can easily find 
what needs to be fixed.
Status: NEW → ASSIGNED
(Reporter)

Comment 5

17 years ago
Bryner -

Have you had a chance to look into this for us?  How difficult would it be to 
allow us the option of placing the document at either the head or the tail of 
the tabbing focus order?

Comment 6

17 years ago
Based on above comments, and Rod's impending sabbatical, I'm reassigning this to
bryner, and targetting 0.9.2.  Rod, in the unlikely event you really wanted
this, feel free to snatch it back.  adding access keyword && cc'ing aaronl too.
Assignee: rods → bryner
Status: ASSIGNED → NEW
Keywords: access
Target Milestone: --- → mozilla0.9.2

Comment 7

17 years ago
P2, must-have for embedding. 
Priority: -- → P2
(Assignee)

Updated

17 years ago
Status: NEW → ASSIGNED
(Assignee)

Comment 9

17 years ago
With this patch applied, set the pref "focus.docbeforecontent" to true to use
the alternate focus traversal suggested in this bug.

Comment 10

17 years ago
We don't (and cannot) use the pref file. Many others have been exposed by 
nsIWebBrowserSetup to be applied on a per-window basis. Perhaps this is another 
case?
(Assignee)

Comment 11

17 years ago
Created attachment 39899 [details] [diff] [review]
patch #2: uses nsIWebBrowserSetup instead of pref

Comment 12

17 years ago
r=saari

Comment 13

17 years ago
r=adamlock

Can you be sure to document what SETUP_FOCUS_DOC_BEFORE_CONTENT does in the 
interface? Can you also remove the "XXX is this right?" comment if it is right 
or fix it so that it is?
(Assignee)

Comment 14

17 years ago
Created attachment 39976 [details] [diff] [review]
patch #3
sr=jst

Comment 16

17 years ago
a=chofmann branch and trunk
(Assignee)

Comment 17

17 years ago
checked in on branch and trunk.
Status: ASSIGNED → RESOLVED
Last Resolved: 17 years ago
Resolution: --- → FIXED
Whiteboard: critical for 0.9.2

Comment 18

16 years ago
Clean up verification of dated code change bus
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.