Chromium Code Reviews| Index: chrome/browser/extensions/extension_management_internal.h |
| diff --git a/chrome/browser/extensions/extension_management_internal.h b/chrome/browser/extensions/extension_management_internal.h |
| index d01bb339c9547c6b236612518172220044ee970a..72604731e82c7740a239abb3abedb821334c84e6 100644 |
| --- a/chrome/browser/extensions/extension_management_internal.h |
| +++ b/chrome/browser/extensions/extension_management_internal.h |
| @@ -10,6 +10,7 @@ |
| #include "base/macros.h" |
| #include "chrome/browser/extensions/extension_management.h" |
| #include "extensions/common/manifest.h" |
| +#include "extensions/common/permissions/api_permission_set.h" |
| namespace base { |
| class DictionaryValue; |
| @@ -42,6 +43,8 @@ struct IndividualSettings { |
| // management preference and |scope| represents the applicable range of the |
| // settings, a single extension, a group of extensions or default settings. |
| // Note that in case of parsing errors, |this| will NOT be left untouched. |
| + // This method is required to be called in order of ParsingScope, i.e. first |
| + // SCOPE_DEFAULT, then SCOPE_INDIVIDUAL. |
| bool Parse(const base::DictionaryValue* dict, ParsingScope scope); |
| // Extension installation mode. Setting this to INSTALLATION_FORCED or |
| @@ -55,6 +58,18 @@ struct IndividualSettings { |
| ExtensionManagement::InstallationMode installation_mode; |
| std::string update_url; |
| + // Permissions settings for extensions. These settings won't give granted |
|
Finnur
2014/10/30 14:16:59
nit: s/give granted/grant/ ?
binjin
2014/10/30 16:41:11
Done.
|
| + // permissions to extensions automatically. Instead, these settings will |
| + // provide a list of blocked permissions for each extension. That is, if |
| + // an extension requires a permission which is on the blocklist for it, |
|
Finnur
2014/10/30 14:16:59
s/is on the blocklist for it/has been blacklisted/
binjin
2014/10/30 16:41:11
Done.
|
| + // this extension will not be allowed to be loaded. And if it contains a |
|
Finnur
2014/10/30 14:16:59
s/be loaded/load/
binjin
2014/10/30 16:41:11
Done.
|
| + // blocked permission as optional requirement, it will be allowed to |
| + // be loaded (of course, with permission granted from other part of |
|
Finnur
2014/10/30 14:16:59
s/be loaded/load/
"with permission granted from o
binjin
2014/10/30 16:41:11
Done. I mean "granted by user if necessary", updat
|
| + // extension system), but conflicting permissions will not be usable. |
|
Finnur
2014/10/30 14:16:59
nit: s/not be usable/be dropped/ ?
binjin
2014/10/30 16:41:11
Done.
|
| + // These settings will merge from the default settings, and unspecified |
| + // settings will take value from default settings. |
| + APIPermissionSet blocked_permissions; |
| + |
| private: |
| DISALLOW_ASSIGN(IndividualSettings); |
| }; |