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 393 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
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 Loading... |
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 Loading... |
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 Loading... |
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 Loading... |
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 Loading... |
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 Loading... |
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 Loading... |
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 Loading... |
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 Loading... |
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 } |
OLD | NEW |