| 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/ui/webui/options/browser_options_handler.h" | 5 #include "chrome/browser/ui/webui/options/browser_options_handler.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
| (...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 107 | 107 |
| 108 using content::BrowserContext; | 108 using content::BrowserContext; |
| 109 using content::BrowserThread; | 109 using content::BrowserThread; |
| 110 using content::DownloadManager; | 110 using content::DownloadManager; |
| 111 using content::OpenURLParams; | 111 using content::OpenURLParams; |
| 112 using content::Referrer; | 112 using content::Referrer; |
| 113 using content::UserMetricsAction; | 113 using content::UserMetricsAction; |
| 114 | 114 |
| 115 namespace options { | 115 namespace options { |
| 116 | 116 |
| 117 namespace { |
| 118 const char kScreenMagnifierOff[] = "off"; |
| 119 const char kScreenMagnifierFull[] = "full"; |
| 120 const char kScreenMagnifierPartial[] = "partial"; |
| 121 } |
| 122 |
| 117 BrowserOptionsHandler::BrowserOptionsHandler() | 123 BrowserOptionsHandler::BrowserOptionsHandler() |
| 118 : page_initialized_(false), | 124 : page_initialized_(false), |
| 119 template_url_service_(NULL), | 125 template_url_service_(NULL), |
| 120 ALLOW_THIS_IN_INITIALIZER_LIST(weak_ptr_factory_for_file_(this)), | 126 ALLOW_THIS_IN_INITIALIZER_LIST(weak_ptr_factory_for_file_(this)), |
| 121 ALLOW_THIS_IN_INITIALIZER_LIST(weak_ptr_factory_for_ui_(this)) { | 127 ALLOW_THIS_IN_INITIALIZER_LIST(weak_ptr_factory_for_ui_(this)) { |
| 122 multiprofile_ = ProfileManager::IsMultipleProfilesEnabled(); | 128 multiprofile_ = ProfileManager::IsMultipleProfilesEnabled(); |
| 123 #if !defined(OS_MACOSX) | 129 #if !defined(OS_MACOSX) |
| 124 default_browser_worker_ = new ShellIntegration::DefaultBrowserWorker(this); | 130 default_browser_worker_ = new ShellIntegration::DefaultBrowserWorker(this); |
| 125 #endif | 131 #endif |
| 126 #if(!defined(GOOGLE_CHROME_BUILD) && defined(OS_WIN)) | 132 #if(!defined(GOOGLE_CHROME_BUILD) && defined(OS_WIN)) |
| (...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 280 { "themes", IDS_THEMES_GROUP_NAME }, | 286 { "themes", IDS_THEMES_GROUP_NAME }, |
| 281 { "themesReset", IDS_THEMES_RESET_BUTTON }, | 287 { "themesReset", IDS_THEMES_RESET_BUTTON }, |
| 282 #endif | 288 #endif |
| 283 #if defined(OS_CHROMEOS) | 289 #if defined(OS_CHROMEOS) |
| 284 { "accessibilityHighContrast", | 290 { "accessibilityHighContrast", |
| 285 IDS_OPTIONS_SETTINGS_ACCESSIBILITY_HIGH_CONTRAST_DESCRIPTION }, | 291 IDS_OPTIONS_SETTINGS_ACCESSIBILITY_HIGH_CONTRAST_DESCRIPTION }, |
| 286 { "accessibilityScreenMagnifier", | 292 { "accessibilityScreenMagnifier", |
| 287 IDS_OPTIONS_SETTINGS_ACCESSIBILITY_SCREEN_MAGNIFIER_DESCRIPTION }, | 293 IDS_OPTIONS_SETTINGS_ACCESSIBILITY_SCREEN_MAGNIFIER_DESCRIPTION }, |
| 288 { "accessibilityTapDragging", | 294 { "accessibilityTapDragging", |
| 289 IDS_OPTIONS_SETTINGS_ACCESSIBILITY_TOUCHPAD_TAP_DRAGGING_DESCRIPTION }, | 295 IDS_OPTIONS_SETTINGS_ACCESSIBILITY_TOUCHPAD_TAP_DRAGGING_DESCRIPTION }, |
| 296 { "accessibilityScreenMagnifierOff", |
| 297 IDS_OPTIONS_SETTINGS_ACCESSIBILITY_SCREEN_MAGNIFIER_OFF }, |
| 298 { "accessibilityScreenMagnifierFull", |
| 299 IDS_OPTIONS_SETTINGS_ACCESSIBILITY_SCREEN_MAGNIFIER_FULL }, |
| 300 { "accessibilityScreenMagnifierPartial", |
| 301 IDS_OPTIONS_SETTINGS_ACCESSIBILITY_SCREEN_MAGNIFIER_PARTIAL }, |
| 290 { "accessibilitySpokenFeedback", | 302 { "accessibilitySpokenFeedback", |
| 291 IDS_OPTIONS_SETTINGS_ACCESSIBILITY_DESCRIPTION }, | 303 IDS_OPTIONS_SETTINGS_ACCESSIBILITY_DESCRIPTION }, |
| 292 { "accessibilityTitle", | 304 { "accessibilityTitle", |
| 293 IDS_OPTIONS_SETTINGS_SECTION_TITLE_ACCESSIBILITY }, | 305 IDS_OPTIONS_SETTINGS_SECTION_TITLE_ACCESSIBILITY }, |
| 294 { "accessibilityVirtualKeyboard", | 306 { "accessibilityVirtualKeyboard", |
| 295 IDS_OPTIONS_SETTINGS_ACCESSIBILITY_VIRTUAL_KEYBOARD_DESCRIPTION }, | 307 IDS_OPTIONS_SETTINGS_ACCESSIBILITY_VIRTUAL_KEYBOARD_DESCRIPTION }, |
| 296 { "factoryResetTitle", IDS_OPTIONS_FACTORY_RESET }, | 308 { "factoryResetTitle", IDS_OPTIONS_FACTORY_RESET }, |
| 297 { "factoryResetRestart", IDS_OPTIONS_FACTORY_RESET_BUTTON }, | 309 { "factoryResetRestart", IDS_OPTIONS_FACTORY_RESET_BUTTON }, |
| 298 { "factoryResetDataRestart", IDS_RELAUNCH_BUTTON }, | 310 { "factoryResetDataRestart", IDS_RELAUNCH_BUTTON }, |
| 299 { "changePicture", IDS_OPTIONS_CHANGE_PICTURE_CAPTION }, | 311 { "changePicture", IDS_OPTIONS_CHANGE_PICTURE_CAPTION }, |
| (...skipping 962 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1262 | 1274 |
| 1263 void BrowserOptionsHandler::HighContrastChangeCallback(const ListValue* args) { | 1275 void BrowserOptionsHandler::HighContrastChangeCallback(const ListValue* args) { |
| 1264 bool enabled = false; | 1276 bool enabled = false; |
| 1265 args->GetBoolean(0, &enabled); | 1277 args->GetBoolean(0, &enabled); |
| 1266 | 1278 |
| 1267 chromeos::accessibility::EnableHighContrast(enabled); | 1279 chromeos::accessibility::EnableHighContrast(enabled); |
| 1268 } | 1280 } |
| 1269 | 1281 |
| 1270 void BrowserOptionsHandler::ScreenMagnifierChangeCallback( | 1282 void BrowserOptionsHandler::ScreenMagnifierChangeCallback( |
| 1271 const ListValue* args) { | 1283 const ListValue* args) { |
| 1272 bool enabled = false; | 1284 std::string type_name; |
| 1273 args->GetBoolean(0, &enabled); | 1285 args->GetString(0, &type_name); |
| 1274 | 1286 |
| 1275 chromeos::accessibility::EnableScreenMagnifier(enabled); | 1287 chromeos::accessibility::ScreenMagnifierType type = |
| 1288 chromeos::accessibility::MagnifierNone; |
| 1289 |
| 1290 if (type_name == kScreenMagnifierFull) |
| 1291 type = chromeos::accessibility::MagnifierFull; |
| 1292 else if (type_name == kScreenMagnifierPartial) |
| 1293 type = chromeos::accessibility::MagnifierPartial; |
| 1294 |
| 1295 chromeos::accessibility::SetScreenMagnifier(type); |
| 1276 } | 1296 } |
| 1277 | 1297 |
| 1278 void BrowserOptionsHandler::VirtualKeyboardChangeCallback( | 1298 void BrowserOptionsHandler::VirtualKeyboardChangeCallback( |
| 1279 const ListValue* args) { | 1299 const ListValue* args) { |
| 1280 bool enabled = false; | 1300 bool enabled = false; |
| 1281 args->GetBoolean(0, &enabled); | 1301 args->GetBoolean(0, &enabled); |
| 1282 | 1302 |
| 1283 chromeos::accessibility::EnableVirtualKeyboard(enabled); | 1303 chromeos::accessibility::EnableVirtualKeyboard(enabled); |
| 1284 } | 1304 } |
| 1285 | 1305 |
| (...skipping 19 matching lines...) Expand all Loading... |
| 1305 base::FundamentalValue spoken_feedback_enabled( | 1325 base::FundamentalValue spoken_feedback_enabled( |
| 1306 pref_service->GetBoolean(prefs::kSpokenFeedbackEnabled)); | 1326 pref_service->GetBoolean(prefs::kSpokenFeedbackEnabled)); |
| 1307 web_ui()->CallJavascriptFunction( | 1327 web_ui()->CallJavascriptFunction( |
| 1308 "BrowserOptions.setSpokenFeedbackCheckboxState", | 1328 "BrowserOptions.setSpokenFeedbackCheckboxState", |
| 1309 spoken_feedback_enabled); | 1329 spoken_feedback_enabled); |
| 1310 base::FundamentalValue high_contrast_enabled( | 1330 base::FundamentalValue high_contrast_enabled( |
| 1311 pref_service->GetBoolean(prefs::kHighContrastEnabled)); | 1331 pref_service->GetBoolean(prefs::kHighContrastEnabled)); |
| 1312 web_ui()->CallJavascriptFunction( | 1332 web_ui()->CallJavascriptFunction( |
| 1313 "BrowserOptions.setHighContrastCheckboxState", | 1333 "BrowserOptions.setHighContrastCheckboxState", |
| 1314 high_contrast_enabled); | 1334 high_contrast_enabled); |
| 1315 base::FundamentalValue screen_magnifier_enabled( | 1335 |
| 1316 pref_service->GetBoolean(prefs::kScreenMagnifierEnabled)); | 1336 std::string type(kScreenMagnifierOff); |
| 1337 if (pref_service->GetBoolean(prefs::kScreenMagnifierEnabled)) |
| 1338 type = kScreenMagnifierFull; |
| 1339 else if (pref_service->GetBoolean(prefs::kPartialScreenMagnifierEnabled)) |
| 1340 type = kScreenMagnifierPartial; |
| 1341 |
| 1342 base::StringValue magnifier_type(type); |
| 1317 web_ui()->CallJavascriptFunction( | 1343 web_ui()->CallJavascriptFunction( |
| 1318 "BrowserOptions.setScreenMagnifierCheckboxState", | 1344 "BrowserOptions.setScreenMagnifierTypeState", |
| 1319 screen_magnifier_enabled); | 1345 magnifier_type); |
| 1346 |
| 1320 base::FundamentalValue virtual_keyboard_enabled( | 1347 base::FundamentalValue virtual_keyboard_enabled( |
| 1321 pref_service->GetBoolean(prefs::kVirtualKeyboardEnabled)); | 1348 pref_service->GetBoolean(prefs::kVirtualKeyboardEnabled)); |
| 1322 web_ui()->CallJavascriptFunction( | 1349 web_ui()->CallJavascriptFunction( |
| 1323 "BrowserOptions.setVirtualKeyboardCheckboxState", | 1350 "BrowserOptions.setVirtualKeyboardCheckboxState", |
| 1324 virtual_keyboard_enabled); | 1351 virtual_keyboard_enabled); |
| 1325 } | 1352 } |
| 1326 #endif | 1353 #endif |
| 1327 | 1354 |
| 1328 void BrowserOptionsHandler::SetupMetricsReportingSettingVisibility() { | 1355 void BrowserOptionsHandler::SetupMetricsReportingSettingVisibility() { |
| 1329 #if defined(GOOGLE_CHROME_BUILD) && defined(OS_CHROMEOS) | 1356 #if defined(GOOGLE_CHROME_BUILD) && defined(OS_CHROMEOS) |
| (...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1419 l10n_util::GetStringUTF16(IDS_PRODUCT_NAME)); | 1446 l10n_util::GetStringUTF16(IDS_PRODUCT_NAME)); |
| 1420 } | 1447 } |
| 1421 StringValue label(label_str); | 1448 StringValue label(label_str); |
| 1422 | 1449 |
| 1423 web_ui()->CallJavascriptFunction( | 1450 web_ui()->CallJavascriptFunction( |
| 1424 "BrowserOptions.setupProxySettingsSection", disabled, label); | 1451 "BrowserOptions.setupProxySettingsSection", disabled, label); |
| 1425 #endif // !defined(OS_CHROMEOS) | 1452 #endif // !defined(OS_CHROMEOS) |
| 1426 } | 1453 } |
| 1427 | 1454 |
| 1428 } // namespace options | 1455 } // namespace options |
| OLD | NEW |