Closed
Bug 242425
Opened 21 years ago
Closed 21 years ago
nsIAccessible::GetBounds returns incorrect values with tabbed browsing
Categories
(Core :: Disability Access APIs, defect)
Tracking
()
RESOLVED
FIXED
People
(Reporter: aaronlev, Assigned: aaronlev)
References
Details
(Keywords: access)
Attachments
(1 file)
3.00 KB,
patch
|
Louie.Zhao
:
review+
jst
:
superreview+
|
Details | Diff | Splinter Review |
Steps:
1. Open up several browser windows
2. Run an accessibility testing tool that reports the bounds of each object.
What happens:
The bounds information from a non-visible page seem to be overriding the visible
page's bounds info
Assignee | ||
Comment 1•21 years ago
|
||
Can someone tell me if this happens with our ATK support as well? It probably does.
Assignee | ||
Updated•21 years ago
|
Severity: normal → major
Assignee | ||
Comment 2•21 years ago
|
||
Louie, can you look into this?
Comment 3•21 years ago
|
||
Using at-poke, I can't reproduce this issue on Linux build.
I open 2 different pages in 2 windows (as well as in 2 tabs). The "Postion" and
"Size" for each object (exported by at-poke) are corrent when 1 page cover the
other. At-poke can display the bound of each object using blinking rectangle.
Both visible and invisible object have the correct bound.
Assignee | ||
Comment 4•21 years ago
|
||
Louie, I should have been more specific. I think the problem is with
GetChildAtPoint, when you do it all the way from the root of the XUL window into
the HTML.
In MSAA, it always walks into the first tab, even if that one is currently hidden.
Assignee | ||
Comment 5•21 years ago
|
||
Pretty much the same logic, but doesn't have to check the current accessible's
bounds unless none of the children fit.
Assignee | ||
Updated•21 years ago
|
Attachment #148242 -
Flags: review?(Louie.Zhao)
Comment 6•21 years ago
|
||
The original "GetChildAtPoint" deal with "ROLE_MENUPOPUP" specially.
"ROLE_MENUPOPUP" seems to have never been returned (returning his child
instead). Don't we need this part anymore ?
Assignee | ||
Comment 7•21 years ago
|
||
Louie, no. I think we were just optimizing and trying not to use GetState() each
time, because at that time STATE_OFFSCREEN was only supported by menus. It's
strange actually, the old code makes no sense, because when it's not a menu role
we check for STATE_OFFSCREEN but always state == 0.
I can't think of any reason why checking STATE_OFFSCREEN for everything wouldn't
be better. I also can't think of any reason why we wouldn't want to return the
menupopup object itself from this method.
Comment 8•21 years ago
|
||
Comment on attachment 148242 [details] [diff] [review]
Always check STATE_INVISIBLE and STATE_OFFSCREEN in GetChildAtPoint()
The patch looks good for me.
Attachment #148242 -
Flags: review?(Louie.Zhao) → review+
Assignee | ||
Updated•21 years ago
|
Attachment #148242 -
Flags: superreview?(jst)
Comment 9•21 years ago
|
||
Comment on attachment 148242 [details] [diff] [review]
Always check STATE_INVISIBLE and STATE_OFFSCREEN in GetChildAtPoint()
sr=jst
Attachment #148242 -
Flags: superreview?(jst) → superreview+
Assignee | ||
Updated•21 years ago
|
Status: NEW → RESOLVED
Closed: 21 years ago
Resolution: --- → FIXED
Comment 10•6 years ago
|
||
Keywords: sec508
You need to log in
before you can comment on or make changes to this bug.
Description
•