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 f4d2092a7445cbed0ea58fa26113ab52401878cd..0ba526e5febcaeabef808482c3e6f88df439156f 100644 |
--- a/chrome/browser/extensions/api/automation_internal/automation_internal_api.cc |
+++ b/chrome/browser/extensions/api/automation_internal/automation_internal_api.cc |
@@ -6,11 +6,14 @@ |
#include <vector> |
+#include "base/containers/hash_tables.h" |
+#include "base/lazy_instance.h" |
#include "base/strings/string16.h" |
#include "base/strings/string_number_conversions.h" |
#include "base/strings/utf_string_conversions.h" |
#include "chrome/browser/accessibility/ax_tree_id_registry.h" |
#include "chrome/browser/extensions/api/automation_internal/automation_action_adapter.h" |
+#include "chrome/browser/extensions/api/automation_internal/automation_event_router.h" |
#include "chrome/browser/extensions/api/automation_internal/automation_util.h" |
#include "chrome/browser/extensions/api/tabs/tabs_constants.h" |
#include "chrome/browser/extensions/extension_tab_util.h" |
@@ -18,6 +21,7 @@ |
#include "chrome/browser/ui/browser.h" |
#include "chrome/browser/ui/tabs/tab_strip_model.h" |
#include "chrome/common/extensions/api/automation_internal.h" |
+#include "chrome/common/extensions/chrome_extension_messages.h" |
#include "chrome/common/extensions/manifest_handlers/automation.h" |
#include "content/public/browser/ax_event_notification_details.h" |
#include "content/public/browser/browser_accessibility_state.h" |
@@ -27,6 +31,8 @@ |
#include "content/public/browser/render_widget_host.h" |
#include "content/public/browser/render_widget_host_view.h" |
#include "content/public/browser/web_contents.h" |
+#include "extensions/browser/extension_host.h" |
+#include "extensions/browser/process_manager.h" |
#include "extensions/common/extension_messages.h" |
#include "extensions/common/permissions/permissions_data.h" |
@@ -351,6 +357,17 @@ AutomationInternalEnableDesktopFunction::Run() { |
if (!automation_info || !automation_info->desktop) |
return RespondNow(Error("desktop permission must be requested")); |
+ using api::automation_internal::EnableTab::Params; |
+ scoped_ptr<Params> params(Params::Create(*args_)); |
+ EXTENSION_FUNCTION_VALIDATE(params.get()); |
+ |
+ AutomationEventRouter* router = AutomationEventRouter::GetInstance(); |
+ router->AddListener(extension()->id(), |
not at google - send to devlin
2015/06/02 23:59:24
you might want to comment when this gets removed,
dmazzoni
2015/06/04 20:07:39
Done.
|
+ 0, |
+ source_process_id(), |
+ params->routing_id, |
+ true); |
+ |
AutomationManagerAura::GetInstance()->Enable(browser_context()); |
return RespondNow(NoArguments()); |
#else |