| OLD | NEW |
| 1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2009 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 #ifndef CHROME_BROWSER_EXTENSIONS_EXTENSION_PREFS_H_ | 5 #ifndef CHROME_BROWSER_EXTENSIONS_EXTENSION_PREFS_H_ |
| 6 #define CHROME_BROWSER_EXTENSIONS_EXTENSION_PREFS_H_ | 6 #define CHROME_BROWSER_EXTENSIONS_EXTENSION_PREFS_H_ |
| 7 | 7 |
| 8 #include <set> | 8 #include <set> |
| 9 #include <string> | 9 #include <string> |
| 10 #include <vector> | 10 #include <vector> |
| (...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 52 // Called when an extension is uninstalled, so that prefs get cleaned up. | 52 // Called when an extension is uninstalled, so that prefs get cleaned up. |
| 53 void OnExtensionUninstalled(const Extension* extension, | 53 void OnExtensionUninstalled(const Extension* extension, |
| 54 bool external_uninstall); | 54 bool external_uninstall); |
| 55 | 55 |
| 56 // Returns the state (enabled/disabled) of the given extension. | 56 // Returns the state (enabled/disabled) of the given extension. |
| 57 Extension::State GetExtensionState(const std::string& extension_id); | 57 Extension::State GetExtensionState(const std::string& extension_id); |
| 58 | 58 |
| 59 // Called to change the extension's state when it is enabled/disabled. | 59 // Called to change the extension's state when it is enabled/disabled. |
| 60 void SetExtensionState(Extension* extension, Extension::State); | 60 void SetExtensionState(Extension* extension, Extension::State); |
| 61 | 61 |
| 62 // If |require| is true, the preferences for |extension| will be set to | 62 // Did the extension ask to escalate its permission during an upgrade? |
| 63 bool DidExtensionEscalatePermissions(const std::string& id); |
| 64 |
| 65 // If |did_escalate| is true, the preferences for |extension| will be set to |
| 63 // require the install warning when the user tries to enable. | 66 // require the install warning when the user tries to enable. |
| 64 void SetShowInstallWarningOnEnable(Extension* extension, bool require); | 67 void SetDidExtensionEscalatePermissions(Extension* extension, |
| 68 bool did_escalate); |
| 65 | 69 |
| 66 // Returns the version string for the currently installed extension, or | 70 // Returns the version string for the currently installed extension, or |
| 67 // the empty string if not found. | 71 // the empty string if not found. |
| 68 std::string GetVersionString(const std::string& extension_id); | 72 std::string GetVersionString(const std::string& extension_id); |
| 69 | 73 |
| 70 // Re-writes the extension manifest into the prefs. | 74 // Re-writes the extension manifest into the prefs. |
| 71 // Called to change the extension's manifest when it's re-localized. | 75 // Called to change the extension's manifest when it's re-localized. |
| 72 void UpdateManifest(Extension* extension); | 76 void UpdateManifest(Extension* extension); |
| 73 | 77 |
| 74 // Returns extension path based on extension ID, or empty FilePath on error. | 78 // Returns extension path based on extension ID, or empty FilePath on error. |
| 75 FilePath GetExtensionPath(const std::string& extension_id); | 79 FilePath GetExtensionPath(const std::string& extension_id); |
| 76 | 80 |
| 77 // Returns base extensions install directory. | 81 // Returns base extensions install directory. |
| 78 const FilePath& install_directory() const { return install_directory_; } | 82 const FilePath& install_directory() const { return install_directory_; } |
| 79 | 83 |
| 80 // Updates the prefs based on the blacklist. | 84 // Updates the prefs based on the blacklist. |
| 81 void UpdateBlacklist(const std::set<std::string>& blacklist_set); | 85 void UpdateBlacklist(const std::set<std::string>& blacklist_set); |
| 82 | 86 |
| 83 // Based on extension id, checks prefs to see if it is blacklisted. | 87 // Based on extension id, checks prefs to see if it is blacklisted. |
| 84 bool IsExtensionBlacklisted(const std::string& id); | 88 bool IsExtensionBlacklisted(const std::string& id); |
| 85 | 89 |
| 86 // Did the extension ask to escalate its permission during an upgrade? | |
| 87 bool DidExtensionEscalatePermissions(const std::string& id); | |
| 88 | |
| 89 // Returns the last value set via SetLastPingDay. If there isn't such a | 90 // Returns the last value set via SetLastPingDay. If there isn't such a |
| 90 // pref, the returned Time will return true for is_null(). | 91 // pref, the returned Time will return true for is_null(). |
| 91 base::Time LastPingDay(const std::string& extension_id); | 92 base::Time LastPingDay(const std::string& extension_id); |
| 92 | 93 |
| 93 // The time stored is based on the server's perspective of day start time, not | 94 // The time stored is based on the server's perspective of day start time, not |
| 94 // the client's. | 95 // the client's. |
| 95 void SetLastPingDay(const std::string& extension_id, const base::Time& time); | 96 void SetLastPingDay(const std::string& extension_id, const base::Time& time); |
| 96 | 97 |
| 97 // Returns true if the user enabled this extension to be loaded in incognito | 98 // Returns true if the user enabled this extension to be loaded in incognito |
| 98 // mode. | 99 // mode. |
| 99 bool IsIncognitoEnabled(const std::string& extension_id); | 100 bool IsIncognitoEnabled(const std::string& extension_id); |
| 100 void SetIsIncognitoEnabled(const std::string& extension_id, bool enabled); | 101 void SetIsIncognitoEnabled(const std::string& extension_id, bool enabled); |
| 101 | 102 |
| 102 // Saves ExtensionInfo for each installed extension with the path to the | 103 // Saves ExtensionInfo for each installed extension with the path to the |
| 103 // version directory and the location. Blacklisted extensions won't be saved | 104 // version directory and the location. Blacklisted extensions won't be saved |
| 104 // and neither will external extensions the user has explicitly uninstalled. | 105 // and neither will external extensions the user has explicitly uninstalled. |
| 105 // Caller takes ownership of returned structure. | 106 // Caller takes ownership of returned structure. |
| 106 static ExtensionsInfo* CollectExtensionsInfo(ExtensionPrefs* extension_prefs); | 107 ExtensionsInfo* GetInstalledExtensionsInfo(); |
| 108 |
| 109 // Returns the ExtensionInfo from the prefs for the given extension. If the |
| 110 // extension is not present, NULL is returned. |
| 111 ExtensionInfo* GetInstalledExtensionInfo(const std::string& extension_id); |
| 107 | 112 |
| 108 static void RegisterUserPrefs(PrefService* prefs); | 113 static void RegisterUserPrefs(PrefService* prefs); |
| 109 | 114 |
| 110 private: | 115 private: |
| 111 | 116 |
| 112 // Converts absolute paths in the pref to paths relative to the | 117 // Converts absolute paths in the pref to paths relative to the |
| 113 // install_directory_. | 118 // install_directory_. |
| 114 void MakePathsRelative(); | 119 void MakePathsRelative(); |
| 115 | 120 |
| 116 // Converts internal relative paths to be absolute. Used for export to | 121 // Converts internal relative paths to be absolute. Used for export to |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 151 FilePath install_directory_; | 156 FilePath install_directory_; |
| 152 | 157 |
| 153 // The URLs of all of the toolstrips. | 158 // The URLs of all of the toolstrips. |
| 154 URLList shelf_order_; | 159 URLList shelf_order_; |
| 155 | 160 |
| 156 DISALLOW_COPY_AND_ASSIGN(ExtensionPrefs); | 161 DISALLOW_COPY_AND_ASSIGN(ExtensionPrefs); |
| 157 }; | 162 }; |
| 158 | 163 |
| 159 #endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_PREFS_H_ | 164 #endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_PREFS_H_ |
| 160 | 165 |
| OLD | NEW |