Index: chrome/browser/extensions/extension_preference_helpers.h |
diff --git a/chrome/browser/extensions/extension_preference_helpers.h b/chrome/browser/extensions/extension_preference_helpers.h |
index 70b28aae921ad9edbe810397fc78f1fa70352575..2901ca4f129a48d6fdec333a7e528b9d42ef9931 100644 |
--- a/chrome/browser/extensions/extension_preference_helpers.h |
+++ b/chrome/browser/extensions/extension_preference_helpers.h |
@@ -1,4 +1,4 @@ |
-// Copyright (c) 2011 The Chromium Authors. All rights reserved. |
+// Copyright (c) 2012 The Chromium Authors. All rights reserved. |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
@@ -8,10 +8,41 @@ |
#include <string> |
+#include "chrome/common/extensions/extension_permission_set.h" |
#include "chrome/browser/extensions/extension_prefs_scope.h" |
+class Profile; |
+ |
+namespace base { |
+class ListValue; |
+class DictionaryValue; |
+}; |
+ |
+ |
namespace extension_preference_helpers { |
+ |
bool StringToScope(const std::string& s, ExtensionPrefsScope* scope); |
+ |
+// Returns a string constant (defined in the API) indicating the level of |
+// control this extension has over the specified preference. |
+const char* GetLevelOfControl( |
+ Profile* profile, |
+ const std::string& extension_id, |
+ const std::string& browser_pref, |
+ bool incognito); |
+ |
+// Dispatches |event_name| to extensions listening to the event and holding |
+// |permission|. |args| is passed as arguments to the event listener. If |
+// |browser_pref| is not NULL, a level of control key-value for that pref is |
+// injected into the first item of |args|, which must be of type |
+// DictionaryValue. |
+void DispatchEventToExtensions( |
+ Profile* profile, |
+ const std::string& event_name, |
+ base::ListValue* args, |
+ ExtensionAPIPermission::ID permission, |
+ bool incognito, |
+ const char* browser_pref); |
} |
#endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_PREFERENCE_HELPERS_H_ |