OLD | NEW |
---|---|
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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/policy/configuration_policy_handler_list_factory.h" | 5 #include "chrome/browser/policy/configuration_policy_handler_list_factory.h" |
6 | 6 |
7 #include <limits.h> | 7 #include <limits.h> |
8 #include <stddef.h> | 8 #include <stddef.h> |
9 | 9 |
10 #include <utility> | 10 #include <utility> |
(...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
149 base::Value::TYPE_BOOLEAN }, | 149 base::Value::TYPE_BOOLEAN }, |
150 { key::kShowHomeButton, | 150 { key::kShowHomeButton, |
151 prefs::kShowHomeButton, | 151 prefs::kShowHomeButton, |
152 base::Value::TYPE_BOOLEAN }, | 152 base::Value::TYPE_BOOLEAN }, |
153 { key::kSavingBrowserHistoryDisabled, | 153 { key::kSavingBrowserHistoryDisabled, |
154 prefs::kSavingBrowserHistoryDisabled, | 154 prefs::kSavingBrowserHistoryDisabled, |
155 base::Value::TYPE_BOOLEAN }, | 155 base::Value::TYPE_BOOLEAN }, |
156 { key::kAllowDeletingBrowserHistory, | 156 { key::kAllowDeletingBrowserHistory, |
157 prefs::kAllowDeletingBrowserHistory, | 157 prefs::kAllowDeletingBrowserHistory, |
158 base::Value::TYPE_BOOLEAN }, | 158 base::Value::TYPE_BOOLEAN }, |
159 { key::kDeveloperToolsDisabled, | 159 { key::kDeveloperToolsDisabled, |
Bernhard Bauer
2016/11/28 17:11:03
Could you just duplicate this entry with prefs::kE
pmarko
2016/11/29 12:40:21
Actually, I don't think I could - the issue is tha
| |
160 prefs::kDevToolsDisabled, | 160 prefs::kDevToolsDisabled, |
161 base::Value::TYPE_BOOLEAN }, | 161 base::Value::TYPE_BOOLEAN }, |
162 { key::kBlockThirdPartyCookies, | 162 { key::kBlockThirdPartyCookies, |
163 prefs::kBlockThirdPartyCookies, | 163 prefs::kBlockThirdPartyCookies, |
164 base::Value::TYPE_BOOLEAN }, | 164 base::Value::TYPE_BOOLEAN }, |
165 { key::kDefaultCookiesSetting, | 165 { key::kDefaultCookiesSetting, |
166 prefs::kManagedDefaultCookiesSetting, | 166 prefs::kManagedDefaultCookiesSetting, |
167 base::Value::TYPE_INTEGER }, | 167 base::Value::TYPE_INTEGER }, |
168 { key::kDefaultImagesSetting, | 168 { key::kDefaultImagesSetting, |
169 prefs::kManagedDefaultImagesSetting, | 169 prefs::kManagedDefaultImagesSetting, |
(...skipping 531 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
701 index < extensions::schema_constants::kAllowedTypesMapSize; | 701 index < extensions::schema_constants::kAllowedTypesMapSize; |
702 ++index) { | 702 ++index) { |
703 const extensions::schema_constants::AllowedTypesMapEntry& entry = | 703 const extensions::schema_constants::AllowedTypesMapEntry& entry = |
704 extensions::schema_constants::kAllowedTypesMap[index]; | 704 extensions::schema_constants::kAllowedTypesMap[index]; |
705 result->push_back( | 705 result->push_back( |
706 base::MakeUnique<StringMappingListPolicyHandler::MappingEntry>( | 706 base::MakeUnique<StringMappingListPolicyHandler::MappingEntry>( |
707 entry.name, std::unique_ptr<base::Value>( | 707 entry.name, std::unique_ptr<base::Value>( |
708 new base::FundamentalValue(entry.manifest_type)))); | 708 new base::FundamentalValue(entry.manifest_type)))); |
709 } | 709 } |
710 } | 710 } |
711 | |
712 // Piggy-back kDeveloperToolsDisabled set to true to also force-disable | |
713 // kExtensionsUIDeveloperMode. | |
714 class DevToolsExtensionsUIPolicyHandler : public TypeCheckingPolicyHandler { | |
715 public: | |
716 DevToolsExtensionsUIPolicyHandler() | |
717 : TypeCheckingPolicyHandler(key::kDeveloperToolsDisabled, | |
718 base::Value::TYPE_BOOLEAN) {} | |
719 ~DevToolsExtensionsUIPolicyHandler() override {} | |
720 | |
721 // ConfigurationPolicyHandler implementation: | |
722 void ApplyPolicySettings(const PolicyMap& policies, | |
723 PrefValueMap* prefs) override { | |
724 const base::Value* value = policies.GetValue(policy_name()); | |
725 bool developerToolsDisabled; | |
726 if (value && | |
727 value->GetAsBoolean(&developerToolsDisabled) && | |
728 developerToolsDisabled) { | |
729 prefs->SetValue( | |
730 prefs::kExtensionsUIDeveloperMode, | |
731 base::MakeUnique<base::FundamentalValue>(false)); | |
732 } | |
733 } | |
734 | |
735 private: | |
736 DISALLOW_COPY_AND_ASSIGN(DevToolsExtensionsUIPolicyHandler); | |
737 }; | |
711 #endif | 738 #endif |
712 | 739 |
713 void GetDeprecatedFeaturesMap( | 740 void GetDeprecatedFeaturesMap( |
714 std::vector<std::unique_ptr<StringMappingListPolicyHandler::MappingEntry>>* | 741 std::vector<std::unique_ptr<StringMappingListPolicyHandler::MappingEntry>>* |
715 result) { | 742 result) { |
716 // Maps feature tags as specified in policy to the corresponding switch to | 743 // Maps feature tags as specified in policy to the corresponding switch to |
717 // re-enable them. | 744 // re-enable them. |
718 } | 745 } |
719 | 746 |
720 } // namespace | 747 } // namespace |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
786 handlers->AddHandler( | 813 handlers->AddHandler( |
787 base::MakeUnique<extensions::ExtensionURLPatternListPolicyHandler>( | 814 base::MakeUnique<extensions::ExtensionURLPatternListPolicyHandler>( |
788 key::kExtensionInstallSources, | 815 key::kExtensionInstallSources, |
789 extensions::pref_names::kAllowedInstallSites)); | 816 extensions::pref_names::kAllowedInstallSites)); |
790 handlers->AddHandler(base::MakeUnique<StringMappingListPolicyHandler>( | 817 handlers->AddHandler(base::MakeUnique<StringMappingListPolicyHandler>( |
791 key::kExtensionAllowedTypes, extensions::pref_names::kAllowedTypes, | 818 key::kExtensionAllowedTypes, extensions::pref_names::kAllowedTypes, |
792 base::Bind(GetExtensionAllowedTypesMap))); | 819 base::Bind(GetExtensionAllowedTypesMap))); |
793 handlers->AddHandler( | 820 handlers->AddHandler( |
794 base::MakeUnique<extensions::ExtensionSettingsPolicyHandler>( | 821 base::MakeUnique<extensions::ExtensionSettingsPolicyHandler>( |
795 chrome_schema)); | 822 chrome_schema)); |
823 handlers->AddHandler( | |
824 base::MakeUnique<DevToolsExtensionsUIPolicyHandler>()); | |
796 #endif | 825 #endif |
797 | 826 |
798 #if !defined(OS_CHROMEOS) && !defined(OS_ANDROID) | 827 #if !defined(OS_CHROMEOS) && !defined(OS_ANDROID) |
799 handlers->AddHandler(base::MakeUnique<DiskCacheDirPolicyHandler>()); | 828 handlers->AddHandler(base::MakeUnique<DiskCacheDirPolicyHandler>()); |
800 | 829 |
801 handlers->AddHandler( | 830 handlers->AddHandler( |
802 base::MakeUnique<extensions::NativeMessagingHostListPolicyHandler>( | 831 base::MakeUnique<extensions::NativeMessagingHostListPolicyHandler>( |
803 key::kNativeMessagingWhitelist, | 832 key::kNativeMessagingWhitelist, |
804 extensions::pref_names::kNativeMessagingWhitelist, false)); | 833 extensions::pref_names::kNativeMessagingWhitelist, false)); |
805 handlers->AddHandler( | 834 handlers->AddHandler( |
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
928 #endif // defined(OS_CHROMEOS) | 957 #endif // defined(OS_CHROMEOS) |
929 | 958 |
930 #if BUILDFLAG(ENABLE_PLUGINS) | 959 #if BUILDFLAG(ENABLE_PLUGINS) |
931 handlers->AddHandler(base::MakeUnique<PluginPolicyHandler>()); | 960 handlers->AddHandler(base::MakeUnique<PluginPolicyHandler>()); |
932 #endif // BUILDFLAG(ENABLE_PLUGINS) | 961 #endif // BUILDFLAG(ENABLE_PLUGINS) |
933 | 962 |
934 return handlers; | 963 return handlers; |
935 } | 964 } |
936 | 965 |
937 } // namespace policy | 966 } // namespace policy |
OLD | NEW |