This commit ensures that WebExtension principals always get a nsICookieService::BEHAVIOR_ACCEPT
cookieBehavior and a nsICookieService::ACCEPT_NORMALLY aLifetimePolicy:
- the webextension pages are still able to use indexedDB and localStorage on a globally
configured:
"network.cookie.cookieBehavior = 2"
("Accept cookies from websites" unchecked in the about:preferences
"use custom settings for history" section)
- the webextension pages' localStorage does not switch in session-only mode on a globally
configured:
"network.cookie.lifetimePolicy = 2"
("Keep until I close Firefox" in the about:preferences
"use custom settings for history" section)
MozReview-Commit-ID: 5LOCvCgcokM
This introduces browserSettings.openSearchResultsInNewTabs which exposes
the browser.search.openintab preference to extensions.
Note that until bug 1394304 is fixed this only works for searches performed
via the search box, and not for searches performed via the address bar.
MozReview-Commit-ID: HuoJ0uOvMjX
This introduces browserSettings.openBookmarksInNewTabs which exposes
the browser.tabs.loadBookmarksInTabs preference to extensions.
MozReview-Commit-ID: AZlir2GoiCo
This updates browserSettings so that calling set and clear return false, rather than undefined,
for read-only settings. It also returns "not_controllable" rather than "controllable_by_this_extension"
for levelOfControl from calls to get for read-only settings.
MozReview-Commit-ID: 9c0bKDaYIC7
This new API exposes the ui.context_menus.after_mouseup preference to extensions
so mouse gesture add-ons can modify it.
Note that this is not supported on Android, and also calling it with a value of
"mousedown" on Windows is a no-op.
MozReview-Commit-ID: AkhRmAyzuSp
This new API exposes the ui.context_menus.after_mouseup preference to extensions
so mouse gesture add-ons can modify it.
Note that this is not supported on Android, and also calling it with a value of
"mousedown" on Windows is a no-op.
MozReview-Commit-ID: AkhRmAyzuSp
Currently if you write an async IPDL method which has a return value, we expose
a SendXXX method which returns a MozPromise. This MozPromise can then be
->Then-ed to run code when it is resolved or rejected.
Unfortunately, using this API loses ordering guarantees which IPDL provides.
MozPromise::Then takes an event target, which the resolve runnable is dispatched
to. This means that the resolve callback's code doesn't have any ordering
guarantees relative to the processing of other IPC messages coming over the same
protocol.
This adds a new overload to SendXXX with two additional arguments, a lambda
callback which is called if the call succeeds, and a lambda callback which is
called if the call fails. These will be called in order with other IPC messages
sent over the same protocol.
MozReview-Commit-ID: FZHJJaSDoZy
Prior to this patch, the map that holds the list of notifications for an extension was recreated
for each context. This fixes that issue and maintains a list for the extension across all
contexts.
MozReview-Commit-ID: 2wfABoyyqvF
This includes removing the "web-extension-preferences-replacing" and "web-extension-preferences-replaced"
notifications as they are no longer needed.
MozReview-Commit-ID: IjNf4BImgas
This code changes all of the functions in the ESS and the EPM to accept an extensionId rather than an
extension object, which is required for responding to the new onUpdate event.
MozReview-Commit-ID: FwMVa0fShGj
This test was failing when running locally during the second run (i.e., the non-oop run).
The problem ocurred because the cookies created during the first run were not removed
prior to the second run. This patch adds code to clean up any existing cookies before
running the test.
MozReview-Commit-ID: LieSZDudawN
getter_AddRefs nulls its parameter before passing it to the getter function,
which means that on failure, we wind up with a null IO thread, rather than its
original main thread value.
MozReview-Commit-ID: 1SSIeNtiBq9