summaryrefslogtreecommitdiffstats
path: root/chrome/browser/extensions/extension_pref_value_map.h
Commit message (Collapse)AuthorAgeFilesLines
* Move base/values.h into the base namespace. This includes a cros DEPS rolldmazzoni@chromium.org2011-07-121-4/+4
| | | | | | | | | | with a minor change to that code since libcros also uses base/values.h. BUG=88666 TEST=none Review URL: http://codereview.chromium.org/7259019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@92208 0039d316-1c4b-4281-b951-d872f2087c98
* Remove extension_prefs_scope namespacebattre@chromium.org2011-06-071-4/+4
| | | | | | | | | BUG=no TEST=no Review URL: http://codereview.chromium.org/7083022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@88144 0039d316-1c4b-4281-b951-d872f2087c98
* Enable incognito_session_only preferencesbattre@chromium.org2011-05-251-0/+3
| | | | | | | | | BUG=60099 TEST=no Review URL: http://codereview.chromium.org/7067040 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@86731 0039d316-1c4b-4281-b951-d872f2087c98
* Support persistent incognito preferencesbattre@chromium.org2011-05-251-6/+9
| | | | | | | | | BUG=no TEST=no Review URL: http://codereview.chromium.org/7065033 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@86713 0039d316-1c4b-4281-b951-d872f2087c98
* Add ability to find out whether an extension pref value is coming from ↵bauerb@chromium.org2011-03-091-2/+10
| | | | | | | | | | | | | | | incognito preferences. If the incognito flag in the request details is set, we now return an incognito parameter from experimental.preference.get that specifies whether the value is coming from the incognito preferences or the regular ones. Also, return an error if an extension that isn't enabled in incognito mode is trying to access incognito preferences. BUG=73994 TEST=ExtensionApiTest.* Review URL: http://codereview.chromium.org/6628081 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77465 0039d316-1c4b-4281-b951-d872f2087c98
* Added LevelOfControl to Preferences API's get() resultbattre@chromium.org2011-02-241-0/+22
| | | | | | | | | BUG=73427 TEST=./unit_tests --gtest_filter="PrefValueStoreTest.*" && ./unit_tests --gtest_filter="ExtensionPrefValueMapTest.*" && ./browser_tests --gtest_filter=ExtensionApiTest.IncognitoContentSettings && ./browser_tests --gtest_filter=ExtensionApiTest.ContentSettings Review URL: http://codereview.chromium.org/6542021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75947 0039d316-1c4b-4281-b951-d872f2087c98
* Part 2 of repairing regressions to my old clang check plugins so Nico canerg@google.com2011-01-281-10/+1
| | | | | | | | | | | deploy the clang plugins to the waterfall/trybots. BUG=none TEST=compiles Review URL: http://codereview.chromium.org/6272025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73014 0039d316-1c4b-4281-b951-d872f2087c98
* Introduce incognito preference settings.battre@chromium.org2011-01-251-0/+144
This CL introduces preference settings for incognito windows. The semantics are the following: - An extension can set regular preferences as before. These affect regular and incognito windows. - An extension can set regular preferences *and* incognito preferences. In this case, the incognito preferences affect only incognito windows. - If extension A sets reg+incognito, extension B sets reg but no incognito, extension B has higher precedence than A --> B's preferences hold for all regular and incognito windows. - Incognito preferences are never persisted to disk. In order to realize this, the ExtensionPrefs class allows setting regular and incognito extension controlled preferences. It allows creating an incognito version of the PrefService with an independent PrefValueStore. This (incognito) PrefValueStore and the original PrefValueStore share several of their PrefStores (i.e. DefaultPrefStore, CommandLinePrefStore, Configuration PrefStores) but differ in two pref stores: - We maintain two separate ExtensionPrefStores containing the effective preferences for regular and incognito windows. - We maintain two separate user pref stores. The regular JsonPrefStore is expanded by an OverlayPersistentPrefStore that maintains all write-operations in an in-memory overlay. Therefore, incognito changes are not visible in the file-backed JsonPrefStore. The two ExtensionPrefStores retrieve their effective values from a shared ExtensionPrefValueMap. The OffTheRecordProfileImpl provides a request_context_ that uses the new PrefService already. BUG=66027,69057 TEST=unit tests, will be fully testable once the Proxy Settings API allows incognito settings. Review URL: http://codereview.chromium.org/5915004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72489 0039d316-1c4b-4281-b951-d872f2087c98