Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(175)

Unified Diff: content/browser/accessibility/browser_accessibility_com_win.cc

Issue 2981083002: Migrate BrowserAccessibility windows unique id handling to AXPlatformNodeWin. (Closed)
Patch Set: Android fix. I was hoping I could get rid of this. Someday though! Created 3 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/accessibility/browser_accessibility_com_win.cc
diff --git a/content/browser/accessibility/browser_accessibility_com_win.cc b/content/browser/accessibility/browser_accessibility_com_win.cc
index 3558c02f07beb10630a3f9d706f5945f779bf0d6..b2a911c7280b1187070667a7a44d8b16570e6353 100644
--- a/content/browser/accessibility/browser_accessibility_com_win.cc
+++ b/content/browser/accessibility/browser_accessibility_com_win.cc
@@ -676,14 +676,7 @@ STDMETHODIMP BrowserAccessibilityComWin::get_states(AccessibleStates* states) {
STDMETHODIMP BrowserAccessibilityComWin::get_uniqueID(LONG* unique_id) {
WIN_ACCESSIBILITY_API_HISTOGRAM(UMA_API_GET_UNIQUE_ID);
- if (!owner())
- return E_FAIL;
-
- if (!unique_id)
- return E_INVALIDARG;
-
- *unique_id = -owner()->unique_id();
- return S_OK;
+ return AXPlatformNodeWin::get_uniqueID(unique_id);
}
STDMETHODIMP BrowserAccessibilityComWin::get_windowHandle(HWND* window_handle) {
@@ -2040,11 +2033,11 @@ STDMETHODIMP BrowserAccessibilityComWin::get_hyperlink(
int32_t id = hyperlinks()[index];
BrowserAccessibilityComWin* link =
- ToBrowserAccessibilityComWin(owner()->GetFromUniqueID(id));
+ static_cast<BrowserAccessibilityComWin*>(GetFromUniqueId(id));
if (!link)
return E_FAIL;
-
- *hyperlink = static_cast<IAccessibleHyperlink*>(link->NewReference());
+ link->AddRef();
+ *hyperlink = static_cast<IAccessibleHyperlink*>(link);
return S_OK;
}
@@ -3550,12 +3543,6 @@ void BrowserAccessibilityComWin::Init(ui::AXPlatformNodeDelegate* delegate) {
AXPlatformNodeBase::Init(delegate);
}
-ui::AXPlatformNode* BrowserAccessibilityComWin::GetFromUniqueId(
- int32_t unique_id) {
- return ToBrowserAccessibilityComWin(
- BrowserAccessibility::GetFromUniqueID(unique_id));
-}
-
std::vector<base::string16> BrowserAccessibilityComWin::ComputeTextAttributes()
const {
std::vector<base::string16> attributes;
@@ -3804,8 +3791,8 @@ BrowserAccessibilityComWin* BrowserAccessibilityComWin::GetTargetFromChildID(
return ToBrowserAccessibilityComWin(
owner()->PlatformGetChild(child_id - 1));
- BrowserAccessibilityComWin* child = ToBrowserAccessibilityComWin(
- BrowserAccessibility::GetFromUniqueID(-child_id));
+ BrowserAccessibilityComWin* child =
+ static_cast<BrowserAccessibilityComWin*>(GetFromUniqueId(-child_id));
if (child && child->owner()->IsDescendantOf(owner()))
return child;
@@ -3910,7 +3897,8 @@ BrowserAccessibilityComWin::GetHyperlinkFromHypertextOffset(int offset) const {
DCHECK_LT(index, static_cast<int32_t>(hyperlinks().size()));
int32_t id = hyperlinks()[index];
BrowserAccessibilityComWin* hyperlink =
- ToBrowserAccessibilityComWin(owner()->GetFromUniqueID(id));
+ static_cast<BrowserAccessibilityComWin*>(GetFromUniqueId(id));
+
if (!hyperlink)
return nullptr;
return hyperlink;

Powered by Google App Engine
This is Rietveld 408576698