tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

commit d76a531491d563d6721ed479dbdbafa08d89c115
parent 2af830fc90c527654108509506fc3b03ad466dd3
Author: Andrea Marchesini <amarchesini@mozilla.com>
Date:   Mon, 15 Dec 2025 22:08:05 +0000

Bug 2006168 - Unify CookieStore prefs, r=webidl,smaug

Differential Revision: https://phabricator.services.mozilla.com/D276541

Diffstat:
Mdom/cookiestore/CookieStore.cpp | 33---------------------------------
Mdom/webidl/CookieStore.webidl | 18------------------
Mdom/webidl/CookieStoreManager.webidl | 2+-
Mdom/webidl/ExtendableCookieChangeEvent.webidl | 2+-
Mdom/webidl/ServiceWorkerGlobalScope.webidl | 2+-
Mdom/webidl/ServiceWorkerRegistration.webidl | 2+-
Mmodules/libpref/init/StaticPrefList.yaml | 12------------
Dtesting/web-platform/mozilla/meta/cookie-store/__dir__.ini | 1-
Mtoolkit/components/nimbus/FeatureManifest.yaml | 8+-------
9 files changed, 5 insertions(+), 75 deletions(-)

diff --git a/dom/cookiestore/CookieStore.cpp b/dom/cookiestore/CookieStore.cpp @@ -926,39 +926,6 @@ void CookieStore::CookieStructToItem(const CookieStruct& aData, CookieListItem* aItem) { aItem->mName.Construct(aData.name()); aItem->mValue.Construct(aData.value()); - aItem->mPath.Construct(aData.path()); - - if (aData.host().IsEmpty() || aData.host()[0] != '.') { - aItem->mDomain.Construct(VoidCString()); - } else { - aItem->mDomain.Construct(nsDependentCSubstring(aData.host(), 1)); - } - - if (!aData.isSession()) { - aItem->mExpires.Construct(aData.expiryInMSec()); - } else { - aItem->mExpires.Construct(nullptr); - } - - aItem->mSecure.Construct(aData.isSecure()); - - CookieSameSite sameSite = CookieSameSite::None; - switch (aData.sameSite()) { - case nsICookie::SAMESITE_STRICT: - sameSite = CookieSameSite::Strict; - break; - - case nsICookie::SAMESITE_LAX: - sameSite = CookieSameSite::Lax; - break; - - default: - // FIXME: lax by default? - break; - } - - aItem->mSameSite.Construct(sameSite); - aItem->mPartitioned.Construct(aData.isPartitioned()); } } // namespace mozilla::dom diff --git a/dom/webidl/CookieStore.webidl b/dom/webidl/CookieStore.webidl @@ -74,24 +74,6 @@ dictionary CookieListItem { UTF8String name; UTF8String value; - - [Pref="dom.cookieStore.extra.enabled"] - UTF8String path; - - [Pref="dom.cookieStore.extra.enabled"] - UTF8String? domain; - - [Pref="dom.cookieStore.extra.enabled"] - DOMHighResTimeStamp? expires; - - [Pref="dom.cookieStore.extra.enabled"] - boolean secure; - - [Pref="dom.cookieStore.extra.enabled"] - CookieSameSite sameSite; - - [Pref="dom.cookieStore.extra.enabled"] - boolean partitioned; }; typedef sequence<CookieListItem> CookieList; diff --git a/dom/webidl/CookieStoreManager.webidl b/dom/webidl/CookieStoreManager.webidl @@ -14,7 +14,7 @@ [Exposed=(ServiceWorker,Window), SecureContext, - Pref="dom.cookieStore.manager.enabled"] + Pref="dom.cookieStore.enabled"] interface CookieStoreManager { [Throws] Promise<undefined> subscribe(sequence<CookieStoreGetOptions> subscriptions); diff --git a/dom/webidl/ExtendableCookieChangeEvent.webidl b/dom/webidl/ExtendableCookieChangeEvent.webidl @@ -7,7 +7,7 @@ * https://wicg.github.io/cookie-store/#ExtendableCookieChangeEvent */ -[Exposed=ServiceWorker, Pref="dom.cookieStore.manager.enabled"] +[Exposed=ServiceWorker, Pref="dom.cookieStore.enabled"] interface ExtendableCookieChangeEvent : ExtendableEvent { constructor(DOMString type, optional ExtendableCookieChangeEventInit eventInitDict = {}); // TODO: Use FrozenArray once available. (Bug 1236777) diff --git a/dom/webidl/ServiceWorkerGlobalScope.webidl b/dom/webidl/ServiceWorkerGlobalScope.webidl @@ -53,6 +53,6 @@ ServiceWorkerGlobalScope includes ExtensionGlobalsMixin; partial interface ServiceWorkerGlobalScope { [SameObject, Pref="dom.cookieStore.enabled"] readonly attribute CookieStore cookieStore; - [Pref="dom.cookieStore.manager.enabled"] + [Pref="dom.cookieStore.enabled"] attribute EventHandler oncookiechange; }; diff --git a/dom/webidl/ServiceWorkerRegistration.webidl b/dom/webidl/ServiceWorkerRegistration.webidl @@ -55,6 +55,6 @@ partial interface ServiceWorkerRegistration { }; partial interface ServiceWorkerRegistration { - [Throws, SameObject, Exposed=(ServiceWorker,Window), Pref="dom.cookieStore.manager.enabled"] + [Throws, SameObject, Exposed=(ServiceWorker,Window), Pref="dom.cookieStore.enabled"] readonly attribute CookieStoreManager cookies; }; diff --git a/modules/libpref/init/StaticPrefList.yaml b/modules/libpref/init/StaticPrefList.yaml @@ -2645,18 +2645,6 @@ value: true mirror: always -# Enable cookie-store manager API -- name: dom.cookieStore.manager.enabled - type: RelaxedAtomicBool - value: true - mirror: always - -# Enable extra cookie-store properties -- name: dom.cookieStore.extra.enabled - type: RelaxedAtomicBool - value: false - mirror: always - # Is support for CSSPseudoElement enabled? - name: dom.css_pseudo_element.enabled type: bool diff --git a/testing/web-platform/mozilla/meta/cookie-store/__dir__.ini b/testing/web-platform/mozilla/meta/cookie-store/__dir__.ini @@ -1 +0,0 @@ -prefs: [dom.cookieStore.enabled:true] diff --git a/toolkit/components/nimbus/FeatureManifest.yaml b/toolkit/components/nimbus/FeatureManifest.yaml @@ -3482,13 +3482,7 @@ cookieStore: branch: default pref: dom.cookieStore.enabled description: >- - Enablement of the cookie store API to CRUD and monitor cookies from window JS. - managerEnabled: - description: Enablement of ServiceWorker access to cookie-change events. - type: boolean - setPref: - branch: default - pref: dom.cookieStore.manager.enabled + Enablement of the cookie store API to CRUD and monitor cookies from window JS and ServiceWorkers. pingsender: description: "In-product usage of the pingsender telemetry reporter."