window.promiseDocumentFlushed will call a callback as soon as a style or layout
flush is not required for the document (which might be immediately). This is a
new ChromeOnly API introduced in an earlier patch in this series.
This patch also removes the now-unneeded BrowserUtils.promiseLayoutFlushed and
BrowserUtils.promiseReflowed methods and infrastructure.
MozReview-Commit-ID: Jv7KoxBXhHG
--HG--
extra : rebase_source : cae6a58d3992b2e587b1fff90954f36c2f81e2ee
This is particularly useful for knowing when it's safe to query for style and
layout information for a window without causing a synchronous style or layout
flush.
Note that promiseDocumentFlushed was chosen over promiseDidRefresh or promiseRefreshed
to avoid potential confusion with the actual network-level refresh of browsers or
documents.
MozReview-Commit-ID: Am3G9yvSgdN
--HG--
extra : rebase_source : 5e502d5d077dd764ca1a43e7c3f06855858fe735
The original sync work excluded changes to metadata files under tests/wpt/mozilla under the assumption that any change in test results indicated an existing intermittent issue. This is incorrect, because these tests rely on shared infrastructure with upstream, so the results can be influenced by syncing.
Source-Repo: https://github.com/servo/servo
Source-Revision: 8329a45163a2c5afc517a7a1f86888213bb90532
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 690913948f2be0cd3d03c958cb63931e71b0864e
Poking at the frame tree has problems: If we poke in negative (using
eSkipNativeAnonymousContent), as we were doing, we mess up the case where we're
actually _not_ doc-level, and _not_ ::before or ::after. This can't happen for
content documents, but can happen for chrome (since nsDocElementBoxFrame
implements nsIAnonymousContentCreator).
If we poke in positive, as we used to, you get that right, but mess up the
root scrollbar case.
Instead, use a node property to mark doc level anon content. This is a case rare
enough that it seems worth to not steal a node bit.
To recap the failure:
* The initial value of -moz-control-character-visiblity is different on beta
and nightly.
* XUL has a global rule setting -moz-control-character-visibility on the root,
to a value so that it's the initial one on nightly, but the non-initial one
on beta.
* Changes to this property cause a reframe.
* Reframes of a nsIAnonymousContentCreator anon content reframe the container.
* We were failing to inherit correctly for the nsIAnonymousContentCreator
content for the root XUL element on the initial styling, inheriting from the
default computed values instead, since we failed to reach the root element's
primary frame from GetFlattenedTreeParentForDocumentElementNAC ->
AppendDocumentLevelNativeAnonymousContentTo, since the primary frame is set
_after_ processing children.
This seems somewhat risky to change, and inconsistent with any other stuff
the frame constructor does, see bug 973390.
* Given that, the next restyle of the root element, in this case caused due to
the customizable UI, we _found_ the actual correct parent, recomputed the
style, saw that -moz-control-character-visiblity had changed, and reframed.
But we were reframing the whole window, not just the NAC, because of the
fourth bullet point. Reframing the whole window caused us to lose the popup
state (that's bug 1440506).
Worse than that is the fact that given we reframe and reconstruct the
anonymous countent again, we go back to the initial bogus state, just
awaiting for the next restyle to reframe the whole window.
I wish there was a bullet-proof way to test it that isn't just counting reframes
and relying on which properties reframe or not, but due to the nature of
nsIAnonymousContentCreator's NAC, it's not possible in any easy way I can think
of.
MozReview-Commit-ID: IPYB5trsN8R
This is not exhaustive technical documentation for every aspect of the installer
code, but it's better than what we had, and it does contain the ping
documentation that this bug was originally asking for.
MozReview-Commit-ID: 5h7UwnAk4Iq
--HG--
extra : rebase_source : a3a8a8bdee9e76ee039c342a07a121170872708c
We don't remove the configure option entirely for two reasons:
1) --with-gradle is still used in automation to specify a particular
Gradle binary, which is functionality we want to keep;
2) developers might have --with-gradle specified, and we can save them
having to remove it explicitly. There's a downside to this, however:
stale configure options can hang around indefintely. We can evolve
the configure option in the future.
MozReview-Commit-ID: D4sSclJ12j8
--HG--
extra : rebase_source : 3e5ebbf98347b5f2abfb67d2c50004aadc8bd145
You'd think that MesHandleFree would free the buffer, since it was created by RPC, but it doesn't.
Therefore, we must free it ourselves using midl_user_free.
MozReview-Commit-ID: 9KzWTngFEEq
--HG--
extra : rebase_source : 6bee3903f619ec1cb1569ebf1df2ddef9da6b901
To accomplish this, the added aria-pressed attribute turns the buttons into toggle buttons, and the one that is visually selected, gets the "true" attribute value, others are "false". That way, the screen reader and other assistive technologies will indicate that this is the selected or pressed button.
MozReview-Commit-ID: L2lcw2wOyYw
--HG--
extra : rebase_source : 1c0ad241319f50c34c120ce05b85e795e9a5b080
This will make it easier to include xul chunks with the preprocessor.
MozReview-Commit-ID: F3aF6CqqcSK
--HG--
extra : rebase_source : ccd0cb99ac9f1114d28cd749ec439c907d13836f
This is the latest attempt in the war against disk space usage on the build machines.
Source-Repo: https://github.com/servo/servo
Source-Revision: f74451f03923784598b50e044105105768a411ef
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : bb7c0ad2df49ee61f43a9fb25725baa6a510dafe
Currently CSS Animations are exempted from Reduce Timer Precision, so this isn't needed.
Additionally, when we test by overriding that restriction, these tests aren't run, which
leads to confusion.
MozReview-Commit-ID: Gv6T3oGO475
--HG--
extra : rebase_source : 6bd70341fe5d047b685cae0db2965bf86116b4a0
This patch adds data collection for 6 different data points:
- number of live bookmarks the user has
- number of times the user subscribes to a feed
- number of times we attempt to open feed preview
- number of times the user opens a feed popup in the UI
- number of times the user opens an entry from a feed popup in the UI.
MozReview-Commit-ID: DG9JDFXCjai
--HG--
rename : browser/components/feeds/test/valid-feed.xml => browser/components/feeds/test/browser/valid-feed.xml
extra : rebase_source : 9f3df4ca19eec0750092deb9066634a388ec59f7
<!-- Please describe your changes on the following line: -->
Followed steps as suggested in issue.
Error is not yet resolved!
---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix#17977 (https://github.com/servo/servo/issues/17977?).
<!-- Either: -->
- [x] These changes do not require tests because it will have manual test case.
<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: 9c484452c0688205044a632b18083f85a3697693
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 04d6650f822c44d8c0ac9e67e3000f250751c9cf