Chromium Code Reviews| Index: webkit/plugins/npapi/webplugininfo.h |
| diff --git a/webkit/plugins/npapi/webplugininfo.h b/webkit/plugins/npapi/webplugininfo.h |
| index 859665c1963614f0aa6b4ca3cf88b28c4c0fb4a0..5f980407a5503466b1af3ee520702802bb90e8a3 100644 |
| --- a/webkit/plugins/npapi/webplugininfo.h |
| +++ b/webkit/plugins/npapi/webplugininfo.h |
| @@ -31,6 +31,32 @@ struct WebPluginMimeType { |
| // Describes an available NPAPI plugin. |
| struct WebPluginInfo { |
| + // Defines the possible enabled state a plugin can have. |
| + // The enum values actually represent a 3-bit bitfield : |
| + // |PE|PD|U| - where |PE|PD| is policy state and U is user state. |
| + // PE == 1 means the plugin is forced to enabled state by policy |
| + // PD == 1 means the plugin is forced to disabled by policy |
| + // PE and PD CAN'T be both 1 but can be both 0 which mean no policy is set. |
| + // U == 1 means the user has disabled the plugin. |
| + // Because the plugin user state might have been changed before a policy was |
| + // introduced the user state might contradict the policy state in which case |
| + // the policy has precedence. |
| + enum EnabledStates { |
| + USER_ENABLED = 0, |
| + USER_DISABLED = 1 << 0, |
| + POLICY_DISABLED = 1 << 1, |
| + POLICY_ENABLED = 1 << 2, |
| + USER_ENABLED_POLICY_UNMANAGED = USER_ENABLED, |
| + USER_ENABLED_POLICY_DISABLED = USER_ENABLED| POLICY_DISABLED, |
| + USER_ENABLED_POLICY_ENABLED = USER_ENABLED | POLICY_ENABLED, |
| + USER_DISABLED_POLICY_UNMANAGED = USER_DISABLED, |
| + USER_DISABLED_POLICY_DISABLED = USER_DISABLED | POLICY_DISABLED, |
| + USER_DISABLED_POLICY_ENABLED = USER_DISABLED | POLICY_ENABLED, |
| + USER_MASK = USER_DISABLED, |
| + MANAGED_MASK = POLICY_DISABLED | POLICY_ENABLED, |
| + POLICY_UNMANAGED = -1 |
| + }; |
| + |
| WebPluginInfo(); |
| WebPluginInfo(const WebPluginInfo& rhs); |
| ~WebPluginInfo(); |
| @@ -58,9 +84,11 @@ struct WebPluginInfo { |
| std::vector<WebPluginMimeType> mime_types; |
| // Whether the plugin is enabled. |
|
jam
2011/01/15 00:51:34
nit: need to update comment
pastarmovj
2011/01/18 18:30:39
True. Done.
|
| - bool enabled; |
| + int enabled; |
| }; |
| +bool IsPluginEnabled(const WebPluginInfo& plugin); |
| + |
| } // namespace npapi |
| } // namespace webkit |