diff options
author | dmazzoni@chromium.org <dmazzoni@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-03-18 00:21:32 +0000 |
---|---|---|
committer | dmazzoni@chromium.org <dmazzoni@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-03-18 00:21:32 +0000 |
commit | 21aff05ece8525de34edb788615f58a51ac2a3fe (patch) | |
tree | d982c766ef1340e6bd46c21536761bef952c20d4 /content/browser/accessibility | |
parent | 50a3413134cb35d2ce122c5a4f33c7c4440f981e (diff) | |
download | chromium_src-21aff05ece8525de34edb788615f58a51ac2a3fe.zip chromium_src-21aff05ece8525de34edb788615f58a51ac2a3fe.tar.gz chromium_src-21aff05ece8525de34edb788615f58a51ac2a3fe.tar.bz2 |
Skip table columns when doing accessibility hit testing.
Tables have both rows and columns as children, with bounding rects for both,
but only rows contain the cells - so when doing recursive hit testing we
should ignore the columns.
BUG=345924
Review URL: https://codereview.chromium.org/196573029
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@257551 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/browser/accessibility')
-rw-r--r-- | content/browser/accessibility/browser_accessibility.cc | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/content/browser/accessibility/browser_accessibility.cc b/content/browser/accessibility/browser_accessibility.cc index d741f40..ff57121 100644 --- a/content/browser/accessibility/browser_accessibility.cc +++ b/content/browser/accessibility/browser_accessibility.cc @@ -318,6 +318,12 @@ BrowserAccessibility* BrowserAccessibility::BrowserAccessibilityForPoint( // most tightly encloses the specified point. for (int i = static_cast<int>(PlatformChildCount()) - 1; i >= 0; --i) { BrowserAccessibility* child = PlatformGetChild(i); + + // Skip table columns because cells are only contained in rows, + // not columns. + if (child->role() == ui::AX_ROLE_COLUMN) + continue; + if (child->GetGlobalBoundsRect().Contains(point)) return child->BrowserAccessibilityForPoint(point); } |