Bug 1482812 enabled the check for whether origin is valid in both Beta and
Release channels, but it didn't enable the test under the quota folder. That
test verified the check does work while executing storage.persist() if the
origin hasn't been initialized yet. Thus, this patch removes the pref to verify
this check does work for storage.persist() on Beta and the Release channels.
--HG--
extra : rebase_source : c454c57189fbc0557e9c83783adce5efb40304a7
While showing a doorhanger permisison prompt, if the user presses the ESC key
we call the secondary action callback, passing in whether any checkbox on
the popup notification was checked.
In the case of an autoplay-media permission prompt, we have a "remember"
checkbox, which is checked by default. So pressing ESC means the user will
remember a "block" result for the current site.
We believe that users don't expect pressing ESC to result in a remembered
decision, they expect pressing ESC to avoid making a decision. So we want to
ignore the checkbox when ESC is pressed for autoplay-media.
So this patch adds a new PopupNotification behaviour which reports the source
of event which caused the action callback to be called. This enables the ESC
key press to ignore storing a permission.
Note: the change here to not store a permission on ESC press applies to all
permissions, not just autoplay-media.
MozReview-Commit-ID: IUWFN8LG9VF
--HG--
extra : rebase_source : b004bc211177a7bfb6dcea563d75db9a6750b214
This patch was autogenerated by my decomponents.py
It covers almost every file with the extension js, jsm, html, py,
xhtml, or xul.
It removes blank lines after removed lines, when the removed lines are
preceded by either blank lines or the start of a new block. The "start
of a new block" is defined fairly hackily: either the line starts with
//, ends with */, ends with {, <![CDATA[, """ or '''. The first two
cover comments, the third one covers JS, the fourth covers JS embedded
in XUL, and the final two cover JS embedded in Python. This also
applies if the removed line was the first line of the file.
It covers the pattern matching cases like "var {classes: Cc,
interfaces: Ci, utils: Cu, results: Cr} = Components;". It'll remove
the entire thing if they are all either Ci, Cr, Cc or Cu, or it will
remove the appropriate ones and leave the residue behind. If there's
only one behind, then it will turn it into a normal, non-pattern
matching variable definition. (For instance, "const { classes: Cc,
Constructor: CC, interfaces: Ci, utils: Cu } = Components" becomes
"const CC = Components.Constructor".)
MozReview-Commit-ID: DeSHcClQ7cG
--HG--
extra : rebase_source : d9c41878036c1ef7766ef5e91a7005025bc1d72b
Upgrade the test names from 3.0/3_0 to 2.1/2_1, consistent with the changes
made in part 1.
--HG--
rename : dom/quota/test/unit/test_version3_0upgrade.js => dom/quota/test/unit/test_version2_1upgrade.js
rename : dom/quota/test/unit/version3_0upgrade_profile.zip => dom/quota/test/unit/version2_1upgrade_profile.zip
extra : rebase_source : f0b33f52d9247ed4b14a2debc22551f98b211741
extra : source : efc62fb7fa68968335c605cf54f1d94631bc3b33
BrowserTestUtils.closeWindow which is waiting for the final session storage message from the children
(in case of the test one for each window) + "domwindowclosed" event on the parent side.
It's possible that window.close() is called but window doesn't fully close yet.
After BrowserLoaded got called and persist() been resolved, there is no guarantee window.postMessage()
is executed after addEventListener(). In order to call window.postMessage() after addEventListener(),
make sure messageManager.loadFrameScript() is registered "message" in chrome privileged script,
instead of via web content.