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

Unified Diff: chrome/browser/extensions/api/automation_internal/automation_internal_api.cc

Issue 273423004: Migrate accessibility from RenderView to RenderFrame. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 6 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: chrome/browser/extensions/api/automation_internal/automation_internal_api.cc
diff --git a/chrome/browser/extensions/api/automation_internal/automation_internal_api.cc b/chrome/browser/extensions/api/automation_internal/automation_internal_api.cc
index 62b038ea4bd37fe7504819db6003213966cd4573..a2b93f8cbe1b76a5564daab8a7f29b1eaec61aa1 100644
--- a/chrome/browser/extensions/api/automation_internal/automation_internal_api.cc
+++ b/chrome/browser/extensions/api/automation_internal/automation_internal_api.cc
@@ -16,8 +16,8 @@
#include "chrome/common/extensions/api/automation_internal.h"
#include "chrome/common/extensions/manifest_handlers/automation.h"
#include "content/public/browser/ax_event_notification_details.h"
+#include "content/public/browser/render_frame_host.h"
#include "content/public/browser/render_process_host.h"
-#include "content/public/browser/render_view_host.h"
#include "content/public/browser/render_widget_host.h"
#include "content/public/browser/render_widget_host_view.h"
#include "content/public/browser/web_contents.h"
@@ -78,11 +78,11 @@ class AutomationWebContentsObserver
details, browser_context_);
}
- virtual void RenderViewDeleted(
- content::RenderViewHost* render_view_host) OVERRIDE {
+ virtual void RenderFrameDeleted(
+ content::RenderFrameHost* render_frame_host) OVERRIDE {
automation_util::DispatchTreeDestroyedEventToAutomation(
- render_view_host->GetProcess()->GetID(),
- render_view_host->GetRoutingID(),
+ render_frame_host->GetProcess()->GetID(),
+ render_frame_host->GetRoutingID(),
browser_context_);
}
@@ -99,35 +99,35 @@ class AutomationWebContentsObserver
DISALLOW_COPY_AND_ASSIGN(AutomationWebContentsObserver);
};
-// Helper class that implements an action adapter for a |RenderWidgetHost|.
-class RenderWidgetHostActionAdapter : public AutomationActionAdapter {
+// Helper class that implements an action adapter for a |RenderFrameHost|.
+class RenderFrameHostActionAdapter : public AutomationActionAdapter {
public:
- explicit RenderWidgetHostActionAdapter(content::RenderWidgetHost* rwh)
- : rwh_(rwh) {}
+ explicit RenderFrameHostActionAdapter(content::RenderFrameHost* rfh)
+ : rfh_(rfh) {}
- virtual ~RenderWidgetHostActionAdapter() {}
+ virtual ~RenderFrameHostActionAdapter() {}
// AutomationActionAdapter implementation.
virtual void DoDefault(int32 id) OVERRIDE {
- rwh_->AccessibilityDoDefaultAction(id);
+ rfh_->AccessibilityDoDefaultAction(id);
}
virtual void Focus(int32 id) OVERRIDE {
- rwh_->AccessibilitySetFocus(id);
+ rfh_->AccessibilitySetFocus(id);
}
virtual void MakeVisible(int32 id) OVERRIDE {
- rwh_->AccessibilityScrollToMakeVisible(id, gfx::Rect());
+ rfh_->AccessibilityScrollToMakeVisible(id, gfx::Rect());
}
virtual void SetSelection(int32 id, int32 start, int32 end) OVERRIDE {
- rwh_->AccessibilitySetTextSelection(id, start, end);
+ rfh_->AccessibilitySetTextSelection(id, start, end);
}
private:
- content::RenderWidgetHost* rwh_;
+ content::RenderFrameHost* rfh_;
- DISALLOW_COPY_AND_ASSIGN(RenderWidgetHostActionAdapter);
+ DISALLOW_COPY_AND_ASSIGN(RenderFrameHostActionAdapter);
};
ExtensionFunction::ResponseAction
@@ -156,9 +156,8 @@ AutomationInternalEnableTabFunction::Run() {
if (!contents)
return RespondNow(Error("No active tab"));
}
- content::RenderWidgetHost* rwh =
- contents->GetRenderWidgetHostView()->GetRenderWidgetHost();
- if (!rwh)
+ content::RenderFrameHost* rfh = contents->GetMainFrame();
+ if (!rfh)
return RespondNow(Error("Could not enable accessibility for active tab"));
if (!CanRequestAutomation(GetExtension(), automation_info, contents)) {
@@ -166,10 +165,10 @@ AutomationInternalEnableTabFunction::Run() {
Error(kCannotRequestAutomationOnPage, contents->GetURL().spec()));
}
AutomationWebContentsObserver::CreateForWebContents(contents);
- rwh->EnableTreeOnlyAccessibilityMode();
+ contents->EnableTreeOnlyAccessibilityMode();
return RespondNow(
ArgumentList(api::automation_internal::EnableTab::Results::Create(
- rwh->GetProcess()->GetID(), rwh->GetRoutingID())));
+ rfh->GetProcess()->GetID(), rfh->GetRoutingID())));
}
ExtensionFunction::ResponseAction
@@ -192,21 +191,20 @@ AutomationInternalPerformActionFunction::Run() {
" platform does not support desktop automation"));
#endif // defined(OS_CHROMEOS)
}
- content::RenderWidgetHost* rwh = content::RenderWidgetHost::FromID(
- params->args.process_id, params->args.routing_id);
-
- if (!rwh)
+ content::RenderFrameHost* rfh =
+ content::RenderFrameHost::FromID(params->args.process_id,
+ params->args.routing_id);
+ if (!rfh)
return RespondNow(Error("Ignoring action on destroyed node"));
- if (rwh->IsRenderView()) {
- const content::RenderViewHost* rvh = content::RenderViewHost::From(rwh);
- const content::WebContents* contents =
- content::WebContents::FromRenderViewHost(rvh);
- if (!CanRequestAutomation(GetExtension(), automation_info, contents)) {
- return RespondNow(
- Error(kCannotRequestAutomationOnPage, contents->GetURL().spec()));
- }
+
+ const content::WebContents* contents =
+ content::WebContents::FromRenderFrameHost(rfh);
+ if (!CanRequestAutomation(GetExtension(), automation_info, contents)) {
+ return RespondNow(
+ Error(kCannotRequestAutomationOnPage, contents->GetURL().spec()));
}
- RenderWidgetHostActionAdapter adapter(rwh);
+
+ RenderFrameHostActionAdapter adapter(rfh);
return RouteActionToAdapter(params.get(), &adapter);
}

Powered by Google App Engine
This is Rietveld 408576698