OLD | NEW |
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2009 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/automation_provider.h" | 5 #include "chrome/browser/automation/automation_provider.h" |
6 | 6 |
7 #include <set> | 7 #include <set> |
8 | 8 |
9 #include "app/l10n_util.h" | 9 #include "app/l10n_util.h" |
10 #include "app/message_box_flags.h" | 10 #include "app/message_box_flags.h" |
(...skipping 399 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
410 GetShowingAppModalDialog) | 410 GetShowingAppModalDialog) |
411 IPC_MESSAGE_HANDLER(AutomationMsg_ClickAppModalDialogButton, | 411 IPC_MESSAGE_HANDLER(AutomationMsg_ClickAppModalDialogButton, |
412 ClickAppModalDialogButton) | 412 ClickAppModalDialogButton) |
413 IPC_MESSAGE_HANDLER(AutomationMsg_SetStringPreference, SetStringPreference) | 413 IPC_MESSAGE_HANDLER(AutomationMsg_SetStringPreference, SetStringPreference) |
414 IPC_MESSAGE_HANDLER(AutomationMsg_GetBooleanPreference, | 414 IPC_MESSAGE_HANDLER(AutomationMsg_GetBooleanPreference, |
415 GetBooleanPreference) | 415 GetBooleanPreference) |
416 IPC_MESSAGE_HANDLER(AutomationMsg_SetBooleanPreference, | 416 IPC_MESSAGE_HANDLER(AutomationMsg_SetBooleanPreference, |
417 SetBooleanPreference) | 417 SetBooleanPreference) |
418 IPC_MESSAGE_HANDLER(AutomationMsg_GetPageCurrentEncoding, | 418 IPC_MESSAGE_HANDLER(AutomationMsg_GetPageCurrentEncoding, |
419 GetPageCurrentEncoding) | 419 GetPageCurrentEncoding) |
420 IPC_MESSAGE_HANDLER(AutomationMsg_ToggleEncodingAutoDetect, | |
421 ToggleEncodingAutoDetect) | |
422 IPC_MESSAGE_HANDLER(AutomationMsg_OverrideEncoding, OverrideEncoding) | 420 IPC_MESSAGE_HANDLER(AutomationMsg_OverrideEncoding, OverrideEncoding) |
423 IPC_MESSAGE_HANDLER(AutomationMsg_SavePackageShouldPromptUser, | 421 IPC_MESSAGE_HANDLER(AutomationMsg_SavePackageShouldPromptUser, |
424 SavePackageShouldPromptUser) | 422 SavePackageShouldPromptUser) |
425 IPC_MESSAGE_HANDLER(AutomationMsg_WindowTitle, GetWindowTitle) | 423 IPC_MESSAGE_HANDLER(AutomationMsg_WindowTitle, GetWindowTitle) |
426 #if defined(OS_WIN) | 424 #if defined(OS_WIN) |
427 // Depends on ExternalTabContainer, so Windows-only | 425 // Depends on ExternalTabContainer, so Windows-only |
428 IPC_MESSAGE_HANDLER(AutomationMsg_SetEnableExtensionAutomation, | 426 IPC_MESSAGE_HANDLER(AutomationMsg_SetEnableExtensionAutomation, |
429 SetEnableExtensionAutomation) | 427 SetEnableExtensionAutomation) |
430 #endif | 428 #endif |
431 IPC_MESSAGE_HANDLER(AutomationMsg_SetShelfVisibility, SetShelfVisibility) | 429 IPC_MESSAGE_HANDLER(AutomationMsg_SetShelfVisibility, SetShelfVisibility) |
(...skipping 1453 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1885 *success = false; | 1883 *success = false; |
1886 if (browser_tracker_->ContainsHandle(handle)) { | 1884 if (browser_tracker_->ContainsHandle(handle)) { |
1887 Browser* browser = browser_tracker_->GetResource(handle); | 1885 Browser* browser = browser_tracker_->GetResource(handle); |
1888 browser->profile()->GetPrefs()->SetString(name.c_str(), value); | 1886 browser->profile()->GetPrefs()->SetString(name.c_str(), value); |
1889 *success = true; | 1887 *success = true; |
1890 } | 1888 } |
1891 } | 1889 } |
1892 | 1890 |
1893 void AutomationProvider::GetBooleanPreference(int handle, | 1891 void AutomationProvider::GetBooleanPreference(int handle, |
1894 const std::wstring& name, | 1892 const std::wstring& name, |
1895 bool* value, | 1893 bool* success, |
1896 bool* success) { | 1894 bool* value) { |
1897 *success = false; | 1895 *success = false; |
1898 *value = false; | 1896 *value = false; |
1899 if (browser_tracker_->ContainsHandle(handle)) { | 1897 if (browser_tracker_->ContainsHandle(handle)) { |
1900 Browser* browser = browser_tracker_->GetResource(handle); | 1898 Browser* browser = browser_tracker_->GetResource(handle); |
1901 *value = browser->profile()->GetPrefs()->GetBoolean(name.c_str()); | 1899 *value = browser->profile()->GetPrefs()->GetBoolean(name.c_str()); |
1902 *success = true; | 1900 *success = true; |
1903 } | 1901 } |
1904 } | 1902 } |
1905 | 1903 |
1906 void AutomationProvider::SetBooleanPreference(int handle, | 1904 void AutomationProvider::SetBooleanPreference(int handle, |
(...skipping 14 matching lines...) Expand all Loading... |
1921 if (tab_tracker_->ContainsHandle(tab_handle)) { | 1919 if (tab_tracker_->ContainsHandle(tab_handle)) { |
1922 NavigationController* nav = tab_tracker_->GetResource(tab_handle); | 1920 NavigationController* nav = tab_tracker_->GetResource(tab_handle); |
1923 Browser* browser = FindAndActivateTab(nav); | 1921 Browser* browser = FindAndActivateTab(nav); |
1924 DCHECK(browser); | 1922 DCHECK(browser); |
1925 | 1923 |
1926 if (browser->command_updater()->IsCommandEnabled(IDC_ENCODING_MENU)) | 1924 if (browser->command_updater()->IsCommandEnabled(IDC_ENCODING_MENU)) |
1927 *current_encoding = nav->tab_contents()->encoding(); | 1925 *current_encoding = nav->tab_contents()->encoding(); |
1928 } | 1926 } |
1929 } | 1927 } |
1930 | 1928 |
1931 // Toggles the encoding auto-detect setting. | 1929 // Gets the current used encoding name of the page in the specified tab. |
1932 // While the setting is global, the tab needs to be specified as it may need | |
1933 // to be reloaded. | |
1934 void AutomationProvider::ToggleEncodingAutoDetect(int tab_handle, | |
1935 bool* success) { | |
1936 *success = false; | |
1937 #if defined(OS_WIN) | |
1938 if (tab_tracker_->ContainsHandle(tab_handle)) { | |
1939 NavigationController* nav = tab_tracker_->GetResource(tab_handle); | |
1940 Browser* browser = FindAndActivateTab(nav); | |
1941 DCHECK(browser); | |
1942 | |
1943 if (browser->command_updater()->IsCommandEnabled(IDC_ENCODING_MENU)) { | |
1944 browser->ToggleEncodingAutoDetect(); | |
1945 *success = true; | |
1946 } | |
1947 } | |
1948 #else | |
1949 // TODO(port): Enable when encoding-related parts of Browser are ported. | |
1950 NOTIMPLEMENTED(); | |
1951 #endif | |
1952 } | |
1953 | |
1954 // Sets the override encoding for the page in the specified tab. | |
1955 void AutomationProvider::OverrideEncoding(int tab_handle, | 1930 void AutomationProvider::OverrideEncoding(int tab_handle, |
1956 const std::string& encoding_name, | 1931 const std::string& encoding_name, |
1957 bool* success) { | 1932 bool* success) { |
1958 *success = false; | 1933 *success = false; |
1959 #if defined(OS_WIN) | 1934 #if defined(OS_WIN) |
1960 if (tab_tracker_->ContainsHandle(tab_handle)) { | 1935 if (tab_tracker_->ContainsHandle(tab_handle)) { |
1961 NavigationController* nav = tab_tracker_->GetResource(tab_handle); | 1936 NavigationController* nav = tab_tracker_->GetResource(tab_handle); |
1962 Browser* browser = FindAndActivateTab(nav); | 1937 Browser* browser = FindAndActivateTab(nav); |
1963 DCHECK(browser); | 1938 DCHECK(browser); |
1964 | 1939 |
(...skipping 266 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2231 reply_message); | 2206 reply_message); |
2232 | 2207 |
2233 profile_->GetExtensionsService()->LoadExtension(extension_dir); | 2208 profile_->GetExtensionsService()->LoadExtension(extension_dir); |
2234 profile_->GetUserScriptMaster()->AddWatchedPath(extension_dir); | 2209 profile_->GetUserScriptMaster()->AddWatchedPath(extension_dir); |
2235 } else { | 2210 } else { |
2236 AutomationMsg_LoadExpandedExtension::WriteReplyParams( | 2211 AutomationMsg_LoadExpandedExtension::WriteReplyParams( |
2237 reply_message, AUTOMATION_MSG_EXTENSION_INSTALL_FAILED); | 2212 reply_message, AUTOMATION_MSG_EXTENSION_INSTALL_FAILED); |
2238 Send(reply_message); | 2213 Send(reply_message); |
2239 } | 2214 } |
2240 } | 2215 } |
OLD | NEW |