| OLD | NEW |
| 1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 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 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 73 #include "chrome/browser/password_manager/password_store.h" | 73 #include "chrome/browser/password_manager/password_store.h" |
| 74 #include "chrome/browser/password_manager/password_store_change.h" | 74 #include "chrome/browser/password_manager/password_store_change.h" |
| 75 #include "chrome/browser/password_manager/password_store_factory.h" | 75 #include "chrome/browser/password_manager/password_store_factory.h" |
| 76 #include "chrome/browser/platform_util.h" | 76 #include "chrome/browser/platform_util.h" |
| 77 #include "chrome/browser/plugins/plugin_prefs.h" | 77 #include "chrome/browser/plugins/plugin_prefs.h" |
| 78 #include "chrome/browser/prefs/pref_service.h" | 78 #include "chrome/browser/prefs/pref_service.h" |
| 79 #include "chrome/browser/printing/print_preview_tab_controller.h" | 79 #include "chrome/browser/printing/print_preview_tab_controller.h" |
| 80 #include "chrome/browser/profiles/profile.h" | 80 #include "chrome/browser/profiles/profile.h" |
| 81 #include "chrome/browser/profiles/profile_info_cache.h" | 81 #include "chrome/browser/profiles/profile_info_cache.h" |
| 82 #include "chrome/browser/profiles/profile_manager.h" | 82 #include "chrome/browser/profiles/profile_manager.h" |
| 83 #include "chrome/browser/protector/protector_service.h" | |
| 84 #include "chrome/browser/protector/protector_service_factory.h" | |
| 85 #include "chrome/browser/protector/protector_utils.h" | |
| 86 #include "chrome/browser/search_engines/template_url.h" | 83 #include "chrome/browser/search_engines/template_url.h" |
| 87 #include "chrome/browser/search_engines/template_url_service.h" | 84 #include "chrome/browser/search_engines/template_url_service.h" |
| 88 #include "chrome/browser/search_engines/template_url_service_factory.h" | 85 #include "chrome/browser/search_engines/template_url_service_factory.h" |
| 89 #include "chrome/browser/sessions/session_service_factory.h" | 86 #include "chrome/browser/sessions/session_service_factory.h" |
| 90 #include "chrome/browser/sessions/session_tab_helper.h" | 87 #include "chrome/browser/sessions/session_tab_helper.h" |
| 91 #include "chrome/browser/sync/profile_sync_service.h" | 88 #include "chrome/browser/sync/profile_sync_service.h" |
| 92 #include "chrome/browser/sync/profile_sync_service_factory.h" | 89 #include "chrome/browser/sync/profile_sync_service_factory.h" |
| 93 #include "chrome/browser/ui/app_modal_dialogs/app_modal_dialog.h" | 90 #include "chrome/browser/ui/app_modal_dialogs/app_modal_dialog.h" |
| 94 #include "chrome/browser/ui/app_modal_dialogs/app_modal_dialog_queue.h" | 91 #include "chrome/browser/ui/app_modal_dialogs/app_modal_dialog_queue.h" |
| 95 #include "chrome/browser/ui/app_modal_dialogs/javascript_app_modal_dialog.h" | 92 #include "chrome/browser/ui/app_modal_dialogs/javascript_app_modal_dialog.h" |
| (...skipping 1806 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1902 | 1899 |
| 1903 browser_handler_map_["LoadSearchEngineInfo"] = | 1900 browser_handler_map_["LoadSearchEngineInfo"] = |
| 1904 &TestingAutomationProvider::LoadSearchEngineInfo; | 1901 &TestingAutomationProvider::LoadSearchEngineInfo; |
| 1905 browser_handler_map_["GetSearchEngineInfo"] = | 1902 browser_handler_map_["GetSearchEngineInfo"] = |
| 1906 &TestingAutomationProvider::GetSearchEngineInfo; | 1903 &TestingAutomationProvider::GetSearchEngineInfo; |
| 1907 browser_handler_map_["AddOrEditSearchEngine"] = | 1904 browser_handler_map_["AddOrEditSearchEngine"] = |
| 1908 &TestingAutomationProvider::AddOrEditSearchEngine; | 1905 &TestingAutomationProvider::AddOrEditSearchEngine; |
| 1909 browser_handler_map_["PerformActionOnSearchEngine"] = | 1906 browser_handler_map_["PerformActionOnSearchEngine"] = |
| 1910 &TestingAutomationProvider::PerformActionOnSearchEngine; | 1907 &TestingAutomationProvider::PerformActionOnSearchEngine; |
| 1911 | 1908 |
| 1912 #if defined(ENABLE_PROTECTOR_SERVICE) | |
| 1913 browser_handler_map_["GetProtectorState"] = | |
| 1914 &TestingAutomationProvider::GetProtectorState; | |
| 1915 browser_handler_map_["PerformProtectorAction"] = | |
| 1916 &TestingAutomationProvider::PerformProtectorAction; | |
| 1917 #endif | |
| 1918 | |
| 1919 browser_handler_map_["SetWindowDimensions"] = | 1909 browser_handler_map_["SetWindowDimensions"] = |
| 1920 &TestingAutomationProvider::SetWindowDimensions; | 1910 &TestingAutomationProvider::SetWindowDimensions; |
| 1921 | 1911 |
| 1922 browser_handler_map_["GetDownloadsInfo"] = | 1912 browser_handler_map_["GetDownloadsInfo"] = |
| 1923 &TestingAutomationProvider::GetDownloadsInfo; | 1913 &TestingAutomationProvider::GetDownloadsInfo; |
| 1924 browser_handler_map_["WaitForAllDownloadsToComplete"] = | 1914 browser_handler_map_["WaitForAllDownloadsToComplete"] = |
| 1925 &TestingAutomationProvider::WaitForAllDownloadsToComplete; | 1915 &TestingAutomationProvider::WaitForAllDownloadsToComplete; |
| 1926 browser_handler_map_["PerformActionOnDownload"] = | 1916 browser_handler_map_["PerformActionOnDownload"] = |
| 1927 &TestingAutomationProvider::PerformActionOnDownload; | 1917 &TestingAutomationProvider::PerformActionOnDownload; |
| 1928 | 1918 |
| (...skipping 963 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2892 } else if (action == "default") { | 2882 } else if (action == "default") { |
| 2893 url_model->AddObserver(new AutomationProviderSearchEngineObserver( | 2883 url_model->AddObserver(new AutomationProviderSearchEngineObserver( |
| 2894 this, browser->profile(), reply_message)); | 2884 this, browser->profile(), reply_message)); |
| 2895 url_model->SetDefaultSearchProvider(template_url); | 2885 url_model->SetDefaultSearchProvider(template_url); |
| 2896 } else { | 2886 } else { |
| 2897 AutomationJSONReply(this, reply_message).SendError( | 2887 AutomationJSONReply(this, reply_message).SendError( |
| 2898 "Invalid action: " + action); | 2888 "Invalid action: " + action); |
| 2899 } | 2889 } |
| 2900 } | 2890 } |
| 2901 | 2891 |
| 2902 #if defined(ENABLE_PROTECTOR_SERVICE) | |
| 2903 // Sample json output: { "enabled": true, | |
| 2904 // "showing_change": false } | |
| 2905 void TestingAutomationProvider::GetProtectorState( | |
| 2906 Browser* browser, | |
| 2907 DictionaryValue* args, | |
| 2908 IPC::Message* reply_message) { | |
| 2909 protector::ProtectorService* protector_service = | |
| 2910 protector::ProtectorServiceFactory::GetForProfile(browser->profile()); | |
| 2911 scoped_ptr<DictionaryValue> return_value(new DictionaryValue); | |
| 2912 return_value->SetBoolean("enabled", protector::IsEnabled()); | |
| 2913 return_value->SetBoolean("showing_change", | |
| 2914 protector_service->IsShowingChange()); | |
| 2915 AutomationJSONReply(this, reply_message).SendSuccess(return_value.get()); | |
| 2916 } | |
| 2917 | |
| 2918 // Sample json inputs: | |
| 2919 // { "command": "PerformProtectorAction", "action": "apply_change" } | |
| 2920 // { "command": "PerformProtectorAction", "action": "discard_change" } | |
| 2921 void TestingAutomationProvider::PerformProtectorAction( | |
| 2922 Browser* browser, | |
| 2923 base::DictionaryValue* args, | |
| 2924 IPC::Message* reply_message) { | |
| 2925 protector::ProtectorService* protector_service = | |
| 2926 protector::ProtectorServiceFactory::GetForProfile(browser->profile()); | |
| 2927 AutomationJSONReply reply(this, reply_message); | |
| 2928 if (!protector::IsEnabled()) { | |
| 2929 reply.SendError("Protector is disabled"); | |
| 2930 return; | |
| 2931 } | |
| 2932 std::string action; | |
| 2933 if (!args->GetString("action", &action)) { | |
| 2934 reply.SendError("Missing 'action' value"); | |
| 2935 return; | |
| 2936 } | |
| 2937 protector::BaseSettingChange* change = | |
| 2938 protector_service->GetLastChange(); | |
| 2939 if (action == "apply_change") | |
| 2940 protector_service->ApplyChange(change, browser); | |
| 2941 else if (action == "discard_change") | |
| 2942 protector_service->DiscardChange(change, browser); | |
| 2943 else | |
| 2944 return reply.SendError("Invalid 'action' value"); | |
| 2945 reply.SendSuccess(NULL); | |
| 2946 } | |
| 2947 #endif // defined(ENABLE_PROTECTOR_SERVICE) | |
| 2948 | |
| 2949 // Sample json input: { "command": "GetLocalStatePrefsInfo" } | 2892 // Sample json input: { "command": "GetLocalStatePrefsInfo" } |
| 2950 // Refer chrome/test/pyautolib/prefs_info.py for sample json output. | 2893 // Refer chrome/test/pyautolib/prefs_info.py for sample json output. |
| 2951 void TestingAutomationProvider::GetLocalStatePrefsInfo( | 2894 void TestingAutomationProvider::GetLocalStatePrefsInfo( |
| 2952 DictionaryValue* args, | 2895 DictionaryValue* args, |
| 2953 IPC::Message* reply_message) { | 2896 IPC::Message* reply_message) { |
| 2954 DictionaryValue* items = g_browser_process->local_state()-> | 2897 DictionaryValue* items = g_browser_process->local_state()-> |
| 2955 GetPreferenceValues(); | 2898 GetPreferenceValues(); |
| 2956 scoped_ptr<DictionaryValue> return_value(new DictionaryValue); | 2899 scoped_ptr<DictionaryValue> return_value(new DictionaryValue); |
| 2957 return_value->Set("prefs", items); // return_value owns items. | 2900 return_value->Set("prefs", items); // return_value owns items. |
| 2958 AutomationJSONReply(this, reply_message).SendSuccess(return_value.get()); | 2901 AutomationJSONReply(this, reply_message).SendSuccess(return_value.get()); |
| (...skipping 3373 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6332 if (g_browser_process) | 6275 if (g_browser_process) |
| 6333 g_browser_process->GetAutomationProviderList()->RemoveProvider(this); | 6276 g_browser_process->GetAutomationProviderList()->RemoveProvider(this); |
| 6334 } | 6277 } |
| 6335 | 6278 |
| 6336 void TestingAutomationProvider::EnsureTabSelected(Browser* browser, | 6279 void TestingAutomationProvider::EnsureTabSelected(Browser* browser, |
| 6337 WebContents* tab) { | 6280 WebContents* tab) { |
| 6338 TabStripModel* tab_strip = browser->tab_strip_model(); | 6281 TabStripModel* tab_strip = browser->tab_strip_model(); |
| 6339 if (tab_strip->GetActiveWebContents() != tab) | 6282 if (tab_strip->GetActiveWebContents() != tab) |
| 6340 tab_strip->ActivateTabAt(tab_strip->GetIndexOfWebContents(tab), true); | 6283 tab_strip->ActivateTabAt(tab_strip->GetIndexOfWebContents(tab), true); |
| 6341 } | 6284 } |
| OLD | NEW |