mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-02 15:15:23 +00:00
46c2f6aa69
Manage private browsing mode in content pref service. CPS should be available in private browsing mode, but should not store informations on disk, and should clear all informations once the private session ends. When setting a pref in private mode, it is stored in an in-memory hash table. When getting a pref, it is retrieved from that hash table if available. Otherwise, it is retrieved using the standard mechanism. When removing a pref, it is retrieved from the hash table. The rationale is that in private mode, it's ok to read a pref from normal database, but not ok to set it. The in-memory hash table is cleared when leaving the private browsing mode. When removing a set of preferences (with removeGroupedPrefs or removePrefsByName), preferences are removed from the in-memory hashtable, *and* from normal mode database. The rationale is that visiting a website may trigger setting/getting/removing for a specific preference only. But removing many prefs at once is the result of an action not associated with a website. For example, user may wish to delete all its informations. In that case, user probably expects to not have those informations restored once it leaves private browsing mode. |
||
---|---|---|
.. | ||
tests | ||
Makefile.in | ||
nsContentPrefService.js | ||
nsContentPrefService.manifest |