Clipboard API and events spec, event target of clipboard events should always
be an element node which contains the selection start and if there is no
Selection ranges, should use <body> or <frameset> of the document:
https://www.w3.org/TR/clipboard-apis/#fire-a-clipboard-event
This patch does not include the test for the latter because I have no idea how
to avoid adjusting selection adjustments immediately before pasting in editor's
middle click event handler or enable copy or paste commands without selection
ranges.
Differential Revision: https://phabricator.services.mozilla.com/D5743
--HG--
extra : moz-landing-system : lando
nsISHEntry.index is readonly, but if you pass `true` as getEntryAtIndex()'s
second argument, nsISHEntry.index will be modified. This is pretty gross.
This patch changes `index` so it's not readonly (because it's not!) and removes
getEntryAtIndex()'s second argument.
--HG--
extra : rebase_source : c519d77fcc1c3bda2f260b5888ce9cd0f6cfdab5
After analyzing test_request.html it became clear that it relied on two false
assumptions:
1. It assumed that a service worker is notified that it's being installed before
any client can interact with it.
2. It assumed that a service worker will always be installed upon registration,
if it was unregistered before.
The first assumption is not backed by the spec; it seems that the opposite behavior
is the correct one (https://github.com/w3c/ServiceWorker/issues/1347). The second
assumption ignores the possibility of resurrection, where a service worker is re-
registered before getting uninstalled.
This commit addresses both problems by not relying on the installation phase,
instead passing the script URL as a search parameter and loading it at service
worker script evaluation time. It then runs the test function in response to a
message from the client.
Differential Revision: https://phabricator.services.mozilla.com/D3879
--HG--
extra : moz-landing-system : lando
The spec mandates that ServiceWorkerContainer only be visible in a secure context,
yet currently it is (almost) always visible, but rejects calls to register() in
non-secure contexts. This commit moves the context check to a [Func] function, thus
implementing the behavior exactly as specified.
This commit uses the same mechanism used by [SecureContext] bindings instead of the
current ad hoc implementation.
Differential Revision: https://phabricator.services.mozilla.com/D2950
--HG--
extra : moz-landing-system : lando
When a custom element is defined we can check whether its class is an instance
of XULElement or HTMLElement and tag the defintion with a namespace accordingly.
This allows us to know the correct namespace for the custom element when
created.
Differential Revision: https://phabricator.services.mozilla.com/D2680
--HG--
extra : moz-landing-system : lando
Tracks calls made through TimeoutManager and makes sure they are
accounted for in the corresponding DocGroup
MozReview-Commit-ID: IvcoBrrZVWp
--HG--
extra : rebase_source : 66b3f6f1f47bc167da350d52ae87d3c0061a8b25
This patch was written entirely by the following script:
#!/bin/bash
if [ ! -d "./.hg" ]
then
echo "Not in a source tree." 1>&2
exit 1
fi
find . -regex '.*\(ref\|crash\)test.*\.list' | while read FILENAME
do
echo "Processing ${FILENAME}."
# The following has four substitutions:
# * The first one replaces the *first* argument to fuzzy() when it doesn't
# have a - in it, by replacing it with an explicit 0-N range.
# * The second one does the same for the *second* argument to fuzzy().
# * The third does the same for the *second* argument to fuzzy-if().
# * The fourth does the same for the *third* argument to fuzzy-if().
#
# Note that this is using perl rather than sed because perl doesn't
# support non-greedy matching, which is needed for the first argument to
# fuzzy-if.
perl -pi -e 's/(fuzzy\()([^ ,()-]*)(,[^ ,()]*\))/${1}0-${2}${3}/g;s/(fuzzy\([^ ,()]*,)([^ ,()-]*)(\))/${1}0-${2}${3}/g;s/(fuzzy-if\([^ ]*?,)([^ ,()-]*)(,[^ ,()]*\))/${1}0-${2}${3}/g;s/(fuzzy-if\([^ ]*?,[^ ,()]*,)([^ ,()-]*)(\))/${1}0-${2}${3}/g' "${FILENAME}"
done
Differential Revision: https://phabricator.services.mozilla.com/D2974
--HG--
extra : moz-landing-system : lando
Right now, a lot of test code relies on side-effects of SpecialPowers being
loaded into frame script globals. In particular:
- It forces permissive COWs from those scopes, which allows frame scripts to
pass objects from those scopes to unprivileged content that they otherwise
wouldn't.
- It imports a bunch of helper modules and WebIDL globals which would
otherwise not be available.
Fortunately, this seems to only impact test code at this point. But there's a
real down-the-road risk of it impacting shipping code, which ends up working
in automation due to the side-effects of SpecialPowers, but failing in real
world use.
MozReview-Commit-ID: G27eSSOHymX
--HG--
extra : rebase_source : 1702e63fed719fc92def2bdbbb8a7c53572432db
extra : source : 41bedc526dd6ec6b7e8c7be1c832ac60c81d6263