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/common/extensions/manifest_handlers/ui_overrides_handler.h" | 5 #include "chrome/common/extensions/manifest_handlers/ui_overrides_handler.h" |
6 | 6 |
7 #include "base/memory/scoped_ptr.h" | 7 #include "base/memory/scoped_ptr.h" |
8 #include "base/strings/string_util.h" | 8 #include "base/strings/string_util.h" |
9 #include "base/strings/utf_string_conversions.h" | 9 #include "base/strings/utf_string_conversions.h" |
10 #include "base/values.h" | 10 #include "base/values.h" |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
56 | 56 |
57 virtual bool FromValue(const base::Value* value) OVERRIDE { | 57 virtual bool FromValue(const base::Value* value) OVERRIDE { |
58 return value && value->GetAsBoolean(&override_bookmarks_ui_permission_); | 58 return value && value->GetAsBoolean(&override_bookmarks_ui_permission_); |
59 } | 59 } |
60 | 60 |
61 virtual scoped_ptr<base::Value> ToValue() const OVERRIDE { | 61 virtual scoped_ptr<base::Value> ToValue() const OVERRIDE { |
62 return scoped_ptr<base::Value>( | 62 return scoped_ptr<base::Value>( |
63 new base::FundamentalValue(override_bookmarks_ui_permission_)).Pass(); | 63 new base::FundamentalValue(override_bookmarks_ui_permission_)).Pass(); |
64 } | 64 } |
65 | 65 |
66 virtual ManifestPermission* Clone() const OVERRIDE { | |
67 return scoped_ptr<ManifestPermissionImpl>( | |
68 new ManifestPermissionImpl( | |
69 override_bookmarks_ui_permission_)).release(); | |
70 } | |
71 | |
72 virtual ManifestPermission* Diff(const ManifestPermission* rhs) const | 66 virtual ManifestPermission* Diff(const ManifestPermission* rhs) const |
73 OVERRIDE { | 67 OVERRIDE { |
74 const ManifestPermissionImpl* other = | 68 const ManifestPermissionImpl* other = |
75 static_cast<const ManifestPermissionImpl*>(rhs); | 69 static_cast<const ManifestPermissionImpl*>(rhs); |
76 | 70 |
77 return scoped_ptr<ManifestPermissionImpl>(new ManifestPermissionImpl( | 71 return scoped_ptr<ManifestPermissionImpl>(new ManifestPermissionImpl( |
78 override_bookmarks_ui_permission_ && | 72 override_bookmarks_ui_permission_ && |
79 !other->override_bookmarks_ui_permission_)).release(); | 73 !other->override_bookmarks_ui_permission_)).release(); |
80 } | 74 } |
81 | 75 |
(...skipping 10 matching lines...) Expand all Loading... |
92 virtual ManifestPermission* Intersect(const ManifestPermission* rhs) const | 86 virtual ManifestPermission* Intersect(const ManifestPermission* rhs) const |
93 OVERRIDE { | 87 OVERRIDE { |
94 const ManifestPermissionImpl* other = | 88 const ManifestPermissionImpl* other = |
95 static_cast<const ManifestPermissionImpl*>(rhs); | 89 static_cast<const ManifestPermissionImpl*>(rhs); |
96 | 90 |
97 return scoped_ptr<ManifestPermissionImpl>(new ManifestPermissionImpl( | 91 return scoped_ptr<ManifestPermissionImpl>(new ManifestPermissionImpl( |
98 override_bookmarks_ui_permission_ && | 92 override_bookmarks_ui_permission_ && |
99 other->override_bookmarks_ui_permission_)).release(); | 93 other->override_bookmarks_ui_permission_)).release(); |
100 } | 94 } |
101 | 95 |
102 virtual bool Contains(const ManifestPermission* rhs) const OVERRIDE { | |
103 const ManifestPermissionImpl* other = | |
104 static_cast<const ManifestPermissionImpl*>(rhs); | |
105 | |
106 return !other->override_bookmarks_ui_permission_ || | |
107 override_bookmarks_ui_permission_; | |
108 } | |
109 | |
110 virtual bool Equal(const ManifestPermission* rhs) const OVERRIDE { | |
111 const ManifestPermissionImpl* other = | |
112 static_cast<const ManifestPermissionImpl*>(rhs); | |
113 | |
114 return override_bookmarks_ui_permission_ == | |
115 other->override_bookmarks_ui_permission_; | |
116 } | |
117 | |
118 virtual void Write(IPC::Message* m) const OVERRIDE { | |
119 IPC::WriteParam(m, override_bookmarks_ui_permission_); | |
120 } | |
121 | |
122 virtual bool Read(const IPC::Message* m, PickleIterator* iter) OVERRIDE { | |
123 return IPC::ReadParam(m, iter, &override_bookmarks_ui_permission_); | |
124 } | |
125 | |
126 virtual void Log(std::string* log) const OVERRIDE { | |
127 IPC::LogParam(override_bookmarks_ui_permission_, log); | |
128 } | |
129 | |
130 private: | 96 private: |
131 bool override_bookmarks_ui_permission_; | 97 bool override_bookmarks_ui_permission_; |
132 }; | 98 }; |
133 | 99 |
134 UIOverrides::UIOverrides() {} | 100 UIOverrides::UIOverrides() {} |
135 | 101 |
136 UIOverrides::~UIOverrides() {} | 102 UIOverrides::~UIOverrides() {} |
137 | 103 |
138 const UIOverrides* UIOverrides::Get(const Extension* extension) { | 104 const UIOverrides* UIOverrides::Get(const Extension* extension) { |
139 return static_cast<UIOverrides*>( | 105 return static_cast<UIOverrides*>( |
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
214 const UIOverrides* data = UIOverrides::Get(extension); | 180 const UIOverrides* data = UIOverrides::Get(extension); |
215 if (data) | 181 if (data) |
216 return data->manifest_permission->Clone(); | 182 return data->manifest_permission->Clone(); |
217 return NULL; | 183 return NULL; |
218 } | 184 } |
219 const std::vector<std::string> UIOverridesHandler::Keys() const { | 185 const std::vector<std::string> UIOverridesHandler::Keys() const { |
220 return SingleKey(manifest_keys::kUIOverride); | 186 return SingleKey(manifest_keys::kUIOverride); |
221 } | 187 } |
222 | 188 |
223 } // namespace extensions | 189 } // namespace extensions |
OLD | NEW |