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

Side by Side Diff: chrome/browser/automation/testing_automation_provider.cc

Issue 10836015: Convert more automation calls to the JSON interface. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix some failing tests. Created 8 years, 4 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 393 matching lines...) Expand 10 before | Expand all | Expand 10 after
404 IPC_MESSAGE_HANDLER(AutomationMsg_WindowForBrowser, GetWindowForBrowser) 404 IPC_MESSAGE_HANDLER(AutomationMsg_WindowForBrowser, GetWindowForBrowser)
405 IPC_MESSAGE_HANDLER_DELAY_REPLY(AutomationMsg_WaitForTabToBeRestored, 405 IPC_MESSAGE_HANDLER_DELAY_REPLY(AutomationMsg_WaitForTabToBeRestored,
406 WaitForTabToBeRestored) 406 WaitForTabToBeRestored)
407 IPC_MESSAGE_HANDLER(AutomationMsg_GetSecurityState, GetSecurityState) 407 IPC_MESSAGE_HANDLER(AutomationMsg_GetSecurityState, GetSecurityState)
408 IPC_MESSAGE_HANDLER(AutomationMsg_GetPageType, GetPageType) 408 IPC_MESSAGE_HANDLER(AutomationMsg_GetPageType, GetPageType)
409 IPC_MESSAGE_HANDLER(AutomationMsg_GetMetricEventDuration, 409 IPC_MESSAGE_HANDLER(AutomationMsg_GetMetricEventDuration,
410 GetMetricEventDuration) 410 GetMetricEventDuration)
411 IPC_MESSAGE_HANDLER_DELAY_REPLY(AutomationMsg_ActionOnSSLBlockingPage, 411 IPC_MESSAGE_HANDLER_DELAY_REPLY(AutomationMsg_ActionOnSSLBlockingPage,
412 ActionOnSSLBlockingPage) 412 ActionOnSSLBlockingPage)
413 IPC_MESSAGE_HANDLER(AutomationMsg_BringBrowserToFront, BringBrowserToFront) 413 IPC_MESSAGE_HANDLER(AutomationMsg_BringBrowserToFront, BringBrowserToFront)
414 IPC_MESSAGE_HANDLER(AutomationMsg_OpenFindInPage,
415 HandleOpenFindInPageRequest)
416 IPC_MESSAGE_HANDLER(AutomationMsg_FindWindowVisibility, 414 IPC_MESSAGE_HANDLER(AutomationMsg_FindWindowVisibility,
417 GetFindWindowVisibility) 415 GetFindWindowVisibility)
418 IPC_MESSAGE_HANDLER(AutomationMsg_BookmarkBarVisibility, 416 IPC_MESSAGE_HANDLER(AutomationMsg_BookmarkBarVisibility,
419 GetBookmarkBarVisibility) 417 GetBookmarkBarVisibility)
420 IPC_MESSAGE_HANDLER(AutomationMsg_GetBookmarksAsJSON, 418 IPC_MESSAGE_HANDLER(AutomationMsg_GetBookmarksAsJSON,
421 GetBookmarksAsJSON) 419 GetBookmarksAsJSON)
422 IPC_MESSAGE_HANDLER_DELAY_REPLY(AutomationMsg_WaitForBookmarkModelToLoad, 420 IPC_MESSAGE_HANDLER_DELAY_REPLY(AutomationMsg_WaitForBookmarkModelToLoad,
423 WaitForBookmarkModelToLoad) 421 WaitForBookmarkModelToLoad)
424 IPC_MESSAGE_HANDLER(AutomationMsg_AddBookmarkGroup, 422 IPC_MESSAGE_HANDLER(AutomationMsg_AddBookmarkGroup,
425 AddBookmarkGroup) 423 AddBookmarkGroup)
(...skipping 18 matching lines...) Expand all
444 GoForwardBlockUntilNavigationsComplete) 442 GoForwardBlockUntilNavigationsComplete)
445 IPC_MESSAGE_HANDLER_DELAY_REPLY(AutomationMsg_SendJSONRequest, 443 IPC_MESSAGE_HANDLER_DELAY_REPLY(AutomationMsg_SendJSONRequest,
446 SendJSONRequestWithBrowserIndex) 444 SendJSONRequestWithBrowserIndex)
447 IPC_MESSAGE_HANDLER_DELAY_REPLY( 445 IPC_MESSAGE_HANDLER_DELAY_REPLY(
448 AutomationMsg_SendJSONRequestWithBrowserHandle, 446 AutomationMsg_SendJSONRequestWithBrowserHandle,
449 SendJSONRequestWithBrowserHandle) 447 SendJSONRequestWithBrowserHandle)
450 IPC_MESSAGE_HANDLER_DELAY_REPLY(AutomationMsg_WaitForTabCountToBecome, 448 IPC_MESSAGE_HANDLER_DELAY_REPLY(AutomationMsg_WaitForTabCountToBecome,
451 WaitForTabCountToBecome) 449 WaitForTabCountToBecome)
452 IPC_MESSAGE_HANDLER_DELAY_REPLY(AutomationMsg_WaitForInfoBarCount, 450 IPC_MESSAGE_HANDLER_DELAY_REPLY(AutomationMsg_WaitForInfoBarCount,
453 WaitForInfoBarCount) 451 WaitForInfoBarCount)
454 IPC_MESSAGE_HANDLER(AutomationMsg_ResetToDefaultTheme, ResetToDefaultTheme)
455 IPC_MESSAGE_HANDLER_DELAY_REPLY( 452 IPC_MESSAGE_HANDLER_DELAY_REPLY(
456 AutomationMsg_WaitForProcessLauncherThreadToGoIdle, 453 AutomationMsg_WaitForProcessLauncherThreadToGoIdle,
457 WaitForProcessLauncherThreadToGoIdle) 454 WaitForProcessLauncherThreadToGoIdle)
458 455
459 IPC_MESSAGE_UNHANDLED( 456 IPC_MESSAGE_UNHANDLED(
460 handled = AutomationProvider::OnMessageReceived(message)) 457 handled = AutomationProvider::OnMessageReceived(message))
461 IPC_END_MESSAGE_MAP_EX() 458 IPC_END_MESSAGE_MAP_EX()
462 if (!deserialize_success) 459 if (!deserialize_success)
463 OnMessageDeserializationFailure(); 460 OnMessageDeserializationFailure();
464 return handled; 461 return handled;
(...skipping 692 matching lines...) Expand 10 before | Expand all | Expand 10 after
1157 new BrowserOpenedNotificationObserver(this, reply_message, false); 1154 new BrowserOpenedNotificationObserver(this, reply_message, false);
1158 // We may have no current browser windows open so don't rely on 1155 // We may have no current browser windows open so don't rely on
1159 // asking an existing browser to execute the IDC_NEWWINDOW command 1156 // asking an existing browser to execute the IDC_NEWWINDOW command
1160 Browser* browser = new Browser( 1157 Browser* browser = new Browser(
1161 Browser::CreateParams(static_cast<Browser::Type>(type), profile_)); 1158 Browser::CreateParams(static_cast<Browser::Type>(type), profile_));
1162 chrome::AddBlankTab(browser, true); 1159 chrome::AddBlankTab(browser, true);
1163 if (show) 1160 if (show)
1164 browser->window()->Show(); 1161 browser->window()->Show();
1165 } 1162 }
1166 1163
1164 void TestingAutomationProvider::OpenNewBrowserWindow(
1165 base::DictionaryValue* args,
1166 IPC::Message* reply_message) {
1167 AutomationJSONReply reply(this, reply_message);
1168 bool show;
1169 if (!args->GetBoolean("show", &show)) {
1170 reply.SendError("'show' missing or invalid.");
1171 return;
1172 }
1173 new BrowserOpenedNotificationObserver(this, reply_message, true);
1174 Browser* browser = new Browser(
1175 Browser::CreateParams(Browser::TYPE_TABBED, profile_));
1176 chrome::AddBlankTab(browser, true);
1177 if (show)
1178 browser->window()->Show();
1179 }
1180
1181 void TestingAutomationProvider::GetBrowserWindowCountJSON(
1182 base::DictionaryValue* args,
1183 IPC::Message* reply_message) {
1184 DictionaryValue dict;
1185 dict.SetInteger("count", static_cast<int>(BrowserList::size()));
1186 AutomationJSONReply(this, reply_message).SendSuccess(&dict);
1187 }
1188
1189 void TestingAutomationProvider::CloseBrowserWindow(
1190 base::DictionaryValue* args,
1191 IPC::Message* reply_message) {
1192 AutomationJSONReply reply(this, reply_message);
1193 Browser* browser;
1194 std::string error_msg;
1195 if (!GetBrowserFromJSONArgs(args, &browser, &error_msg)) {
1196 reply.SendError(error_msg);
1197 return;
1198 }
1199 new BrowserClosedNotificationObserver(browser, this, reply_message, true);
1200 browser->window()->Close();
1201 }
1202
1167 void TestingAutomationProvider::OpenProfileWindow( 1203 void TestingAutomationProvider::OpenProfileWindow(
1168 base::DictionaryValue* args, IPC::Message* reply_message) { 1204 base::DictionaryValue* args, IPC::Message* reply_message) {
1169 ProfileManager* profile_manager = g_browser_process->profile_manager(); 1205 ProfileManager* profile_manager = g_browser_process->profile_manager();
1170 FilePath::StringType path; 1206 FilePath::StringType path;
1171 if (!args->GetString("path", &path)) { 1207 if (!args->GetString("path", &path)) {
1172 AutomationJSONReply(this, reply_message).SendError( 1208 AutomationJSONReply(this, reply_message).SendError(
1173 "Invalid or missing arg: 'path'"); 1209 "Invalid or missing arg: 'path'");
1174 return; 1210 return;
1175 } 1211 }
1176 Profile* profile = profile_manager->GetProfileByPath(FilePath(path)); 1212 Profile* profile = profile_manager->GetProfileByPath(FilePath(path));
(...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after
1306 void TestingAutomationProvider::BringBrowserToFront(int browser_handle, 1342 void TestingAutomationProvider::BringBrowserToFront(int browser_handle,
1307 bool* success) { 1343 bool* success) {
1308 *success = false; 1344 *success = false;
1309 if (browser_tracker_->ContainsHandle(browser_handle)) { 1345 if (browser_tracker_->ContainsHandle(browser_handle)) {
1310 Browser* browser = browser_tracker_->GetResource(browser_handle); 1346 Browser* browser = browser_tracker_->GetResource(browser_handle);
1311 browser->window()->Activate(); 1347 browser->window()->Activate();
1312 *success = true; 1348 *success = true;
1313 } 1349 }
1314 } 1350 }
1315 1351
1316 void TestingAutomationProvider::HandleOpenFindInPageRequest(
1317 const IPC::Message& message, int handle) {
1318 if (browser_tracker_->ContainsHandle(handle)) {
1319 Browser* browser = browser_tracker_->GetResource(handle);
1320 chrome::FindInPage(browser, false, false);
1321 }
1322 }
1323
1324 void TestingAutomationProvider::GetFindWindowVisibility(int handle, 1352 void TestingAutomationProvider::GetFindWindowVisibility(int handle,
1325 bool* visible) { 1353 bool* visible) {
1326 *visible = false; 1354 *visible = false;
1327 Browser* browser = browser_tracker_->GetResource(handle); 1355 Browser* browser = browser_tracker_->GetResource(handle);
1328 if (browser) { 1356 if (browser) {
1329 FindBarTesting* find_bar = 1357 FindBarTesting* find_bar =
1330 browser->GetFindBarController()->find_bar()->GetFindBarTesting(); 1358 browser->GetFindBarController()->find_bar()->GetFindBarTesting();
1331 find_bar->GetFindBarWindowInfo(NULL, visible); 1359 find_bar->GetFindBarWindowInfo(NULL, visible);
1332 } 1360 }
1333 } 1361 }
(...skipping 273 matching lines...) Expand 10 before | Expand all | Expand 10 after
1607 handler_map_["WaitForAllTabsToStopLoading"] = 1635 handler_map_["WaitForAllTabsToStopLoading"] =
1608 &TestingAutomationProvider::WaitForAllViewsToStopLoading; 1636 &TestingAutomationProvider::WaitForAllViewsToStopLoading;
1609 handler_map_["GetIndicesFromTab"] = 1637 handler_map_["GetIndicesFromTab"] =
1610 &TestingAutomationProvider::GetIndicesFromTab; 1638 &TestingAutomationProvider::GetIndicesFromTab;
1611 handler_map_["NavigateToURL"] = 1639 handler_map_["NavigateToURL"] =
1612 &TestingAutomationProvider::NavigateToURL; 1640 &TestingAutomationProvider::NavigateToURL;
1613 handler_map_["GetActiveTabIndex"] = 1641 handler_map_["GetActiveTabIndex"] =
1614 &TestingAutomationProvider::GetActiveTabIndexJSON; 1642 &TestingAutomationProvider::GetActiveTabIndexJSON;
1615 handler_map_["AppendTab"] = 1643 handler_map_["AppendTab"] =
1616 &TestingAutomationProvider::AppendTabJSON; 1644 &TestingAutomationProvider::AppendTabJSON;
1645 handler_map_["OpenNewBrowserWindow"] =
1646 &TestingAutomationProvider::OpenNewBrowserWindow;
1647 handler_map_["CloseBrowserWindow"] =
1648 &TestingAutomationProvider::CloseBrowserWindow;
1617 handler_map_["WaitUntilNavigationCompletes"] = 1649 handler_map_["WaitUntilNavigationCompletes"] =
1618 &TestingAutomationProvider::WaitUntilNavigationCompletes; 1650 &TestingAutomationProvider::WaitUntilNavigationCompletes;
1619 handler_map_["GetLocalStatePrefsInfo"] = 1651 handler_map_["GetLocalStatePrefsInfo"] =
1620 &TestingAutomationProvider::GetLocalStatePrefsInfo; 1652 &TestingAutomationProvider::GetLocalStatePrefsInfo;
1621 handler_map_["SetLocalStatePrefs"] = 1653 handler_map_["SetLocalStatePrefs"] =
1622 &TestingAutomationProvider::SetLocalStatePrefs; 1654 &TestingAutomationProvider::SetLocalStatePrefs;
1623 handler_map_["GetPrefsInfo"] = &TestingAutomationProvider::GetPrefsInfo; 1655 handler_map_["GetPrefsInfo"] = &TestingAutomationProvider::GetPrefsInfo;
1624 handler_map_["SetPrefs"] = &TestingAutomationProvider::SetPrefs; 1656 handler_map_["SetPrefs"] = &TestingAutomationProvider::SetPrefs;
1625 handler_map_["ExecuteJavascript"] = 1657 handler_map_["ExecuteJavascript"] =
1626 &TestingAutomationProvider::ExecuteJavascriptJSON; 1658 &TestingAutomationProvider::ExecuteJavascriptJSON;
1627 handler_map_["AddDomEventObserver"] = 1659 handler_map_["AddDomEventObserver"] =
1628 &TestingAutomationProvider::AddDomEventObserver; 1660 &TestingAutomationProvider::AddDomEventObserver;
1629 handler_map_["RemoveEventObserver"] = 1661 handler_map_["RemoveEventObserver"] =
1630 &TestingAutomationProvider::RemoveEventObserver; 1662 &TestingAutomationProvider::RemoveEventObserver;
1631 handler_map_["GetNextEvent"] = 1663 handler_map_["GetNextEvent"] =
1632 &TestingAutomationProvider::GetNextEvent; 1664 &TestingAutomationProvider::GetNextEvent;
1633 handler_map_["ClearEventQueue"] = 1665 handler_map_["ClearEventQueue"] =
1634 &TestingAutomationProvider::ClearEventQueue; 1666 &TestingAutomationProvider::ClearEventQueue;
1635 handler_map_["ExecuteJavascriptInRenderView"] = 1667 handler_map_["ExecuteJavascriptInRenderView"] =
1636 &TestingAutomationProvider::ExecuteJavascriptInRenderView; 1668 &TestingAutomationProvider::ExecuteJavascriptInRenderView;
1637 handler_map_["GoForward"] = 1669 handler_map_["GoForward"] =
1638 &TestingAutomationProvider::GoForward; 1670 &TestingAutomationProvider::GoForward;
1639 handler_map_["GoBack"] = 1671 handler_map_["GoBack"] =
1640 &TestingAutomationProvider::GoBack; 1672 &TestingAutomationProvider::GoBack;
1641 handler_map_["Reload"] = 1673 handler_map_["Reload"] =
1642 &TestingAutomationProvider::ReloadJSON; 1674 &TestingAutomationProvider::ReloadJSON;
1675 handler_map_["OpenFindInPage"] =
1676 &TestingAutomationProvider::OpenFindInPage;
1677 handler_map_["IsFindInPageVisible"] =
1678 &TestingAutomationProvider::IsFindInPageVisible;
1643 handler_map_["CaptureEntirePage"] = 1679 handler_map_["CaptureEntirePage"] =
1644 &TestingAutomationProvider::CaptureEntirePageJSON; 1680 &TestingAutomationProvider::CaptureEntirePageJSON;
1645 handler_map_["SetDownloadShelfVisible"] = 1681 handler_map_["SetDownloadShelfVisible"] =
1646 &TestingAutomationProvider::SetDownloadShelfVisibleJSON; 1682 &TestingAutomationProvider::SetDownloadShelfVisibleJSON;
1647 handler_map_["IsDownloadShelfVisible"] = 1683 handler_map_["IsDownloadShelfVisible"] =
1648 &TestingAutomationProvider::IsDownloadShelfVisibleJSON; 1684 &TestingAutomationProvider::IsDownloadShelfVisibleJSON;
1649 handler_map_["GetDownloadDirectory"] = 1685 handler_map_["GetDownloadDirectory"] =
1650 &TestingAutomationProvider::GetDownloadDirectoryJSON; 1686 &TestingAutomationProvider::GetDownloadDirectoryJSON;
1651 handler_map_["GetCookies"] = 1687 handler_map_["GetCookies"] =
1652 &TestingAutomationProvider::GetCookiesJSON; 1688 &TestingAutomationProvider::GetCookiesJSON;
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
1699 handler_map_["GetAppModalDialogMessage"] = 1735 handler_map_["GetAppModalDialogMessage"] =
1700 &TestingAutomationProvider::GetAppModalDialogMessage; 1736 &TestingAutomationProvider::GetAppModalDialogMessage;
1701 handler_map_["AcceptOrDismissAppModalDialog"] = 1737 handler_map_["AcceptOrDismissAppModalDialog"] =
1702 &TestingAutomationProvider::AcceptOrDismissAppModalDialog; 1738 &TestingAutomationProvider::AcceptOrDismissAppModalDialog;
1703 handler_map_["GetChromeDriverAutomationVersion"] = 1739 handler_map_["GetChromeDriverAutomationVersion"] =
1704 &TestingAutomationProvider::GetChromeDriverAutomationVersion; 1740 &TestingAutomationProvider::GetChromeDriverAutomationVersion;
1705 handler_map_["IsPageActionVisible"] = 1741 handler_map_["IsPageActionVisible"] =
1706 &TestingAutomationProvider::IsPageActionVisible; 1742 &TestingAutomationProvider::IsPageActionVisible;
1707 handler_map_["CreateNewAutomationProvider"] = 1743 handler_map_["CreateNewAutomationProvider"] =
1708 &TestingAutomationProvider::CreateNewAutomationProvider; 1744 &TestingAutomationProvider::CreateNewAutomationProvider;
1745 handler_map_["GetBrowserWindowCount"] =
1746 &TestingAutomationProvider::GetBrowserWindowCountJSON;
1709 handler_map_["GetBrowserInfo"] = 1747 handler_map_["GetBrowserInfo"] =
1710 &TestingAutomationProvider::GetBrowserInfo; 1748 &TestingAutomationProvider::GetBrowserInfo;
1711 handler_map_["GetTabInfo"] = 1749 handler_map_["GetTabInfo"] =
1712 &TestingAutomationProvider::GetTabInfo; 1750 &TestingAutomationProvider::GetTabInfo;
1713 handler_map_["GetTabCount"] = 1751 handler_map_["GetTabCount"] =
1714 &TestingAutomationProvider::GetTabCountJSON; 1752 &TestingAutomationProvider::GetTabCountJSON;
1715 handler_map_["OpenNewBrowserWindowWithNewProfile"] = 1753 handler_map_["OpenNewBrowserWindowWithNewProfile"] =
1716 &TestingAutomationProvider::OpenNewBrowserWindowWithNewProfile; 1754 &TestingAutomationProvider::OpenNewBrowserWindowWithNewProfile;
1717 handler_map_["GetMultiProfileInfo"] = 1755 handler_map_["GetMultiProfileInfo"] =
1718 &TestingAutomationProvider::GetMultiProfileInfo; 1756 &TestingAutomationProvider::GetMultiProfileInfo;
(...skipping 186 matching lines...) Expand 10 before | Expand all | Expand 10 after
1905 browser_handler_map_["GetSavedPasswords"] = 1943 browser_handler_map_["GetSavedPasswords"] =
1906 &TestingAutomationProvider::GetSavedPasswords; 1944 &TestingAutomationProvider::GetSavedPasswords;
1907 1945
1908 browser_handler_map_["ClearBrowsingData"] = 1946 browser_handler_map_["ClearBrowsingData"] =
1909 &TestingAutomationProvider::ClearBrowsingData; 1947 &TestingAutomationProvider::ClearBrowsingData;
1910 1948
1911 browser_handler_map_["GetBlockedPopupsInfo"] = 1949 browser_handler_map_["GetBlockedPopupsInfo"] =
1912 &TestingAutomationProvider::GetBlockedPopupsInfo; 1950 &TestingAutomationProvider::GetBlockedPopupsInfo;
1913 browser_handler_map_["UnblockAndLaunchBlockedPopup"] = 1951 browser_handler_map_["UnblockAndLaunchBlockedPopup"] =
1914 &TestingAutomationProvider::UnblockAndLaunchBlockedPopup; 1952 &TestingAutomationProvider::UnblockAndLaunchBlockedPopup;
1953 handler_map_["ResetToDefaultTheme"] =
1954 &TestingAutomationProvider::ResetToDefaultTheme;
1915 1955
1916 // SetTheme() implemented using InstallExtension(). 1956 // SetTheme() implemented using InstallExtension().
1917 browser_handler_map_["GetThemeInfo"] = 1957 browser_handler_map_["GetThemeInfo"] =
1918 &TestingAutomationProvider::GetThemeInfo; 1958 &TestingAutomationProvider::GetThemeInfo;
1919 1959
1920 browser_handler_map_["FindInPage"] = &TestingAutomationProvider::FindInPage; 1960 browser_handler_map_["FindInPage"] = &TestingAutomationProvider::FindInPage;
1921 1961
1922 browser_handler_map_["SelectTranslateOption"] = 1962 browser_handler_map_["SelectTranslateOption"] =
1923 &TestingAutomationProvider::SelectTranslateOption; 1963 &TestingAutomationProvider::SelectTranslateOption;
1924 browser_handler_map_["GetTranslateInfo"] = 1964 browser_handler_map_["GetTranslateInfo"] =
(...skipping 1870 matching lines...) Expand 10 before | Expand all | Expand 10 after
3795 } 3835 }
3796 SendFindRequest(tab_contents->web_contents(), 3836 SendFindRequest(tab_contents->web_contents(),
3797 true, 3837 true,
3798 search_string, 3838 search_string,
3799 forward, 3839 forward,
3800 match_case, 3840 match_case,
3801 find_next, 3841 find_next,
3802 reply_message); 3842 reply_message);
3803 } 3843 }
3804 3844
3845 void TestingAutomationProvider::OpenFindInPage(
3846 DictionaryValue* args,
3847 IPC::Message* reply_message) {
3848 AutomationJSONReply reply(this, reply_message);
3849 Browser* browser;
3850 std::string error_msg;
3851 if (!GetBrowserFromJSONArgs(args, &browser, &error_msg)) {
3852 reply.SendError(error_msg);
3853 return;
3854 }
3855 chrome::FindInPage(browser, false, false);
3856 reply.SendSuccess(NULL);
3857 }
3858
3859 void TestingAutomationProvider::IsFindInPageVisible(
3860 DictionaryValue* args,
3861 IPC::Message* reply_message) {
3862 AutomationJSONReply reply(this, reply_message);
3863 bool visible;
3864 Browser* browser;
3865 std::string error_msg;
3866 if (!GetBrowserFromJSONArgs(args, &browser, &error_msg)) {
3867 reply.SendError(error_msg);
3868 return;
3869 }
3870 FindBarTesting* find_bar =
3871 browser->GetFindBarController()->find_bar()->GetFindBarTesting();
3872 find_bar->GetFindBarWindowInfo(NULL, &visible);
3873 DictionaryValue dict;
3874 dict.SetBoolean("is_visible", visible);
3875 reply.SendSuccess(&dict);
3876 }
3877
3805 // See GetTranslateInfo() in chrome/test/pyautolib/pyauto.py for sample json 3878 // See GetTranslateInfo() in chrome/test/pyautolib/pyauto.py for sample json
3806 // input and output. 3879 // input and output.
3807 void TestingAutomationProvider::GetTranslateInfo( 3880 void TestingAutomationProvider::GetTranslateInfo(
3808 Browser* browser, 3881 Browser* browser,
3809 DictionaryValue* args, 3882 DictionaryValue* args,
3810 IPC::Message* reply_message) { 3883 IPC::Message* reply_message) {
3811 std::string error_message; 3884 std::string error_message;
3812 TabContents* tab_contents = 3885 TabContents* tab_contents =
3813 GetTabContentsFromDict(browser, args, &error_message); 3886 GetTabContentsFromDict(browser, args, &error_message);
3814 if (!tab_contents) { 3887 if (!tab_contents) {
(...skipping 3132 matching lines...) Expand 10 before | Expand all | Expand 10 after
6947 std::string error; 7020 std::string error;
6948 if (!GetBrowserAndTabFromJSONArgs(args, &browser, &web_contents, &error)) { 7021 if (!GetBrowserAndTabFromJSONArgs(args, &browser, &web_contents, &error)) {
6949 reply.SendError(error); 7022 reply.SendError(error);
6950 return; 7023 return;
6951 } 7024 }
6952 chrome::ActivateTabAt(browser, chrome::GetIndexOfTab(browser, web_contents), 7025 chrome::ActivateTabAt(browser, chrome::GetIndexOfTab(browser, web_contents),
6953 true); 7026 true);
6954 reply.SendSuccess(NULL); 7027 reply.SendSuccess(NULL);
6955 } 7028 }
6956 7029
7030 void TestingAutomationProvider::ResetToDefaultTheme(
7031 base::DictionaryValue* args,
7032 IPC::Message* reply_message) {
7033 AutomationJSONReply reply(this, reply_message);
7034 Browser* browser;
7035 std::string error_msg;
7036 if (!GetBrowserFromJSONArgs(args, &browser, &error_msg)) {
7037 reply.SendError(error_msg);
7038 return;
7039 }
7040 ThemeServiceFactory::GetForProfile(browser->profile())->UseDefaultTheme();
7041 reply.SendSuccess(NULL);
7042 }
7043
6957 void TestingAutomationProvider::IsPageActionVisible( 7044 void TestingAutomationProvider::IsPageActionVisible(
6958 base::DictionaryValue* args, 7045 base::DictionaryValue* args,
6959 IPC::Message* reply_message) { 7046 IPC::Message* reply_message) {
6960 AutomationJSONReply reply(this, reply_message); 7047 AutomationJSONReply reply(this, reply_message);
6961 7048
6962 WebContents* tab; 7049 WebContents* tab;
6963 std::string error; 7050 std::string error;
6964 if (!GetTabFromJSONArgs(args, &tab, &error)) { 7051 if (!GetTabFromJSONArgs(args, &tab, &error)) {
6965 reply.SendError(error); 7052 reply.SendError(error);
6966 return; 7053 return;
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after
7065 AutomationMsg_WaitForInfoBarCount::WriteReplyParams(reply_message_, false); 7152 AutomationMsg_WaitForInfoBarCount::WriteReplyParams(reply_message_, false);
7066 Send(reply_message_); 7153 Send(reply_message_);
7067 return; 7154 return;
7068 } 7155 }
7069 7156
7070 // The delegate will delete itself. 7157 // The delegate will delete itself.
7071 new InfoBarCountObserver(this, reply_message, 7158 new InfoBarCountObserver(this, reply_message,
7072 TabContents::FromWebContents(controller->GetWebContents()), target_count); 7159 TabContents::FromWebContents(controller->GetWebContents()), target_count);
7073 } 7160 }
7074 7161
7075 void TestingAutomationProvider::ResetToDefaultTheme() {
7076 ThemeServiceFactory::GetForProfile(profile_)->UseDefaultTheme();
7077 }
7078
7079 void TestingAutomationProvider::WaitForProcessLauncherThreadToGoIdle( 7162 void TestingAutomationProvider::WaitForProcessLauncherThreadToGoIdle(
7080 IPC::Message* reply_message) { 7163 IPC::Message* reply_message) {
7081 new WaitForProcessLauncherThreadToGoIdleObserver(this, reply_message); 7164 new WaitForProcessLauncherThreadToGoIdleObserver(this, reply_message);
7082 } 7165 }
7083 7166
7084 void TestingAutomationProvider::OnRemoveProvider() { 7167 void TestingAutomationProvider::OnRemoveProvider() {
7085 if (g_browser_process) 7168 if (g_browser_process)
7086 g_browser_process->GetAutomationProviderList()->RemoveProvider(this); 7169 g_browser_process->GetAutomationProviderList()->RemoveProvider(this);
7087 } 7170 }
7088 7171
7089 void TestingAutomationProvider::EnsureTabSelected(Browser* browser, 7172 void TestingAutomationProvider::EnsureTabSelected(Browser* browser,
7090 WebContents* tab) { 7173 WebContents* tab) {
7091 if (chrome::GetActiveWebContents(browser) != tab) 7174 if (chrome::GetActiveWebContents(browser) != tab)
7092 chrome::ActivateTabAt(browser, chrome::GetIndexOfTab(browser, tab), true); 7175 chrome::ActivateTabAt(browser, chrome::GetIndexOfTab(browser, tab), true);
7093 } 7176 }
OLDNEW
« no previous file with comments | « chrome/browser/automation/testing_automation_provider.h ('k') | chrome/common/automation_messages_internal.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698