Before this change, the test in this commit fails. The received events order
is;
1) cancel
2) transitioncancel
3) transitionstart
4) finish
MozReview-Commit-ID: 8liTFXime6e
--HG--
extra : rebase_source : 3c68ef330b1f263afa2fad9670a30b351b8dbf28
Now that all properties handle currentcolor via mozilla::StyleComplexColor,
unify test_currentcolor_transition() and test_true_currentcolor_transition()
into test_currentcolor_transition().
MozReview-Commit-ID: 81hlAgTotpL
--HG--
extra : rebase_source : 9c9744c3fe4e423451e5a581501c88539c9d591f
Changing to Stylo for animation of color with currentColor. Stylo uses
a different distance metric for numeric colors to currentColor. The
result is that a different pacing is used in the fill case.
MozReview-Commit-ID: 5x8c3IF5owV
--HG--
extra : rebase_source : 422dfa69644052a4c9cbfb2355a105c8e5c2b50c
There doesn't appear to be any need to separate these anymore.
MozReview-Commit-ID: GHR259JJHJV
--HG--
extra : rebase_source : e9b15c820df97570c3f6e978a7f0c224e33f0468
This is no longer needed since in bug 1456394 we merged the two types of
KeyframeEffects into one.
MozReview-Commit-ID: 8IuTD9ivAGK
--HG--
extra : rebase_source : b14593b33bfa9a0233b524010b3bde3cfc078950
navigator.platform returns "Win64" in 64-bit Firefox and IE, but "Win32" in 64-bit Chrome and Edge. "Win32" appears to be the de facto platform value for Windows. This change doesn't hide the OS architecture from web content because navigator.userAgent still mentions "Win64; x64" in 64-bit Firefox, Chrome, Edge, and IE.
MozReview-Commit-ID: CplYnGDQgTe
--HG--
extra : rebase_source : c00a1a7462ea91d44700dd0581c88c1c4cad2346
extra : source : 1976c327f251702be255a9d0769121c6bc5303a1
Fix clang-tidy warning about bool pointers:
[misc-bool-pointer-implicit-conversion] dom/quota/ActorsParent.cpp:4168:7: warning: dubious check of 'bool *' against 'nullptr', did you mean to dereference it?
MozReview-Commit-ID: C6QdeJlf71C
--HG--
extra : rebase_source : cb2e19e41bed6cc1456e89acce65747558306bcf
After page load the document is focused and the entire subtree is
spoken. It should only speak the name.
--HG--
extra : rebase_source : bfc5542969fa29c45b9617d873a3dba7bf1a47c2
JavaScript objects can be nested to any depth, and as such we must
check that the value to be serialised contains a cyclic structure
before attempting to marshaling it. We handle this correctly for
collections and arbitrary objects by relying on JSON.stringify.
For example with arrays:
let arr = [];
arr.push(arr);
And for objects:
let obj = {};
obj.reference = obj;
However, members of the different element prototypes (HTMLElement,
SVGElement, XULElement, et al.) may also contain cyclic references
via user-defined own properties:
let body = document.documentElement;
body.reference = body;
JSON.stringify enumerates an object's own properties, which means
it picks up on body's "reference" property in the above example.
Marionette needs to special case element prototypes because we want
to marshal them as web elements. This patch replaces JSON.stringify
with a custom function for testing if a value contains cyclic
structures that special-cases elements.
MozReview-Commit-ID: 1TQtHrjf401
--HG--
extra : rebase_source : 382cadca8a19971fbb74850b1904bb9ebdc9061e
Moves the innards of assert.acyclic to evaluate.isCyclic so it can
be called externally without throwing. It makes more sense for
this function to be exposed on the evaluate module, since other
behaviour related to JSON marshaling is also defined there.
MozReview-Commit-ID: 4WjEy8Sjqrm
--HG--
extra : rebase_source : 88cd829f3e178ec49ae532ea0af0a62defb4469f
This patch uses the PIPENV_PYTHON environment variable to append a suffix to the created virtual environment path according to the version specified. It also uses the PIPENV_DEFAULT_PYTHON_VERSION environment variable to avoid recreating the virtual environment every time. With these changes we are able to switch back and forth between Python versions without the expense of recreating environments, however there is a risk of these environments becoming stale. In this scenario it may be necessary to clobber the virtual environment root within the obj dir.
MozReview-Commit-ID: C4vuwNh04CP
--HG--
extra : rebase_source : 301c8418fe5b873ffadec37af11e98cfda8667b8
Most HG commands use subprocesses, even if a context manager (and therefore an
hglib client) has been created. There are only two commands that make use of
the client, but they *only* work inside a context manager. I don't think
there are any technical reason these two commands *need* to use the context
manager.
This patch merges the HgRepository._run_in_client function with
HgRepository._run(). If a client exists, that will be used, otherwise a
subprocess will be used.
Differential Revision: https://phabricator.services.mozilla.com/D1809
--HG--
extra : moz-landing-system : lando
Bug 1465505 moved from PRJ_Now to mozilla::TimeStamp. As a side effect,
it introduced a few extra global constructors calls.
This patch fixes it.
MozReview-Commit-ID: 9VX83JZIyds
--HG--
extra : rebase_source : 01a22a8eea3ab224dbaa1a93d2a73ebb9ab6b6ea
In some cases we get a gecko display list that looks like this:
WrapList with asr(<A>, <B>)
Item with asr (<B>) and clipchain(<something> [A])
In this case, we would initialize the WebRenderLayerScrollData for the
nested item using a stop-at ancestor of A (because that was the leafmost
ASR from the containing WrapList) but the item itself has an ASR of B,
which is an ancestor of A. So when walking up from B we'd never hit the
stop-at ancestor, and so we'd end up duplicating metrics from the
containing WRLSD onto the nested WRLSD. This generated an assertion
failure in the APZ code.
This patch detects this scenario and skips adding metrics on the nested
WRLSD. This produces an APZ tree equivalent to what the non-WebRender
path would produce.
MozReview-Commit-ID: 8eo6pzXXKBd
--HG--
extra : rebase_source : 0581c54c4d9fa6ca08249e42b306c7155022bec7
Add some test cases for find-in-page and the different flags.
MozReview-Commit-ID: BzN0OTSUy7z
--HG--
extra : rebase_source : ef558aedc71d04f33dfa58271a29cd66486ff89d
Add a SessionFinder API for find-in-page functionality.
MozReview-Commit-ID: KB7dOPUC6s2
--HG--
extra : rebase_source : d90400bfa15ba311668d5da37a64465863bec05d
This is another quick-and-dirty port. Some of the test logic could
probably be moved to unprivileged extension code but there's no urgent
reason to do that right now.
MozReview-Commit-ID: Af0XQbakLsx
--HG--
rename : testing/mochitest/bootstrap.js => testing/mochitest/api.js
extra : rebase_source : 17f8af667e73555bd69391d3be0835c3e50c90cd
Added the C++/Rust glue code for maxptime.
Added the C++ unit test CheckMaxPtime.
MozReview-Commit-ID: 58Qbrpktxwx
--HG--
extra : rebase_source : 1aed17367e230f0e397b196b759deaf18e4a3fd8