OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/automation/testing_automation_provider.h" | 5 #include "chrome/browser/automation/testing_automation_provider.h" |
6 | 6 |
7 #include <map> | 7 #include <map> |
8 #include <set> | 8 #include <set> |
9 #include <string> | 9 #include <string> |
10 #include <vector> | 10 #include <vector> |
(...skipping 2950 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2961 item->SetString("extension_id", ex_host->extension()->id()); | 2961 item->SetString("extension_id", ex_host->extension()->id()); |
2962 item->SetInteger( | 2962 item->SetInteger( |
2963 "pid", | 2963 "pid", |
2964 base::GetProcId(ex_host->render_process_host()->GetHandle())); | 2964 base::GetProcId(ex_host->render_process_host()->GetHandle())); |
2965 DictionaryValue* view = new DictionaryValue; | 2965 DictionaryValue* view = new DictionaryValue; |
2966 view->SetInteger( | 2966 view->SetInteger( |
2967 "render_process_id", | 2967 "render_process_id", |
2968 ex_host->render_process_host()->GetID()); | 2968 ex_host->render_process_host()->GetID()); |
2969 view->SetInteger( | 2969 view->SetInteger( |
2970 "render_view_id", | 2970 "render_view_id", |
2971 ex_host->render_view_host()->routing_id()); | 2971 ex_host->render_view_host()->GetRoutingID()); |
2972 item->Set("view", view); | 2972 item->Set("view", view); |
2973 std::string type; | 2973 std::string type; |
2974 switch (ex_host->extension_host_type()) { | 2974 switch (ex_host->extension_host_type()) { |
2975 case chrome::VIEW_TYPE_EXTENSION_BACKGROUND_PAGE: | 2975 case chrome::VIEW_TYPE_EXTENSION_BACKGROUND_PAGE: |
2976 type = "EXTENSION_BACKGROUND_PAGE"; | 2976 type = "EXTENSION_BACKGROUND_PAGE"; |
2977 break; | 2977 break; |
2978 case chrome::VIEW_TYPE_EXTENSION_POPUP: | 2978 case chrome::VIEW_TYPE_EXTENSION_POPUP: |
2979 type = "EXTENSION_POPUP"; | 2979 type = "EXTENSION_POPUP"; |
2980 break; | 2980 break; |
2981 case chrome::VIEW_TYPE_EXTENSION_INFOBAR: | 2981 case chrome::VIEW_TYPE_EXTENSION_INFOBAR: |
(...skipping 3143 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6125 AutomationJSONReply(this, reply_message).SendError( | 6125 AutomationJSONReply(this, reply_message).SendError( |
6126 StringPrintf("Could not get WebContents at tab index %d", tab_index)); | 6126 StringPrintf("Could not get WebContents at tab index %d", tab_index)); |
6127 return; | 6127 return; |
6128 } | 6128 } |
6129 | 6129 |
6130 RenderViewHost* render_view = web_contents->GetRenderViewHost(); | 6130 RenderViewHost* render_view = web_contents->GetRenderViewHost(); |
6131 | 6131 |
6132 // This observer will delete itself. | 6132 // This observer will delete itself. |
6133 new V8HeapStatsObserver( | 6133 new V8HeapStatsObserver( |
6134 this, reply_message, | 6134 this, reply_message, |
6135 base::GetProcId(render_view->process()->GetHandle())); | 6135 base::GetProcId(render_view->GetProcess()->GetHandle())); |
6136 render_view->Send(new ChromeViewMsg_GetV8HeapStats); | 6136 render_view->Send(new ChromeViewMsg_GetV8HeapStats); |
6137 } | 6137 } |
6138 | 6138 |
6139 // Sample json input: { "command": "GetFPS", | 6139 // Sample json input: { "command": "GetFPS", |
6140 // "tab_index": 0 } | 6140 // "tab_index": 0 } |
6141 // Refer to GetFPS() in chrome/test/pyautolib/pyauto.py for | 6141 // Refer to GetFPS() in chrome/test/pyautolib/pyauto.py for |
6142 // sample json output. | 6142 // sample json output. |
6143 void TestingAutomationProvider::GetFPS( | 6143 void TestingAutomationProvider::GetFPS( |
6144 Browser* browser, | 6144 Browser* browser, |
6145 DictionaryValue* args, | 6145 DictionaryValue* args, |
6146 IPC::Message* reply_message) { | 6146 IPC::Message* reply_message) { |
6147 WebContents* web_contents; | 6147 WebContents* web_contents; |
6148 int tab_index; | 6148 int tab_index; |
6149 std::string error; | 6149 std::string error; |
6150 | 6150 |
6151 if (!args->GetInteger("tab_index", &tab_index)) { | 6151 if (!args->GetInteger("tab_index", &tab_index)) { |
6152 AutomationJSONReply(this, reply_message).SendError( | 6152 AutomationJSONReply(this, reply_message).SendError( |
6153 "Missing 'tab_index' argument."); | 6153 "Missing 'tab_index' argument."); |
6154 return; | 6154 return; |
6155 } | 6155 } |
6156 | 6156 |
6157 web_contents = browser->GetWebContentsAt(tab_index); | 6157 web_contents = browser->GetWebContentsAt(tab_index); |
6158 if (!web_contents) { | 6158 if (!web_contents) { |
6159 AutomationJSONReply(this, reply_message).SendError( | 6159 AutomationJSONReply(this, reply_message).SendError( |
6160 StringPrintf("Could not get WebContents at tab index %d", tab_index)); | 6160 StringPrintf("Could not get WebContents at tab index %d", tab_index)); |
6161 return; | 6161 return; |
6162 } | 6162 } |
6163 | 6163 |
6164 RenderViewHost* render_view = web_contents->GetRenderViewHost(); | 6164 RenderViewHost* render_view = web_contents->GetRenderViewHost(); |
6165 int routing_id = render_view->routing_id(); | 6165 int routing_id = render_view->GetRoutingID(); |
6166 | 6166 |
6167 // This observer will delete itself. | 6167 // This observer will delete itself. |
6168 new FPSObserver( | 6168 new FPSObserver( |
6169 this, reply_message, | 6169 this, reply_message, |
6170 base::GetProcId(render_view->process()->GetHandle()), | 6170 base::GetProcId(render_view->GetProcess()->GetHandle()), |
6171 routing_id); | 6171 routing_id); |
6172 render_view->Send(new ChromeViewMsg_GetFPS(routing_id)); | 6172 render_view->Send(new ChromeViewMsg_GetFPS(routing_id)); |
6173 } | 6173 } |
6174 | 6174 |
6175 void TestingAutomationProvider::WaitForAllViewsToStopLoading( | 6175 void TestingAutomationProvider::WaitForAllViewsToStopLoading( |
6176 DictionaryValue* args, | 6176 DictionaryValue* args, |
6177 IPC::Message* reply_message) { | 6177 IPC::Message* reply_message) { |
6178 if (AppModalDialogQueue::GetInstance()->HasActiveDialog()) { | 6178 if (AppModalDialogQueue::GetInstance()->HasActiveDialog()) { |
6179 AutomationJSONReply(this, reply_message).SendSuccess(NULL); | 6179 AutomationJSONReply(this, reply_message).SendSuccess(NULL); |
6180 return; | 6180 return; |
(...skipping 738 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6919 bool* success) { | 6919 bool* success) { |
6920 *success = false; | 6920 *success = false; |
6921 if (tab_tracker_->ContainsHandle(tab_handle)) { | 6921 if (tab_tracker_->ContainsHandle(tab_handle)) { |
6922 NavigationController* nav = tab_tracker_->GetResource(tab_handle); | 6922 NavigationController* nav = tab_tracker_->GetResource(tab_handle); |
6923 if (!nav) | 6923 if (!nav) |
6924 return; | 6924 return; |
6925 WebContents* contents = nav->GetWebContents(); | 6925 WebContents* contents = nav->GetWebContents(); |
6926 if (!contents) | 6926 if (!contents) |
6927 return; | 6927 return; |
6928 RenderViewHost* host = contents->GetRenderViewHost(); | 6928 RenderViewHost* host = contents->GetRenderViewHost(); |
6929 host->Send(new ChromeViewMsg_LoadBlockedPlugins(host->routing_id())); | 6929 host->Send(new ChromeViewMsg_LoadBlockedPlugins(host->GetRoutingID())); |
6930 *success = true; | 6930 *success = true; |
6931 } | 6931 } |
6932 } | 6932 } |
6933 | 6933 |
6934 void TestingAutomationProvider::ResetToDefaultTheme() { | 6934 void TestingAutomationProvider::ResetToDefaultTheme() { |
6935 ThemeServiceFactory::GetForProfile(profile_)->UseDefaultTheme(); | 6935 ThemeServiceFactory::GetForProfile(profile_)->UseDefaultTheme(); |
6936 } | 6936 } |
6937 | 6937 |
6938 void TestingAutomationProvider::WaitForProcessLauncherThreadToGoIdle( | 6938 void TestingAutomationProvider::WaitForProcessLauncherThreadToGoIdle( |
6939 IPC::Message* reply_message) { | 6939 IPC::Message* reply_message) { |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6975 | 6975 |
6976 Send(reply_message_); | 6976 Send(reply_message_); |
6977 redirect_query_ = 0; | 6977 redirect_query_ = 0; |
6978 reply_message_ = NULL; | 6978 reply_message_ = NULL; |
6979 } | 6979 } |
6980 | 6980 |
6981 void TestingAutomationProvider::OnRemoveProvider() { | 6981 void TestingAutomationProvider::OnRemoveProvider() { |
6982 if (g_browser_process) | 6982 if (g_browser_process) |
6983 g_browser_process->GetAutomationProviderList()->RemoveProvider(this); | 6983 g_browser_process->GetAutomationProviderList()->RemoveProvider(this); |
6984 } | 6984 } |
OLD | NEW |