| 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/content_settings_handler.h" | 5 #include "chrome/browser/ui/webui/options/content_settings_handler.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include <algorithm> | 9 #include <algorithm> |
| 10 #include <map> | 10 #include <map> |
| (...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 178 exceptions_info_map.insert(std::make_pair( | 178 exceptions_info_map.insert(std::make_pair( |
| 179 CONTENT_SETTINGS_TYPE_AUTOMATIC_DOWNLOADS, | 179 CONTENT_SETTINGS_TYPE_AUTOMATIC_DOWNLOADS, |
| 180 ContentSettingWithExceptions( | 180 ContentSettingWithExceptions( |
| 181 false, UserMetricsAction( | 181 false, UserMetricsAction( |
| 182 "Options_DefaultMultipleAutomaticDLSettingChange")))); | 182 "Options_DefaultMultipleAutomaticDLSettingChange")))); |
| 183 exceptions_info_map.insert(std::make_pair( | 183 exceptions_info_map.insert(std::make_pair( |
| 184 CONTENT_SETTINGS_TYPE_MIDI_SYSEX, | 184 CONTENT_SETTINGS_TYPE_MIDI_SYSEX, |
| 185 ContentSettingWithExceptions( | 185 ContentSettingWithExceptions( |
| 186 false, | 186 false, |
| 187 UserMetricsAction("Options_DefaultMIDISysExSettingChanged")))); | 187 UserMetricsAction("Options_DefaultMIDISysExSettingChanged")))); |
| 188 // TODO(riju): Add sensor metrics when UMA is added. |
| 188 exceptions_info_map.insert(std::make_pair( | 189 exceptions_info_map.insert(std::make_pair( |
| 189 CONTENT_SETTINGS_TYPE_BACKGROUND_SYNC, | 190 CONTENT_SETTINGS_TYPE_BACKGROUND_SYNC, |
| 190 ContentSettingWithExceptions( | 191 ContentSettingWithExceptions( |
| 191 false, | 192 false, |
| 192 UserMetricsAction("Options_DefaultBackgroundSyncSettingChanged")))); | 193 UserMetricsAction("Options_DefaultBackgroundSyncSettingChanged")))); |
| 193 } | 194 } |
| 194 | 195 |
| 195 return exceptions_info_map; | 196 return exceptions_info_map; |
| 196 } | 197 } |
| 197 | 198 |
| (...skipping 259 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 457 {"multipleAutomaticDownloadsTabLabel", IDS_AUTOMATIC_DOWNLOADS_TAB_LABEL}, | 458 {"multipleAutomaticDownloadsTabLabel", IDS_AUTOMATIC_DOWNLOADS_TAB_LABEL}, |
| 458 {"multipleAutomaticDownloadsHeader", IDS_AUTOMATIC_DOWNLOADS_TAB_LABEL}, | 459 {"multipleAutomaticDownloadsHeader", IDS_AUTOMATIC_DOWNLOADS_TAB_LABEL}, |
| 459 {"multipleAutomaticDownloadsAllow", IDS_AUTOMATIC_DOWNLOADS_ALLOW_RADIO}, | 460 {"multipleAutomaticDownloadsAllow", IDS_AUTOMATIC_DOWNLOADS_ALLOW_RADIO}, |
| 460 {"multipleAutomaticDownloadsAsk", IDS_AUTOMATIC_DOWNLOADS_ASK_RADIO}, | 461 {"multipleAutomaticDownloadsAsk", IDS_AUTOMATIC_DOWNLOADS_ASK_RADIO}, |
| 461 {"multipleAutomaticDownloadsBlock", IDS_AUTOMATIC_DOWNLOADS_BLOCK_RADIO}, | 462 {"multipleAutomaticDownloadsBlock", IDS_AUTOMATIC_DOWNLOADS_BLOCK_RADIO}, |
| 462 // MIDI system exclusive messages. | 463 // MIDI system exclusive messages. |
| 463 {"midiSysexHeader", IDS_MIDI_SYSEX_TAB_LABEL}, | 464 {"midiSysexHeader", IDS_MIDI_SYSEX_TAB_LABEL}, |
| 464 {"midiSysExAllow", IDS_MIDI_SYSEX_ALLOW_RADIO}, | 465 {"midiSysExAllow", IDS_MIDI_SYSEX_ALLOW_RADIO}, |
| 465 {"midiSysExAsk", IDS_MIDI_SYSEX_ASK_RADIO}, | 466 {"midiSysExAsk", IDS_MIDI_SYSEX_ASK_RADIO}, |
| 466 {"midiSysExBlock", IDS_MIDI_SYSEX_BLOCK_RADIO}, | 467 {"midiSysExBlock", IDS_MIDI_SYSEX_BLOCK_RADIO}, |
| 468 // Sensors filter. |
| 469 {"sensorsHeader", IDS_SENSORS_TAB_LABEL}, |
| 470 {"sensorsAllow", IDS_SENSORS_ALLOW_RADIO}, |
| 471 {"sensorsAsk", IDS_SENSORS_ASK_RADIO}, |
| 472 {"sensorsBlock", IDS_SENSORS_BLOCK_RADIO}, |
| 473 |
| 467 // Push messaging strings. | 474 // Push messaging strings. |
| 468 {"pushMessagingHeader", IDS_PUSH_MESSAGES_TAB_LABEL}, | 475 {"pushMessagingHeader", IDS_PUSH_MESSAGES_TAB_LABEL}, |
| 469 {"pushMessagingAllow", IDS_PUSH_MESSSAGING_ALLOW_RADIO}, | 476 {"pushMessagingAllow", IDS_PUSH_MESSSAGING_ALLOW_RADIO}, |
| 470 {"pushMessagingAsk", IDS_PUSH_MESSSAGING_ASK_RADIO}, | 477 {"pushMessagingAsk", IDS_PUSH_MESSSAGING_ASK_RADIO}, |
| 471 {"pushMessagingBlock", IDS_PUSH_MESSSAGING_BLOCK_RADIO}, | 478 {"pushMessagingBlock", IDS_PUSH_MESSSAGING_BLOCK_RADIO}, |
| 472 // USB devices. | 479 // USB devices. |
| 473 {"usbDevicesHeader", IDS_USB_DEVICES_HEADER_AND_TAB_LABEL}, | 480 {"usbDevicesHeader", IDS_USB_DEVICES_HEADER_AND_TAB_LABEL}, |
| 474 {"usbDevicesManage", IDS_USB_DEVICES_MANAGE_BUTTON}, | 481 {"usbDevicesManage", IDS_USB_DEVICES_MANAGE_BUTTON}, |
| 475 // Background sync. | 482 // Background sync. |
| 476 {"backgroundSyncHeader", IDS_BACKGROUND_SYNC_HEADER}, | 483 {"backgroundSyncHeader", IDS_BACKGROUND_SYNC_HEADER}, |
| (...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 538 RegisterTitle(localized_strings, "media-stream-mic", | 545 RegisterTitle(localized_strings, "media-stream-mic", |
| 539 IDS_MEDIA_STREAM_MIC_TAB_LABEL); | 546 IDS_MEDIA_STREAM_MIC_TAB_LABEL); |
| 540 RegisterTitle(localized_strings, "media-stream-camera", | 547 RegisterTitle(localized_strings, "media-stream-camera", |
| 541 IDS_MEDIA_STREAM_CAMERA_TAB_LABEL); | 548 IDS_MEDIA_STREAM_CAMERA_TAB_LABEL); |
| 542 RegisterTitle(localized_strings, "ppapi-broker", | 549 RegisterTitle(localized_strings, "ppapi-broker", |
| 543 IDS_PPAPI_BROKER_TAB_LABEL); | 550 IDS_PPAPI_BROKER_TAB_LABEL); |
| 544 RegisterTitle(localized_strings, "multiple-automatic-downloads", | 551 RegisterTitle(localized_strings, "multiple-automatic-downloads", |
| 545 IDS_AUTOMATIC_DOWNLOADS_TAB_LABEL); | 552 IDS_AUTOMATIC_DOWNLOADS_TAB_LABEL); |
| 546 RegisterTitle(localized_strings, "midi-sysex", | 553 RegisterTitle(localized_strings, "midi-sysex", |
| 547 IDS_MIDI_SYSEX_TAB_LABEL); | 554 IDS_MIDI_SYSEX_TAB_LABEL); |
| 555 RegisterTitle(localized_strings, "sensors", IDS_SENSORS_TAB_LABEL); |
| 548 RegisterTitle(localized_strings, "usb-devices", | 556 RegisterTitle(localized_strings, "usb-devices", |
| 549 IDS_USB_DEVICES_HEADER_AND_TAB_LABEL); | 557 IDS_USB_DEVICES_HEADER_AND_TAB_LABEL); |
| 550 RegisterTitle(localized_strings, "background-sync", | 558 RegisterTitle(localized_strings, "background-sync", |
| 551 IDS_BACKGROUND_SYNC_HEADER); | 559 IDS_BACKGROUND_SYNC_HEADER); |
| 552 RegisterTitle(localized_strings, "zoomlevels", | 560 RegisterTitle(localized_strings, "zoomlevels", |
| 553 IDS_ZOOMLEVELS_HEADER_AND_TAB_LABEL); | 561 IDS_ZOOMLEVELS_HEADER_AND_TAB_LABEL); |
| 554 | 562 |
| 555 localized_strings->SetString("exceptionsLearnMoreUrl", | 563 localized_strings->SetString("exceptionsLearnMoreUrl", |
| 556 chrome::kContentSettingsExceptionsLearnMoreURL); | 564 chrome::kContentSettingsExceptionsLearnMoreURL); |
| 557 } | 565 } |
| (...skipping 244 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 802 if (type == CONTENT_SETTINGS_TYPE_GEOLOCATION) { | 810 if (type == CONTENT_SETTINGS_TYPE_GEOLOCATION) { |
| 803 UpdateGeolocationExceptionsView(); | 811 UpdateGeolocationExceptionsView(); |
| 804 } else if (type == CONTENT_SETTINGS_TYPE_NOTIFICATIONS) { | 812 } else if (type == CONTENT_SETTINGS_TYPE_NOTIFICATIONS) { |
| 805 UpdateNotificationExceptionsView(); | 813 UpdateNotificationExceptionsView(); |
| 806 } else if (type == CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC || | 814 } else if (type == CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC || |
| 807 type == CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA) { | 815 type == CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA) { |
| 808 CompareMediaExceptionsWithFlash(type); | 816 CompareMediaExceptionsWithFlash(type); |
| 809 UpdateExceptionsViewFromHostContentSettingsMap(type); | 817 UpdateExceptionsViewFromHostContentSettingsMap(type); |
| 810 } else if (type == CONTENT_SETTINGS_TYPE_MIDI_SYSEX) { | 818 } else if (type == CONTENT_SETTINGS_TYPE_MIDI_SYSEX) { |
| 811 UpdateMIDISysExExceptionsView(); | 819 UpdateMIDISysExExceptionsView(); |
| 820 } else if (type == CONTENT_SETTINGS_TYPE_SENSORS) { |
| 821 UpdateSensorsExceptionsView(); |
| 812 } else { | 822 } else { |
| 813 UpdateExceptionsViewFromHostContentSettingsMap(type); | 823 UpdateExceptionsViewFromHostContentSettingsMap(type); |
| 814 } | 824 } |
| 815 } | 825 } |
| 816 | 826 |
| 817 // TODO(estade): merge with GetExceptionsFromHostContentSettingsMap. | 827 // TODO(estade): merge with GetExceptionsFromHostContentSettingsMap. |
| 818 void ContentSettingsHandler::UpdateGeolocationExceptionsView() { | 828 void ContentSettingsHandler::UpdateGeolocationExceptionsView() { |
| 819 Profile* profile = Profile::FromWebUI(web_ui()); | 829 Profile* profile = Profile::FromWebUI(web_ui()); |
| 820 HostContentSettingsMap* map = | 830 HostContentSettingsMap* map = |
| 821 HostContentSettingsMapFactory::GetForProfile(profile); | 831 HostContentSettingsMapFactory::GetForProfile(profile); |
| (...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 966 settings.exceptions_initialized = true; | 976 settings.exceptions_initialized = true; |
| 967 UpdateFlashMediaLinksVisibility(type); | 977 UpdateFlashMediaLinksVisibility(type); |
| 968 } | 978 } |
| 969 | 979 |
| 970 void ContentSettingsHandler::UpdateMIDISysExExceptionsView() { | 980 void ContentSettingsHandler::UpdateMIDISysExExceptionsView() { |
| 971 UpdateSettingDefaultFromModel(CONTENT_SETTINGS_TYPE_MIDI_SYSEX); | 981 UpdateSettingDefaultFromModel(CONTENT_SETTINGS_TYPE_MIDI_SYSEX); |
| 972 UpdateExceptionsViewFromHostContentSettingsMap( | 982 UpdateExceptionsViewFromHostContentSettingsMap( |
| 973 CONTENT_SETTINGS_TYPE_MIDI_SYSEX); | 983 CONTENT_SETTINGS_TYPE_MIDI_SYSEX); |
| 974 } | 984 } |
| 975 | 985 |
| 986 void ContentSettingsHandler::UpdateSensorsExceptionsView() { |
| 987 UpdateSettingDefaultFromModel(CONTENT_SETTINGS_TYPE_SENSORS); |
| 988 UpdateExceptionsViewFromHostContentSettingsMap(CONTENT_SETTINGS_TYPE_SENSORS); |
| 989 } |
| 990 |
| 976 void ContentSettingsHandler::UpdateAllChooserExceptionsViewsFromModel() { | 991 void ContentSettingsHandler::UpdateAllChooserExceptionsViewsFromModel() { |
| 977 for (const site_settings::ChooserTypeNameEntry& chooser_type : | 992 for (const site_settings::ChooserTypeNameEntry& chooser_type : |
| 978 site_settings::kChooserTypeGroupNames) | 993 site_settings::kChooserTypeGroupNames) |
| 979 UpdateChooserExceptionsViewFromModel(chooser_type); | 994 UpdateChooserExceptionsViewFromModel(chooser_type); |
| 980 } | 995 } |
| 981 | 996 |
| 982 void ContentSettingsHandler::UpdateAllOTRChooserExceptionsViewsFromModel() { | 997 void ContentSettingsHandler::UpdateAllOTRChooserExceptionsViewsFromModel() { |
| 983 for (const site_settings::ChooserTypeNameEntry& chooser_type : | 998 for (const site_settings::ChooserTypeNameEntry& chooser_type : |
| 984 site_settings::kChooserTypeGroupNames) | 999 site_settings::kChooserTypeGroupNames) |
| 985 UpdateOTRChooserExceptionsViewFromModel(chooser_type); | 1000 UpdateOTRChooserExceptionsViewFromModel(chooser_type); |
| (...skipping 499 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1485 | 1500 |
| 1486 // Exceptions apply only when the feature is enabled. | 1501 // Exceptions apply only when the feature is enabled. |
| 1487 PrefService* prefs = user_prefs::UserPrefs::Get(GetBrowserContext(web_ui())); | 1502 PrefService* prefs = user_prefs::UserPrefs::Get(GetBrowserContext(web_ui())); |
| 1488 bool enable_exceptions = prefs->GetBoolean(prefs::kEnableDRM); | 1503 bool enable_exceptions = prefs->GetBoolean(prefs::kEnableDRM); |
| 1489 web_ui()->CallJavascriptFunctionUnsafe( | 1504 web_ui()->CallJavascriptFunctionUnsafe( |
| 1490 "ContentSettings.enableProtectedContentExceptions", | 1505 "ContentSettings.enableProtectedContentExceptions", |
| 1491 base::Value(enable_exceptions)); | 1506 base::Value(enable_exceptions)); |
| 1492 } | 1507 } |
| 1493 | 1508 |
| 1494 } // namespace options | 1509 } // namespace options |
| OLD | NEW |