Граф коммитов

74039 Коммитов

Автор SHA1 Сообщение Дата
Jonathan Kew 3c2cb7fd1a Bug 1371386 - Take account of requirements for emoji-style or text-style presentation during font selection & fallback. r=m_kato
Differential Revision: https://phabricator.services.mozilla.com/D87304
2020-08-26 09:31:58 +00:00
Masayuki Nakano 5bca4199fb Bug 1660378 - part 9: Avoid QI for getting `nsStyledElement` pointer r=smaug
The editor modules does QI too many times when it sets or removes some style
with `execCommand` or XPCOM API.  Therefore, there should be an API to
retrieve `nsStyledElement` pointer from `nsINode*`.

Differential Revision: https://phabricator.services.mozilla.com/D87990
2020-08-26 05:29:06 +00:00
Mihai Alexandru Michis 6d6f67bc0b Backed out changeset 44d25518ea20 (bug 1660363) for causing bc failures in browser_modal_print.js
CLOSED TREE
2020-08-26 09:07:18 +03:00
James Teh f30d80c39a Bug 1660363: Don't treat elements inside print preview documents as focusable. r=emilio,mstriemer
Previously, IsFocusable returned true on elements in print preview documents, but the element wouldn't accept focus.
This meant that when you tried to tab, focus would get stuck on the document.
Now, IsFocusable returns false.
Thus, tab doesn't try to stop on these elements and can move out of the document.

Differential Revision: https://phabricator.services.mozilla.com/D88000
2020-08-26 04:59:27 +00:00
longsonr 61fc7b177e Bug 1648550 - Fix getBoundingClientRect for use element position r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D83256
2020-08-25 23:36:18 +00:00
Emilio Cobos Álvarez 72730e8e3d Bug 1636728 - Make calling window.print() before load keep deferring the actual printing and closing the window until load. r=smaug
Other engines also do this, but with my previous patch breaks it
(because we only hit print() on the print-content-viewer _after_ doing
the clone).

So move it before triggering all the machinery, and only for
window.print().  Given we didn't check this for print preview etc, I
think it's fine to carry on for user-triggered loads.

Trivial test-case (which I'm not quite sure how to turn into an
automated test...)

    <!doctype html>
    <h1>I do get printed but...</h1>

    <script>
      window.print();
    </script>

    <h2>Do I?</h2>

Note that this is broken with the new print preview UI already, this
fixes it.

Differential Revision: https://phabricator.services.mozilla.com/D87898
2020-08-25 17:45:24 +00:00
Emilio Cobos Álvarez 044b3c4332 Bug 1636728 - Centralize printing entry points in nsGlobalWindowOuter, and move cloning out of nsPrintJob. r=jwatt,geckoview-reviewers,smaug,agi
This centralizes our print and preview setup in nsGlobalWindowOuter so
that we never re-clone a clone, and so that we reuse the window.open()
codepath to create the browsing context to clone into.

For window.print, for both old print dialog / silent printing and new
print preview UI, we now create a hidden browser (as in with visibility:
collapse, which takes no space but still gets a layout box).

 * In the modern UI case, this browser is swapped with the actual print
   preview clone, and the UI takes care of removing the browser.

 * In the print dialog / silent printing case, the printing code calls
   window.close() from nsDocumentViewer::OnDonePrinting().

 * We don't need to care about the old print preview UI for this case
   because it can't be open from window.print().

We need to fall back to an actual window when there's no
nsIBrowserDOMWindow around for WPT print tests and the like, which don't
have one. That seems fine, we could special-case this code path more if
needed but it doesn't seem worth it.

Differential Revision: https://phabricator.services.mozilla.com/D87063
2020-08-25 17:45:12 +00:00
longsonr 4f8808ae6f Bug 1459905 - Merge DOMSVGTranslatePoint and DOMSVGPoint and fix updates r=emilio
SVGSVGElement::SetCurrentScaleTranslate checks that things have changed but if we
manage to update both translate values before we get here then we'll skip the screen update
that we need.

Also
- introduces a tear off for SVGSVGElement.currentTranslate so we hand out the same object as required by the SVG idl
- removes SVGSVGElement::SetCurrentTranslate as dead code
- removes mPreviousScale and mPreviousTranslate from SVGSVGElement as they are no longer necessary

Differential Revision: https://phabricator.services.mozilla.com/D84796
2020-08-25 14:38:32 +00:00
Timothy Nikkel 69aaaddd9c Bug 1656711. Support hardware accelerated <feGaussianBlur> SVG filters if the x and y radius are not equal with webrender. r=gw
Pretty straight forward, mostly just plumbing stuff through.

Differential Revision: https://phabricator.services.mozilla.com/D85666
2020-08-25 07:26:21 +00:00
Daniel Holbert b8192a4fc2 Bug 1660502 part 2: Rename nsSharedPageData::mTotNumPages to mRawNumPages, for consistency. r=TYLin
Differential Revision: https://phabricator.services.mozilla.com/D87887
2020-08-24 23:53:27 +00:00
Daniel Holbert e3a6a51032 Bug 1660502 part 1: Give nsIWebBrowserPrint a "rawNumPages" attribute. r=TYLin
This is backed by an existing nsPageSequenceFrame API, which this patch also
renames to use the word "Raw" for consistency across the full callstack.

Differential Revision: https://phabricator.services.mozilla.com/D87886
2020-08-24 23:53:11 +00:00
Stephen A Pohl 4c95e75c52 Bug 1656264: Adjust default font size for non-native theming. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D85415
2020-08-24 14:42:46 +00:00
Cosmin Sabou 7b214fd81a Backed out 6 changesets (bug 1518999) for geckoview failures on scrollToVerticalOnZoomedContentAuto.
Backed out changeset 10bf1552e301 (bug 1518999)
Backed out changeset e62cd63e3595 (bug 1518999)
Backed out changeset 1bf0b02bb0e0 (bug 1518999)
Backed out changeset 2203a9c52afa (bug 1518999)
Backed out changeset 10f07ca7a246 (bug 1518999)
Backed out changeset b90cf6b54c09 (bug 1518999)
2020-08-25 01:02:36 +03:00
Anny G b79310d312 Bug 1660345 - Remove unnecessary process checks from BrowserParent, r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D88066
2020-08-24 20:24:04 +00:00
Sean Feng 517cde9bae Bug 1518999 - Implement PerformancePaintTiming for FirstContentfulPaint r=smaug,mstange
Spec: https://w3c.github.io/paint-timing/#sec-PerformancePaintTiming
We only support FirstContentfulPaint at the moment.

Differential Revision: https://phabricator.services.mozilla.com/D66463
2020-08-24 16:03:31 +00:00
Mihai Alexandru Michis b162701621 Backed out changeset 0cad1ef724ee (bug 1371386) for causing failures in emoji-fallback-3.html
CLOSED TREE
2020-08-24 21:02:10 +03:00
Jonathan Kew ba87878325 Bug 1371386 - Take account of requirements for emoji-style or text-style presentation during font selection & fallback. r=m_kato
Differential Revision: https://phabricator.services.mozilla.com/D87304
2020-08-24 14:24:12 +00:00
Bob Owen ec09c21cdd Bug 1660463: Only allow printing of a selection when mDisallowSelectionPrint is false. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D88028
2020-08-24 14:29:29 +00:00
Emilio Cobos Álvarez 6e52b0c1c7 Bug 1636728 - Request a longer timeout in test_printpreview.xhtml. r=jwatt
The first patch in this bug makes this test a bit more heavy-weight.

Instead of rendering the print-preview document in an iframe, and
snapshotting the 400x400 pixels in the top left corner, we open a window
and snapshot the whole print preview document.

I could keep it doing the same if needed by passing the docshell
argument to window.printPreview. But this test wasn't great to begin
with, and the changes in part 1 are a net improvement imo.

The bad part is that they cause the test to become slower such as it can
time out in some debug builds. Request a longer timeout because of this.

Differential Revision: https://phabricator.services.mozilla.com/D87966
2020-08-24 11:14:27 +00:00
Joel Maher 5371bf42c5 Bug 166061 - Bug 1660661 - adjust svg alpha reftest expectations for windows 10 on hardware. r=kats
adjust svg alpha reftest expectations for windows 10 on hardware

Differential Revision: https://phabricator.services.mozilla.com/D87968
2020-08-23 16:04:52 +00:00
Botond Ballo 3a5e8351c5 Bug 1659973 - Bring back FrameMetrics::mVisualViewportOffset (but call it mVisualDestination). r=kats
Differential Revision: https://phabricator.services.mozilla.com/D87941
2020-08-22 22:59:47 +00:00
Stephen A Pohl f6a573510f Bug 1657743: Fix reftests. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D86721
2020-08-21 14:01:44 +00:00
Honza Bambas 2bc91fef35 Bug 1657974 - MOZ_LOG schedule and run of `FrameRequestCallback`, r=froydnj
Depends on D86740

Differential Revision: https://phabricator.services.mozilla.com/D86741
2020-08-13 14:41:16 +00:00
Honza Bambas 13026539fa Bug 1657960 - MOZ_LOG schedule and run of `mStyleFlushObservers` and `mLayoutFlushObservers`, r=froydnj
Depends on D86737

Differential Revision: https://phabricator.services.mozilla.com/D86738
2020-08-13 14:41:15 +00:00
Honza Bambas 8c06001afd Bug 1657941 - Log the first paint in `PresShell::Paint`, r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D86737
2020-08-13 14:39:45 +00:00
Hiroyuki Ikezoe c3e70abe26 Bug 1660189 - Bail out from nsPrintJob::DoCommonPrint if the docshell was destroyed in beforeprint event handlers. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D87827
2020-08-21 04:58:49 +00:00
Botond Ballo a621152a3c Bug 1543485 - Also update the code in ScrollToImpl() that proactively updates the callback transform and main thread visual viewport offset. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D87692
2020-08-21 01:24:59 +00:00
Botond Ballo 27cd351633 Bug 1543485 - Back out the hacky fix for bug 1549625. r=kats
Now that main thread scroll updates preserve the relative scroll offset
in APZ, this hacky fix is no longer necessary.

Differential Revision: https://phabricator.services.mozilla.com/D87687
2020-08-20 23:30:13 +00:00
Bob Owen 72fd7de5a6 Bug 1658299 Part 2: Add createDefaultSettings() to nsIPrinter for Windows. r=jwatt,jfkthame
This retrieves the same settings from the printer as
InitPrintSettingsFromPrinter.
There is probably a lot of scope for de-duplication of code here, but I decided
to try and protect the old fallback paths.

Depends on D87125

Differential Revision: https://phabricator.services.mozilla.com/D87604
2020-08-20 23:25:10 +00:00
Ting-Yu Lin b91e219fd9 Bug 1412687 Part 2 - Consider an overflow container's scrollable overflow when deciding whether to reflow it. r=dholbert
This patch is similar to Bug 1559961 Part 2 [1]. That is, we want to reflow
an overflow container again if its scrollable overflow block-end exceeds
the available block-size constraint.

[1] https://hg.mozilla.org/mozilla-central/rev/d377ce300d0349c1b7dc562bcf5343851d36c6ed

Differential Revision: https://phabricator.services.mozilla.com/D87630
2020-08-20 22:29:59 +00:00
Ting-Yu Lin 1308ebb070 Bug 1412687 Part 1 - Make const-cast clearer in nsTableRowGroupFrame::Reflow(). r=dholbert
ReflowInputFlags is a struct of bitfields, so we cannot use AutoRestore to
restore its member bitfield.

Differential Revision: https://phabricator.services.mozilla.com/D87629
2020-08-20 22:24:58 +00:00
Hiroyuki Ikezoe d19326f840 Bug 1660213 - Fixed an used variable error in nsDocumentViewer::GetCurrentSheetFrameAndPageNumber. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D87806
2020-08-20 22:02:54 +00:00
Daniel Holbert 8d972cd5cd Bug 1660294 part 0: Directly initialize nsSharedPageData member-var, and adjust its documentation. r=TYLin
Differential Revision: https://phabricator.services.mozilla.com/D86797
2020-08-20 17:57:45 +00:00
Erik Nordin 352e314767 Bug 1660285 - Improve Print Paper Size Test Assertions r=dholbert
This improves the paper assertions to check for attribute type, rather
than checking if the attribute is null, since undefined is not null and
can cause false positives.

Also updates the formatting to be congruent with other related tests.

Differential Revision: https://phabricator.services.mozilla.com/D87783
2020-08-20 17:52:20 +00:00
Emilio Cobos Álvarez b17bb7ed34 Bug 1660251 - After bug 1658173 we need to re-center pages if any dimensions change, not just if width changes. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D87757
2020-08-20 16:23:48 +00:00
Daniel Holbert e90fd447e6 Bug 1660166 followup: Mark nsPageFrame::GetPageNum as 'const'. r=TYLin
Differential Revision: https://phabricator.services.mozilla.com/D87753
2020-08-20 15:05:54 +00:00
Emilio Cobos Álvarez 54b5a9f5f5 Bug 1659457 - Do clone xml-pretty-printer's UA widget. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D87714
2020-08-20 11:29:45 +00:00
Daniel Holbert 335b4750cb Bug 1660166 part 3: Remove a redundant member-variable that represents the total number of pages. r=hiro
Before this patch stack, nsPageSequenceFrame and every nsPageFrame each
individually tracked the number of pages.

As of the previous patch, we've coalesced the nsPageFrame variables into a
single variable that lives on nsSharedPageData.  This patch here replaces
nsPageSequenceFrame's member-var with that nsSharedPageData variable, too.

Depends on D87696

Differential Revision: https://phabricator.services.mozilla.com/D87697
2020-08-20 06:16:04 +00:00
Daniel Holbert b39ca4f982 Bug 1660166 part 2: Let nsPageFrame determine its own page number, and store total number of pages in one central spot. r=hiro
Depends on D87695

Differential Revision: https://phabricator.services.mozilla.com/D87696
2020-08-20 06:12:33 +00:00
Daniel Holbert 16dd33822d Bug 1660166 part 1: In PrintedSheetFrame's reflow loop, cast the child frame to nsPageFrame (which is the concrete type that we know it has). r=hiro
We already do this static_cast'ing before this patch, for a single
nsPageFrame-specific method call.  This patch just captures the result of that
static_cast in a reusable variable, so that I can easily add another
nsPageFrame-specific function call in the next patch of this patch series.

(We can be confident this casting is valid, because we only ever give
PrintedSheetFrame this one type of child frame.)

Differential Revision: https://phabricator.services.mozilla.com/D87695
2020-08-20 06:12:32 +00:00
Erik Nordin b81a2922ac Bug 1658299 - Part 1: Add createDefaultSettings() to nsIPrinter for CUPS r=jwatt,emilio,geckoview-reviewers,owlish
This patch adds a createDefaultSettings() method to nsIPrinter to
initialize a default print settings object specific to that printer.
It implements the functionality for Linux and macOS but adds only stubs
for Windows.

Differential Revision: https://phabricator.services.mozilla.com/D87125
2020-08-20 06:11:08 +00:00
Bogdan Tara 48d00fff60 Backed out changeset ebf8dfa204ea (bug 1658299) for test_printer_default_settings.html failures CLOSED TREE 2020-08-20 05:36:37 +03:00
Ting-Yu Lin a594ed407c Bug 1633031 Part 3 - Remove unused parameters from DoFlexLayout(), ComputeMainSize(), and ComputeCrossSize(). r=dholbert
We do the flex algorithm by assuming the available block-size is
unconstrained. Thus, we can remove `availableBSizeForContent` and
`aStatus` passing to DoFlexLayout(), ComputeMainSize(), and
ComputeCrossSize().

Differential Revision: https://phabricator.services.mozilla.com/D87109
2020-08-19 21:10:48 +00:00
Ting-Yu Lin 290f578f8a Bug 1633031 Part 2 - Add reftests for fragmenting multi-line column-oriented flex containers. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D87108
2020-08-19 21:22:34 +00:00
Ting-Yu Lin 7cb8492735 Bug 1633031 Part 1 - Stop considering available block-size when wrapping flex lines in multi-line column-oriented flex container. r=dholbert
Although this goes against the suggestion of the sample algorithm in the
spec, this brings the layout of the multi-line column-oriented flex
container in paginated context closer to the layout with no
fragmentation. This also matches Google Chrome's behavior.

Tweak flexbox-unbreakable-child-2.html so that it matches the rendering
as of this patch. Change the height of `.muticol` and the removal of
border in `flexContainer` to let two flex items fit exactly into the
flex container's height, making reference easier to write.

Differential Revision: https://phabricator.services.mozilla.com/D87107
2020-08-19 21:10:01 +00:00
Erik Nordin 851b8f7c70 Bug 1658299 - Part 1: Add createDefaultSettings() to nsIPrinter for CUPS r=jwatt,emilio,geckoview-reviewers,owlish
This patch adds a createDefaultSettings() method to nsIPrinter to
initialize a default print settings object specific to that printer.
It implements the functionality for Linux and macOS but adds only stubs
for Windows.

Differential Revision: https://phabricator.services.mozilla.com/D87125
2020-08-20 00:23:59 +00:00
Hiroyuki Ikezoe 50f539d050 Bug 1657550 - Rewrite nsDocumentViewer::PrintPreviewScrollToPage. r=emilio
This change consists of;

1) Use switch statement for the given PrintPreview Navigation type.
2) Simply iterate over the children of nsPageSequenceFrame for
   PRINTPREVIEW_GOTO_PAGENUM
3) Use GetCurrentSheetFrameAndPageNumber for PRINTPREVIEW_PREV_PAGE and
   PRINTPREVIEW_NEXT_PAGE so that it should now match
   printPreviewCurrentPageNumber
   (that means the edge case where the current scroll position is in
    the gap between pages has been fixed by this change)
4) Scroll to the position where the target frame is positioned at the center of
   the print preview scroll port in the cases of PRINTPREVIEW_PREV_PAGE,
   PRINTPREVIEW_NEXT_PAGE and PRINTPREVIEW_GOTO_PAGENUM

4) is a bit debatable but it can be now easily modified by changing
ComputeScrollPositionFrameAtCenter later if it turns out the current way is not
reasonable.

Differential Revision: https://phabricator.services.mozilla.com/D87548
2020-08-19 22:50:54 +00:00
Hiroyuki Ikezoe 1f301a0a87 Bug 1657550 - Make GetCurrentPageNumberInPrintPreview return the current sheet frame along with the current page. r=emilio
We need the current sheet frame for PRINTPREVIEW_NEXT_PAGE and
PRINTPREVIEW_PREV_PAGE cases.

Differential Revision: https://phabricator.services.mozilla.com/D87547
2020-08-19 22:50:39 +00:00
Hiroyuki Ikezoe 692b6393c2 Bug 1657550 - Factor out the function to get the current page number in the print preview. r=emilio
We have to use the logic in the function for
nsDocumentViewer::PrintPreviewScrollToPage in subsequent changes.

Differential Revision: https://phabricator.services.mozilla.com/D87546
2020-08-19 22:50:29 +00:00
Hiroyuki Ikezoe ce091f13c6 Bug 1657550 - Preserve x-axis scroll position on printPreviewScrollToPage call in any cases. r=emilio
That's what we've done for PRINTPREVIEW_PREV_PAGE, PRINTPREVIEW_NEXT_PAGE
and PRINTPREVIEW_GOTO_PAGENUM.

Differential Revision: https://phabricator.services.mozilla.com/D87545
2020-08-19 22:50:15 +00:00
Hiroyuki Ikezoe 8c4b16591d Bug 1657550 - Use `scrollTopMax` position for PRINTPREVIEW_END. r=emilio
I suppose PRINTPREVIEW_END doesn't mean the last page.

Differential Revision: https://phabricator.services.mozilla.com/D87544
2020-08-19 22:50:05 +00:00
Hiroyuki Ikezoe 3a5eb8feb0 Bug 1657550 - Copy nsDocumentViewer::PrintPreviewScrollToPage for the old print preview UI. r=emilio
So that we can keep using the logic in the old print preview UI.

For the new print preview UI, the original PrintPreviewScrollToPage will be
modified gradually in subsequent changes.

Differential Revision: https://phabricator.services.mozilla.com/D87543
2020-08-19 22:51:07 +00:00
Glenn Watson 7aba1426fd Bug 1659676 - Simplify WR hit-test API. r=kats,kvark,nical
Specifically:
 - Remove hit test tag from common display item properties.
 - Simplify WR bindings to use hit-test items exclusively.
 - Remove support for transparent rectangles to be hit-test items.
 - Remove support for any primitive to be a hit-test item.

Differential Revision: https://phabricator.services.mozilla.com/D87421
2020-08-19 15:05:30 +00:00
Emilio Cobos Álvarez 325d955f89 Bug 1660048 - Remove dom.forms.color and dom.forms.datetime. r=smaug,marionette-reviewers,whimboo
They're enabled in all configurations and there's no plan to change
this. With it, dom.experimental_forms is also useless, so we can remove
it too.

Differential Revision: https://phabricator.services.mozilla.com/D87623
2020-08-19 18:24:06 +00:00
longsonr e3b924526e Bug 1659783 - Fix use pointing to image elements r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D87571
2020-08-19 15:25:39 +00:00
Jamie Nicol 54ed855193 Bug 1647797 - Add GeckoView API to listen for when contentful paint status has been reset. r=geckoview-reviewers,agi,esawin
Android-components listens to the GeckoView callback onFirstContentfulPaint to
track whether a contentful paint has occured, in order to decide when to
thumbnail a tab. Currently this gets fired once per tab.

However, when the GeckoSession is paused, we clear cached resources in the
compositor. This means that when the session is resumed, the compositor does not
have the necessary information to render the page (such as painted content
buffers, or the webrender display list). Because android-components attempts to
capture a new thumbnail immediately upon resuming, it ends up capturing a blank
thumbnail.

To fix this, add a new callback onPaintStatusReset() which is invoked when the
cached resources are cleared. Android-components can listen for this to be
informed when the contentful paint is no longer visible. It can then wait until
the subsequent contentful paint occurs before capturing the thumbnail.

Differential Revision: https://phabricator.services.mozilla.com/D87341
2020-08-19 15:24:14 +00:00
Emilio Cobos Álvarez 7c7897149c Bug 1414600 - Make media queries and viewport units in print be evaluated against the default page size minus margins. r=dholbert,nordzilla
For that, move the default page margin computation to nsPresContext.

See https://github.com/w3c/csswg-drafts/issues/5437 as to why doing this
and other alternatives.

Differential Revision: https://phabricator.services.mozilla.com/D87311
2020-08-19 10:32:16 +00:00
Csoregi Natalia 9af7b6fe90 Backed out changeset b6d1532f6cd4 (bug 1414600) for failures on mq_print_height.xhtml . CLOSED TREE 2020-08-19 04:58:49 +03:00
Botond Ballo eff3b083d0 Bug 1659642 - Split out a new file APZPublicUtils.h from APZUtils.h. r=kats
By moving the few things that need to be exposed to other components
to APZPublicUtils.h, APZUtils.h becomes much less widely included
(and thus changing it triggers a quicker recompile) while retaining
most of its utilities.

Differential Revision: https://phabricator.services.mozilla.com/D87404
2020-08-19 00:51:46 +00:00
Sonia Singla 5f5c9fd7f2 Bug 1659267 - Remove usages of -moz-user-select across the Firefox codebase. r=emilio,marionette-reviewers,geckoview-reviewers,preferences-reviewers,whimboo,agi
Differential Revision: https://phabricator.services.mozilla.com/D87499
2020-08-18 23:37:51 +00:00
Emilio Cobos Álvarez ae622cd8cd Bug 1414600 - Make media queries and viewport units in print be evaluated against the default page size minus margins. r=dholbert,nordzilla
For that, move the default page margin computation to nsPresContext.

See https://github.com/w3c/csswg-drafts/issues/5437 as to why doing this
and other alternatives.

Differential Revision: https://phabricator.services.mozilla.com/D87311
2020-08-19 00:02:34 +00:00
Csoregi Natalia c1ed2ba64f Backed out 6 changesets (bug 1518999) for marionette failures on test_refresh_firefox.py. CLOSED TREE
Backed out changeset eb8e5411868e (bug 1518999)
Backed out changeset 0924e0169dcb (bug 1518999)
Backed out changeset b7de245b329c (bug 1518999)
Backed out changeset f2a6a3797ef1 (bug 1518999)
Backed out changeset 123403a14312 (bug 1518999)
Backed out changeset 1968b8ca14d7 (bug 1518999)
2020-08-18 23:53:26 +03:00
Sean Feng d914187ce2 Bug 1518999 - Implement PerformancePaintTiming for FirstContentfulPaint r=smaug,mstange
Spec: https://w3c.github.io/paint-timing/#sec-PerformancePaintTiming
We only support FirstContentfulPaint at the moment.

Differential Revision: https://phabricator.services.mozilla.com/D66463
2020-08-06 16:13:44 +00:00
Botond Ballo d0d6c1480e Bug 1519285 - Remove FrameMetrics::mVisualViewportOffset. r=kats
It is now redundant with mScrollOffset which always stores the
visual scroll offset.

Differential Revision: https://phabricator.services.mozilla.com/D87162
2020-08-18 05:12:37 +00:00
Botond Ballo aa190d473c Bug 1519285 - Populate the (main thread's view of the) visual scroll offset in ComputeScrollMetadata(). r=kats
Differential Revision: https://phabricator.services.mozilla.com/D87160
2020-08-18 04:13:01 +00:00
Botond Ballo a4ecb96c87 Bug 1519285 - Replace most calls to FrameMetrics::{Get,Set}ScrollOffset() with calls to the more specific visual or layout accessors. r=kats
Likewise for RepaintRequest, and direct usages of mScrollOffset
inside FrameMetrics.

The general idea is:

 * APZ's copy of the FrameMetrics stores the visual scroll offset,
   so calls to GetScrollOffset() on it are replaced with
   GetVisualScrollOffset()

 * The layer tree's copy of the frame metrics (and copies derived
   from that like mLastContentPaintMetrics) currently stores the
   layout scroll offset, so calls to GetScrollOffset() on those
   are replaced with GetLayoutScrollOffset().

The latter changes are particularly important, as they enable us
to modify the layer tree's copy to store (a main thread snapshot
of) the visual offset in mScrollOffset in a future patch.

This patch intends no functional changes. In the cases where we
change GetScrollOffset() to GetLayoutScrollOffset(), mScrollOffset
and mLayoutViewport.TopLeft() should already be storing the same
thing.

The patch identifies a few usages as suspicious but leaves them
functionally unchanged for now.

A few problematic usages of GetScrollOffset() remain, which will
require other fixes to remove.

Differential Revision: https://phabricator.services.mozilla.com/D87159
2020-08-18 05:11:23 +00:00
Botond Ballo 6ec4a23dd3 Bug 1519285 - Populate both scroll offsets in CalculateBasicFrameMetrics(). r=kats
Take advantage of them in CalculateRectToZoomTo(), where we also fix
a previously-incorrect usage.

Differential Revision: https://phabricator.services.mozilla.com/D87156
2020-08-18 04:55:46 +00:00
Nika Layzell 482d731e3a Bug 1614524 - Part 1: Add support for process-switching object/embed loads, r=mattwoodrow,smaug,kamidphish
By passing a weak reference back to the DocumentChannelParent into
DocumentLoadListener for object loads, we are able to handle process switching
loads by asking the content process to create a BrowsingContext, and delaying
the real process switch until it becomes available.

The load then completes as it would before, acting as a normal process-switching
subframe load.

Differential Revision: https://phabricator.services.mozilla.com/D86580
2020-08-18 16:49:34 +00:00
Jonathan Watt 970f8373d2 Bug 1659489. Rename nsPrintJob's mIsDoingPrintPreview to mCreatedForPrintPreview. r=bobowen
Differential Revision: https://phabricator.services.mozilla.com/D87296
2020-08-17 21:27:00 +00:00
Emilio Cobos Álvarez fb68681896 Bug 1659432 - Don't reuse the existing print job when restarting print preview. r=bobowen
Differential Revision: https://phabricator.services.mozilla.com/D87417
2020-08-18 12:03:38 +00:00
Daniel Holbert 4e78d2ce23 Bug 1658173 part 2: Scale down print-preview so that every sheet fits into the scrollport, in both dimensions (not just the inline axis). r=emilio
Note: Previously we were scaling based on the available ISize (and we were
ignoring the BSize for scaling purposes).  Now we want to consider the BSize as
well, so the obvious next step would be to scale based on the available BSize -
but that doesn't work, because the available BSize is unconstrained here. (It's
unconstrained, even though we're fragmenting, because thankfully we don't
attempt to fragment the nsPageSequenceFrame itself -- we only fragment at a
level further down in the frame tree.)

So: this patch changes us to instead scale down based on the *computed* size
(rather than the available size), such that both dimensions fit.  The computed
size here is the size of the scrollport; and, importantly, it has a finite
value in the block axis (unlike the *available* BSize which is unconstrained
here).

Note that the available ISize and the computed ISize are the same in this case
(they're both the ISize of the scrollport), so there's no behavior-change here
for the computation of the inline-axis-based scale factor.

Differential Revision: https://phabricator.services.mozilla.com/D87021
2020-08-17 21:08:37 +00:00
Daniel Holbert 1cc2b45cc6 Bug 1658173 part 1: Increase the height of the print-preview viewport in automated test. r=emilio
This hange ensures that the upper-left corner of this test's print-preview
area continues to show the previewed sheet (rather than the uninteresting gray
print preview background color).

Without this test change, the next patch in this series would cause this test's
print-previewed-sheet to be scaled down vertically (and shifted over
horizontally); and the shift is sizeable enough to push the sheet "out of
frame" of the relatively-small area that this test snapshots when doing
screenshot comparisons.  We obviously don't want that to happen; that would
nerf this test's screenshot-equality comparisons, and it would also cause this
test's screenshot-not-equal comparisons to start failing.

As noted in the included code-comment in the test: we can probably revert this
change once we've fixed this test to make it compare a larger area of the
print-preview rendering, in bug 1602410.

Differential Revision: https://phabricator.services.mozilla.com/D87317
2020-08-17 21:08:29 +00:00
Zeke Medley a591e69aa0 Bug 1591204 - Support forced colors media feature r=emilio
Enabled behind layout.css.forced-colors.enabled pending finalization
of the spec:

<https://drafts.csswg.org/mediaqueries-5/#forced-colors>

Differential Revision: https://phabricator.services.mozilla.com/D87147
2020-08-17 20:50:49 +00:00
Hiroyuki Ikezoe 1bfd4639dc Bug 1657763 - Choose the closest page to the center of the scroll port as the "current" page. r=emilio
Unfortunately there is no particular way to write automated tests without
exposing a bunch of metrics in the print preview window, such as each
PrintedSheetFrame height, the gap length between the sheets, print preview
scale, the scroll port rect, the current scroll position, etc. etc. So I just
tested this change with the frontend change to show the current page number
there by :mstriemer. [1]

[1] https://phabricator.services.mozilla.com/D86427

Differential Revision: https://phabricator.services.mozilla.com/D87203
2020-08-17 20:54:06 +00:00
Sean Feng 85bfe3d376 Bug 1200896 - Make the document blocked by the topmost element in the top layer r=emilio
Spec: https://html.spec.whatwg.org/multipage/#blocked-by-a-modal-dialog

Depends on D86392

Differential Revision: https://phabricator.services.mozilla.com/D86227
2020-08-17 15:41:19 +00:00
Shinichi Morimoto bc916f4b16 Bug 1659265 - remove layout.css.offset-logical-properties.enabled. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D87297
2020-08-17 17:51:31 +00:00
Boris Chiou b9153cdc94 Bug 1639963 - Support aspect-ratio for HTML canvas. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D79570
2020-08-17 07:14:21 +00:00
Boris Chiou 33a43f7fc9 Bug 1639963 - Support aspect-ratio for svg frames. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D79363
2020-08-17 07:14:19 +00:00
Boris Chiou 0b7ae2d7e9 Bug 1639963 - Support aspect-ratio for svg object and iframe (i.e. nsSubDocumentFrame). r=emilio
When <object> targets to a svg image, we use nsSubDocumentFrame. The
intrinsic ratio should be overridden by aspect-ratio while computing
its size on this frame.

This update in nsSubDocumentFrame also works in iframe.

Differential Revision: https://phabricator.services.mozilla.com/D79362
2020-08-17 07:07:38 +00:00
Boris Chiou 10e1d0f620 Bug 1639963 - Support aspect-ratio for video element. r=dholbert
This includes a update of the ini file. I noticed the color
of the video is not equal to "rgb(0, 128, 0)" (i.e. background-color: green).
It is "rgb(1, 128. 1)" on Mac (without WebRender),
"rgb(0, 125, 0)" on Mac (with WebRender), and "rgb(1, 128, 2)" on Linux.
Perhaps it is a bug of our video rendering or video scaling. Therefore,
I added fuzzy into the ini file with max 0-3 difference per channel.

(Note: The size of this video is 50x50, so the max number of pixels is 2500.)

Differential Revision: https://phabricator.services.mozilla.com/D79337
2020-08-17 08:28:37 +00:00
Boris Chiou 5b6832c5f3 Bug 1639963 - Define the default size for replaced elements. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D81006
2020-08-17 07:10:39 +00:00
Boris Chiou cb69cd917a Bug 1639963 - Drop redundant check of auto in nsImageFrame. r=emilio
Appearally, we don't have to check mAspectRatio.auto_ because we checked it
already in the same function.

Differential Revision: https://phabricator.services.mozilla.com/D79336
2020-08-17 07:08:16 +00:00
Boris Chiou 38a854f9b9 Bug 1639963 - Apply Automatic content-based minimum sizes for aspect-ratio. r=emilio
Basically, if the overflow is visible and its min-height/min-width is
auto, we have to get the maximal value between the content size and
the size of the ratio-depentent axis.

https://drafts.csswg.org/css-sizing-4/#aspect-ratio-minimum

Differential Revision: https://phabricator.services.mozilla.com/D78965
2020-08-17 07:02:25 +00:00
Boris Chiou dd3c20ccd8 Bug 1639963 - Update the API of nsIFrame::ComputeSize for aspect-ratio. r=emilio
In order to apply Automatic content-based minimum sizes, we have to know
the content size on the block axis. We cannot get the content size until
we finish the reflow of the child frames. So we have to keep a flag
which indicates the size of the ratio-dependent axis is overrideen by
aspect-ratio in ReflowInput.

We will set the correct return value in the next patch, For now, we
always return AspectRatioUsage::None.

Differential Revision: https://phabricator.services.mozilla.com/D79335
2020-08-17 06:57:56 +00:00
Boris Chiou 4e7c9bc450 Bug 1639963 - Fix margin collapsing with aspect-ratio. r=emilio
Basically, we treat aspect-ratio (together with inline size) as a
non-auto block size. This means the block is not empty when using
aspect-ratio.

Also, add 2 tentative wpts for this, based on the current spec issue
examples.

https://github.com/w3c/csswg-drafts/issues/5328

Differential Revision: https://phabricator.services.mozilla.com/D84452
2020-08-17 06:26:19 +00:00
Boris Chiou b425a6022b Bug 1639963 - Calculate inline size and block size based on aspect-ratio. r=emilio
We calculate the size of ratio-dependent axis by aspect-ratio while
initializing its ReflowInput, for most of the basic block cases.

This patch doesn't include "Automatic content-based minimum sizes",
which will be handled later. Besides, replaced elements will be handled
later as well.

We don't pass abspos-004.tentative.html because there is still a
spec issue: https://github.com/w3c/csswg-drafts/issues/5151.
For other tests we didn't pass (e.g. block-aspect-ratio-009.tentative.html,
or replaced-element-00x.tentative.html), we fix them later.

Besides, in this patch, we don't handle the case if the size of
ratio-determining axis uses intrinsic size keywords (which needs to be
calculated by its content size). We will fix this in the following bug
(Bug 1646100).

Differential Revision: https://phabricator.services.mozilla.com/D78964
2020-08-17 06:26:19 +00:00
Narcis Beleuzu 28a919e715 Backed out changeset 6d71d0556c40 (bug 1568130) for mochitest failures on test_focus_menu.xhtml 2020-08-17 05:43:25 +03:00
Zeke Medley d1653ccb9a Bug 1658780 - Update the prefers-contrast media query to use the new more/less keywords r=emilio
Per the resolution here:
https://github.com/w3c/csswg-drafts/issues/2943#issuecomment-672994920

Differential Revision: https://phabricator.services.mozilla.com/D86848
2020-08-17 01:41:16 +00:00
Jared Wein b119a66052 Bug 1568130 - Stop consuming key events on keyup since webpages may be listening for them. r=NeilDeakin
Differential Revision: https://phabricator.services.mozilla.com/D86861
2020-08-16 23:45:36 +00:00
Emilio Cobos Álvarez 6f85f8c453 Bug 1656081 - Cleanup iframe sizing so that it does the same as every other replaced element. r=boris
Differential Revision: https://phabricator.services.mozilla.com/D85386
2020-08-16 18:45:39 +00:00
Emilio Cobos Álvarez 268af41f18 Bug 1600635 - Fix two minor issues with scrollbar style caching. r=heycam
Add -moz-inert and -moz-script-level to the set of internal properties
that aren't included in "all".

-moz-inert may need to be uncacheable in the future if we make it not
change the pointer-events computed value. Left a comment to that effect.

Differential Revision: https://phabricator.services.mozilla.com/D87115
2020-08-16 00:43:48 +00:00
Ting-Yu Lin a9328a86bf Bug 1658198 - Provide a minimum starting value for extraBlockSize in FindBestBalanceBSize. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D87131
2020-08-16 00:46:30 +00:00
longsonr 09a2a0f739 Bug 1658455 - Remove eANIMATION and eFILTER from IsNodeOfType r=dholbert
- eANIMATION is the same as testing for SVGAnimationElement
- eFILTER is the same as testing for SVGFE

Differential Revision: https://phabricator.services.mozilla.com/D86695
2020-08-15 10:38:17 +00:00
Ting-Yu Lin 3489d995ee Bug 1597462 - Register observers for AccessibelCaretEventhub only on current docshell. r=hiro
This effectively reverts Bug 1441279 Part 6.
https://hg.mozilla.org/mozilla-central/rev/eab2985673a5

The original patch's extend commit message describes that if a
AccessibleCaretEventHub registers scroll and reflow observers only on the leaf
docshell, it fails to update caret position when an ancestor iframe is
scrolled.

I think the above statement is incorrect. When scrolling an ancestor
iframe, the visible caret in an inner iframe should scroll with other
elements by virtue of APZ. Also, `AccessibleCaret::SetPosition()` itself
detects whether its position is changed relative to the top level
absolute position container (the moz-custom-content-container under
CanvasFrame). When scrolling an ancestor iframe, AccessibleCaret's
position in the inner iframe should remain static (relative to the inner
frame.)

Differential Revision: https://phabricator.services.mozilla.com/D84873
2020-08-14 23:30:55 +00:00
Bogdan Tara a773454b8e Backed out changeset b21c793d9d52 (bug 1658173) for test_printpreview.xhtml failures CLOSED TREE 2020-08-15 04:25:23 +03:00
Timothy Nikkel 89a79d6e8e Bug 1619186 - Apply the layout-to-visual transform when querying text/caret rects. r=masayuki,botond
Differential Revision: https://phabricator.services.mozilla.com/D86983
2020-08-15 00:43:51 +00:00
Lee Salzman 336b9f7a61 Bug 1657498 - report Software WebRender in about:support. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D87122
2020-08-14 22:30:05 +00:00
Daniel Holbert 3609cf24bc Bug 1658173: Scale down print-preview so that every sheet fits into the scrollport, in both dimensions (not just the inline axis). r=emilio
Note: Previously we were scaling based on the available ISize (and we were
ignoring the BSize for scaling purposes).  Now we want to consider the BSize as
well, so the obvious next step would be to scale based on the available BSize -
but that doesn't work, because the available BSize is unconstrained here. (It's
unconstrained, even though we're fragmenting, because thankfully we don't
attempt to fragment the nsPageSequenceFrame itself -- we only fragment at a
level further down in the frame tree.)

So: this patch changes us to instead scale down based on the *computed* size
(rather than the available size), such that both dimensions fit.  The computed
size here is the size of the scrollport; and, importantly, it has a finite
value in the block axis (unlike the *available* BSize which is unconstrained
here).

Note that the available ISize and the computed ISize are the same in this case
(they're both the ISize of the scrollport), so there's no behavior-change here
for the computation of the inline-axis-based scale factor.

Differential Revision: https://phabricator.services.mozilla.com/D87021
2020-08-14 22:10:48 +00:00
Matt Woodrow 02b6ed52b4 Bug 1656817 - Don't create WebRender gradient items for empty gradients. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D86891
2020-08-14 00:56:35 +00:00
Emilio Cobos Álvarez e462454933 Bug 1386418 - Fix two issues in nsIFrame::HandleRelease. r=dholbert
The frame selection changes can run script, so we need to check for the
frame itself getting destroyed. This fixes the crash as reported.

Additionally, the document check it does for pointer capture is
incorrect, it should use the composed, not uncomposed doc, so that it
works in shadow dom.

Differential Revision: https://phabricator.services.mozilla.com/D87097
2020-08-14 17:36:03 +00:00
Emilio Cobos Álvarez 4af1306128 Bug 1658469 - Don't clone UA widgets for printing. r=smaug
We run the widget initialization code regardless on bind, and some of it
doesn't deal with shadow roots being already populated.

Differential Revision: https://phabricator.services.mozilla.com/D86952
2020-08-14 16:27:49 +00:00
Agi Sferro e9a73810de Bug 1648149 - Move GeckoViewContent to Actor. r=snorp
Differential Revision: https://phabricator.services.mozilla.com/D84040
2020-08-14 14:48:37 +00:00
Kagami Sascha Rosylight 3742a0a9e0 Bug 1659028 - Move IsDisabled() from nsGeneralHTMLElement to Element r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D87022
2020-08-14 08:36:36 +00:00
Emilio Cobos Álvarez 31a5cfa91b Bug 1659084 - Clean up some nsPageSequenceFrame. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D87061
2020-08-14 12:23:39 +00:00
Mihai Alexandru Michis fc1c9759fc Backed out 3 changesets (Bug 1200896) for causing Bug 1659042.
CLOSED TREE

Backed out changeset 17df14f0b129 (bug 1200896)
Backed out changeset 5d9e9bd12cd2 (bug 1200896)
Backed out changeset 7f016de8d52f (bug 1200896)
2020-08-14 09:06:45 +03:00
Mihai Alexandru Michis 2ce16351f8 Backed out 5 changesets (bug 1648149) for causing android wpt failures in closed-attribute.window.html
CLOSED TREE

Backed out changeset 470b0fa401ab (bug 1648149)
Backed out changeset 938bf3fab3ee (bug 1648149)
Backed out changeset a41e4158e960 (bug 1648149)
Backed out changeset 700f8e53ed10 (bug 1648149)
Backed out changeset 3f74337b160e (bug 1648149)
2020-08-14 08:40:29 +03:00
Hiroyuki Ikezoe 4400ed3d5b Bug 1657911 - Call nsDeviceContext::UnregisterPageDoneCallback only in the parent process and only if IsSyncPagePrinting. r=jwatt
The call sites of nsDeviceContext::RegisterPageDoneCallback are in the parent
process along with the IsSyncPagePrinting check.

Differential Revision: https://phabricator.services.mozilla.com/D86868
2020-08-13 23:15:37 +00:00
Csoregi Natalia 8896454838 Backed out 4 changesets (bug 1656817, bug 1656818, bug 1658858) for bustage on RendererOGL.cpp. CLOSED TREE
Backed out changeset 9c8e4ec4e47c (bug 1656818)
Backed out changeset 92252cfd26de (bug 1656818)
Backed out changeset 1bebb79150d6 (bug 1656817)
Backed out changeset e1becb3a2fb5 (bug 1658858)
2020-08-14 00:25:44 +03:00
Matt Woodrow 4795ba88e8 Bug 1656817 - Don't create WebRender gradient items for empty gradients. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D86891
2020-08-13 20:42:42 +00:00
Agi Sferro 4c8aa34ba2 Bug 1648149 - Move GeckoViewContent to Actor. r=snorp
Differential Revision: https://phabricator.services.mozilla.com/D84040
2020-08-13 20:24:54 +00:00
Sean Feng 3f16476b10 Bug 1200896 - Make the document blocked by the topmost element in the top layer r=emilio
Spec: https://html.spec.whatwg.org/multipage/#blocked-by-a-modal-dialog

Differential Revision: https://phabricator.services.mozilla.com/D86227
2020-08-13 19:05:37 +00:00
Csoregi Natalia bd22249ff0 Backed out 2 changesets (bug 1658469) for assertion failures on nsVideoFrame.cpp. CLOSED TREE
Backed out changeset 08a78618c76c (bug 1658469)
Backed out changeset 5c8a07fc83ed (bug 1658469)
2020-08-13 21:13:08 +03:00
Emilio Cobos Álvarez 5576f7d53c Bug 1658469 - Fix new test so that we actually load the second page.
MANUAL PUSH: Fix orange on a CLOSED TREE
2020-08-13 17:43:26 +02:00
Emilio Cobos Álvarez 6368b296b2 Bug 1658469 - When cloning a shadow root for printing, also copy the UA-widget-ness. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D86952
2020-08-13 13:06:38 +00:00
Emilio Cobos Álvarez 68dd457e8b Bug 1658903 - Remove nsPrintJob::TurnScriptingOn. r=jwatt
This code was there to prevent stuff like bug 424377, but nowadays clone
documents are data documents to begin with, so they can't load scripts.

Differential Revision: https://phabricator.services.mozilla.com/D86948
2020-08-13 12:22:56 +00:00
Emilio Cobos Álvarez ce8137da72 Bug 1657991 - Don't bail out on some printpreview tests if there are no printers. r=jwatt
Before bug 1657164 there was always some printer on Linux and this test
ran just fine.

We don't really need a printer to test print preview, the test works
just fine.

I noticed this while auditing the "lastPrinterName" checks.

Differential Revision: https://phabricator.services.mozilla.com/D86404
2020-08-13 11:57:36 +00:00
Emilio Cobos Álvarez 3cc8263836 Bug 1658894 - Move selection range caching to Document::CreateStaticClone(). r=jwatt
This is needed to eventually make the print process able to process the
same static document twice.

Differential Revision: https://phabricator.services.mozilla.com/D86937
2020-08-13 11:11:35 +00:00
Lee Salzman 8326780f95 Bug 1652894 - add SWGL RenderTextureHosts. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D86340
2020-08-12 21:25:17 +00:00
Emilio Cobos Álvarez 0c03ba166c Bug 1658471 - Remove dom.security.featurePolicy.enabled. r=baku
We've shipped it on by default since 74 (bug 1617219).

Differential Revision: https://phabricator.services.mozilla.com/D86665
2020-08-12 10:57:04 +00:00
Emilio Cobos Álvarez b20e708214 Bug 561154 - Implement :-moz-any() as an alias of :is(). r=heycam
This is strictly better and more flexible, but can change specificity so
have a pref in case it causes trouble. I doubt it will though, the
specificity rules of :is() make more sense, and my gut feeling is that
:-moz-any is not very used on the wild.

Make it early-beta-or-earlier for now to minimize risk, once this is on
nightly for a bit we can enable it everywhere.

Differential Revision: https://phabricator.services.mozilla.com/D86696
2020-08-12 04:26:07 +00:00
Joel Maher 5f474b909b Bug 1658057 - Adjust reftest expectations for windows reftests on hardware. r=bc
Adjust reftest expectations for windows reftests on hardware

Differential Revision: https://phabricator.services.mozilla.com/D86450
2020-08-11 21:25:03 +00:00
Emilio Cobos Álvarez 302b74debe Bug 1657173 - Make <link rel=preload as=style> not block onload incorrectly. r=mayhemer
And fix the only WPT for this while at it which was using the wrong URL
(and thus would always pass).

This actually makes me a bit uncomfortable given the amount of times
I've seen the pattern:

    <link href="important.css" rel="preload" as="style" onload="this.rel = 'stylesheet'">

As that means that important.css won't block the load event. But let's
try.

Differential Revision: https://phabricator.services.mozilla.com/D86049
2020-08-11 09:41:28 +00:00
Ting-Yu Lin 924f2d9957 No bug - Fix a typo in nsFlexContainerFrame.cpp. r=emilio DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D86655
2020-08-11 00:45:54 +00:00
Razvan Maries 0dc0ced176 Backed out 2 changesets (bug 1200896) for perma failures on browser_pioneer_ui.js. CLOSED TREE
Backed out changeset c7ae88fd1bd7 (bug 1200896)
Backed out changeset 8b57f059e63e (bug 1200896)
2020-08-10 23:08:04 +03:00
Sean Feng 17473c0717 Bug 1200896 - Make the document blocked by the topmost element in the top layer r=emilio
Spec: https://html.spec.whatwg.org/multipage/#blocked-by-a-modal-dialog

Differential Revision: https://phabricator.services.mozilla.com/D86227
2020-08-10 18:20:51 +00:00
Emilio Cobos Álvarez b800731028 Bug 1655751 - Invalidate for CSSOM changes in a more fine-grained way. r=heycam
Also, for changes in CSS declarations, like changing
cssRules[i].style.color or something, we end up avoiding a lot of the
work we were doing.

This page still trips us in the sense that they add a stylesheet, then
call getBoundingClientRect(), then insert more rules in the stylesheet,
which causes us to rebuild a lot of the cascade data.

We could try to detect appends to the last stylesheet on the list or
something I guess, and avoid rebuilding the cascade data in some cases.

Depends on D85615

Differential Revision: https://phabricator.services.mozilla.com/D85616
2020-08-10 18:00:44 +00:00
Dorel Luca c243829674 Backed out 5 changesets (bug 1623764) for WPT failures in /editing/run/forwarddelete.html. CLOSED TREE
Backed out changeset 838b1a256f25 (bug 1623764)
Backed out changeset 00911e3c92c3 (bug 1623764)
Backed out changeset 5f7d278953d7 (bug 1623764)
Backed out changeset 0059379a3c29 (bug 1623764)
Backed out changeset 6e3a9276ec41 (bug 1623764)
2020-08-10 09:07:48 +03:00
Kagami Sascha Rosylight ddbb369d71 Bug 1623764 - Part 4: Stop at hard linebreaks when eat_space_to_next_word r=emilio,masayuki
Differential Revision: https://phabricator.services.mozilla.com/D85923
2020-08-09 12:58:27 +00:00
Kagami Sascha Rosylight 96a85f4c16 Bug 1623764 - Part 3: Expose IsLineWrapped via LineInfo r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D85922
2020-08-09 12:58:13 +00:00
Kagami Sascha Rosylight 00633d6b49 Bug 1623764 - Part 2: Add mSawInlineCharacter to PeekWordState r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D85921
2020-08-09 12:58:05 +00:00
Kagami Sascha Rosylight dfdf849335 Bug 1623764 - Part 1: Destruct ILineIterator from where it's initialized r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D85920
2020-08-09 12:57:58 +00:00
Emilio Cobos Álvarez a732be1dd6 Bug 1658140 - Fix percentage background-size on the root when out-of-flow. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D86482
2020-08-09 22:25:29 +00:00
Emilio Cobos Álvarez 2b6c7db4e8 Bug 1657363 - Make nsIPrinterList.printers return a promise. r=jwatt
I intentionally removed the "move the default printer to the front" in
windows because that's not a guarantee that we provide in CUPS, but lmk
if you want it back.

I have zero idea about why the GlobalPrinters code was so ridiculously
complex.

Depends on D86396

Differential Revision: https://phabricator.services.mozilla.com/D86397
2020-08-09 22:05:57 +00:00
Kartikaya Gupta b242b603bc Bug 1657995 - Rename UpdateViewportOverridden to a more appropriate name. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D86491
2020-08-09 21:40:56 +00:00
Kartikaya Gupta 6a68ea3e31 Bug 1657995 - Remove GetIsViewportOverridden. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D86438
2020-08-09 20:28:49 +00:00
Emilio Cobos Álvarez e07d5eb564 Bug 1657437 - Don't treat lone CRs as segment breaks. r=jfkthame
That prevents preceding whitespace from getting collapsed.

When there's a single lone CR (so `a\rb`) our behavior here diverges
from Chrome's but matches Safari's. We treat it as ZWSP.

That matches the initial resolution of [1], but then there have been
various doing and undoings of that resolution, so it's not totally clear
to me what the correct behavior per spec should be. I think "treat it as
other control character"? But I haven't dug into what that implies, so
for now I've just kept behavior there as-is.

[1]: https://github.com/w3c/csswg-drafts/issues/855

Differential Revision: https://phabricator.services.mozilla.com/D86188
2020-08-08 16:21:35 +00:00
Timothy Nikkel 2de46c6ff5 Bug 1656802. Make visual viewport only layout scrollbars affect the composition bounds/visual viewport. r=emilio,kats
AFAICT the spec says that these layout scrollbars that take up no layout space that scroll the visual viewport do affect the size of the visual viewport. (Double check this)

Most other users don't care about the size of these special scrollbars.

I left nsIDOMWindowUtils::getScrollbarSize unchanged (NB different from nsIDOMWindowUtils::getScrollbarSizes which is modified by this patch) because I'm less sure. I will file a followup about it.

Differential Revision: https://phabricator.services.mozilla.com/D85708
2020-08-07 11:40:52 +00:00
Timothy Nikkel 345de90fa2 Bug 1656802. If both scrollbars are layout and present and only for the visual viewport they need to be adjusted to not overlap. r=emilio
The existing calculation will make them overlap. The AdjustOverlappingScrollbars code was written with overlay scrollbars in mind but it looks like it will work just fine for this case.

Differential Revision: https://phabricator.services.mozilla.com/D85707
2020-08-07 11:40:55 +00:00
Timothy Nikkel a5c2284d8d Bug 1656802. Position the scrollcorner if we have both layout scrollbars and they are both for the visual viewport only. r=emilio
Otherwise the calculation above would lead to an empty rect for the scroll corner.

The scrollbar rects as computed now still overlap each other and the scroll corner, the next patch fixes that.

Differential Revision: https://phabricator.services.mozilla.com/D85706
2020-08-07 11:40:57 +00:00
Timothy Nikkel 415340d3d5 Bug 1656802. In LayoutScrollbars move the calculation of the scrollbar rects to the first thing in the function. r=emilio
There is no dependency in this code as far as I can tell.

The next patch needs the scrollbar rects for the scroll corner calculation.

Differential Revision: https://phabricator.services.mozilla.com/D85705
2020-08-08 07:07:46 +00:00
Timothy Nikkel 36e43673c3 Bug 1656802. Shift back in layout scrollbars that are only for the visual viewport so they are visible. r=emilio
Layout scrollbars that were only created for the visual viewport had no space reserved for them, so we need to shift them back in like overlay scrollbars. Otherwise they sit just outside of the scroll port and are not visible.

Differential Revision: https://phabricator.services.mozilla.com/D85704
2020-08-08 07:07:57 +00:00
Timothy Nikkel a7100c9def Bug 1656802. Add a comment explaining how overlay scrollbars work with their negative margin. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D85703
2020-08-08 07:07:57 +00:00
Timothy Nikkel 0a37053b5b Bug 1656802. Add state variables to the scroll frame to track when scrollbars are only created to scroll the visual viewport within the layout viewport. r=emilio,kats
We need to distinguish these special scrollbars for several different reasons in upcoming patches.

Differential Revision: https://phabricator.services.mozilla.com/D85702
2020-08-07 11:40:47 +00:00
Timothy Nikkel bdf314cb67 Bug 1656802. Calculate if we need scrollbars to scroll the visual viewport. r=emilio,kats
This fixes the regression we created with the first patch.

Differential Revision: https://phabricator.services.mozilla.com/D85701
2020-08-07 11:40:46 +00:00
Timothy Nikkel 54832c7143 Bug 1656802. Add flags that let us differentiate not showing scrollbars because something is overflow hidden from not showing scrollbars for other reasons. r=emilio
For the former we are still allowed to show scrollbars if we need to scroll the visual viewport inside the layout viewport (as long as they take up no layout space). For the latter we still do not want to show scrollbars.

The ShowScrollbar enum is now only from layouts perspective and doesn't take into account anything about the visual viewport.

Differential Revision: https://phabricator.services.mozilla.com/D85700
2020-08-07 11:40:47 +00:00
Timothy Nikkel c389e0f6e6 Bug 1656802. When deciding if we want a scrollbar we need to consider only if the scrolled rect overflows the scrollport (not the visual viewport). r=emilio,kats
This will actually regress behaviour when overflow is auto and pinch zooming creates scrollable overflow (scrolling the visual viewport inside the layout viewport). We will fix that in later patches.

The reason that this is necessary is that the code as-is is incorrect if we have layout scrollbars (scrollbars that take up space). If we have layout scrollbars and we pinch zoom and we go from not needing a scrollbar to needing a scrollbar then that scrollbar cannot take up layout space (even though it is a layout scrollbar). The scrollbar cannot change the size of the layout viewport (it does, however, change the size of the visual viewport).

In later patches we fix this situation as well as the situation with an overflow hidden document (which also needs to create scrollbars when pinch zoomed).

Differential Revision: https://phabricator.services.mozilla.com/D85699
2020-08-07 11:40:50 +00:00
Ting-Yu Lin 40c1643e91 Bug 1559961 Part 4 - Reflow lines with pushed floats under constrained available block-size or in paginated context. r=dholbert
When a clearance frame is discovered in a BFC
subtree (`ReflowInput::WillReflowAgainForClearance()` is true), all the
block descendants of the BFC return from `ReflowBlockFrame` immediately
without placing their children or requesting continuation for their
children, etc., because the BFC is going to reflow the subtree a
second time.

When this happens, any block descendant whose lines contain pushed
floats should be marked dirty and reflowed again so that they can go
through all the split floats logic and set their nsReflowStatus to
incomplete/overflow-incomplete correctly. (We may develop a smarter way
in bug 851629 to make the performance better.)

The condition `aState.mPresContext->IsPaginated()` is added to prevent
1406291-1.html from failing. In 1406291-1.html, the table containing the
float in its subtree is being pushed to the second page due to force
break, and the float is in PushedFloatsList of its parent block. When we
reflow the block again (in the second page), it is reflowed under the
measuring stage of the table layout with unconstrained available
block-size. nsBlockFrame::DrainSelfPushedFloats() deliberately doesn't
drain pushed floats if their placehoder are in the same block, and
expect the floats to be reflowed again. Before this patch, the line can
be marked dirty via HasPushedFloats(), but in this patch,
HasPushedFloats() is moved into the nested if-else, so we need
`aState.mPresContext->IsPaginated()` to let the block know that it's in
a paginated context, and needs to reflow any line that contains pushed
floats.

Differential Revision: https://phabricator.services.mozilla.com/D85480
2020-08-08 01:13:15 +00:00
Ting-Yu Lin 34293ad0ff Bug 1559961 Part 3 - Refactor the conditions to mark a line dirty under constrained available block-size. r=dholbert
This change cleans up the complex logic with additional comments added.
It shouldn't alter the behavior.

Differential Revision: https://phabricator.services.mozilla.com/D86068
2020-08-07 22:16:29 +00:00
Ting-Yu Lin c1ac1fc784 Bug 1559961 Part 2 - Consider a line's scrollable overflow when marking a line dirty. r=dholbert
Before this patch, a block frame considers a line dirty only if the line's
block-end is larger than content area's block-end.

However, scrollable overflow area should be broken in paginated environment
(both in a column container and in printing). We should take this into account
when marking a line dirty.

The dynamic wpt reftests are written with the following conditions in mind to
expose the bug:

1. Initially, all the elements fit into the first column.

2. After shrinking the multicol height, the block itself still fits into
the first column, but its tall child (either a simple tall block or a
tall float), which overflows the smaller multicol height, needs to be
broken.

The flexbox printing reftest are similar. A flex container uses
unconstrained available block-size to measure flex items' block-size,
and then performs a final reflow with constrained available block-size,
which is similar to the dynamic scenario above. One caveat is that flex
items usually have IsBResize() set. So to expose this bug, a float
element needs to be deeply nested under a flex item.

Differential Revision: https://phabricator.services.mozilla.com/D85479
2020-08-07 22:16:21 +00:00
Ting-Yu Lin 32e6eca945 Bug 1559961 Part 1 - Update the reason for child's completeness in measuring reflow of flex items. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D85478
2020-08-07 22:16:06 +00:00
Ting-Yu Lin 547520683e Bug 1042151 Part 4 - Consider flexbox's main & cross axis when getting scrolled rect. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D86078
2020-08-07 19:11:38 +00:00
Ting-Yu Lin 60882f12fb Bug 1042151 Part 3 - Extract a helper class containing flexbox's axis information. r=dholbert
This struct is going to be used in the next part in nsLayoutUtils::GetScrolledRect().

Differential Revision: https://phabricator.services.mozilla.com/D86077
2020-08-07 17:43:16 +00:00
Ting-Yu Lin b040f29dc0 Bug 1042151 Part 2 - Refactor the conditions that decide which edge to clamp when getting scrolled rect. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D86076
2020-08-07 02:20:44 +00:00
Ting-Yu Lin 04e997fc43 Bug 1042151 Part 1 - Sort the #include statements in nsLayoutUtils.cpp. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D86075
2020-08-07 02:20:42 +00:00
Kartikaya Gupta 6d0fac60b9 Bug 1658046 - Fix missing return statement. r=tnikkel,botond
Differential Revision: https://phabricator.services.mozilla.com/D86439
2020-08-07 21:02:28 +00:00
Ricky Stewart 31755b431d Bug 1657650 - Require that Mach command providers subclass MachCommandBase. r=remote-protocol-reviewers,marionette-reviewers,maja_zf,mhentges,froydnj
Today we don't require that `mach` `CommandProvider`s subclass from any particular parent class and we're very lax about the requirements they must meet. While that's convenient in certain circumstances, it has some unfortunate implications for feature development.

Today the only requirements that we have for `CommandProvider`s are that they have an `__init__()` method that takes either 1 or 2 arguments, the second of which must be called `context` and is populated with the `mach` `CommandContext`. Again, while this flexibility is occasionally convenient, it is limiting. As we add features to `mach`, having a better idea what the shape of our `CommandProvider`s are and how we can instantiate them and use them is increasingly important, and this gives us additional control when having `mach` configure `CommandProvider`s based on data that is only available at the `mach` level. In particular, we plan to leverage this in bugs 985141 and 1654074.

Here we add validation to the `CommandProvider` decorator to ensure all classes inherit from `MachCommandBase`, update all `CommandProvider`s in-tree to inherit from `MachCommandBase`, and update source and test code accordingly.

Follow-up work: we now require (de facto) that the `context` be populated with a `topdir` attribute by the `populate_context_handler` function, since instantiating the `MachCommandBase` requires a `topdir` be provided. This is fine for now in the interest of keeping this patch reasonably sized, but some additional refactoring could make this cleaner.

Differential Revision: https://phabricator.services.mozilla.com/D86255
2020-08-07 18:24:59 +00:00
Kartikaya Gupta cbcdeefeb3 Bug 1657627 - Refine condition used in temporary workaround code. r=botond
This restricts the workaround to mobile a bit better, since the
GetIsViewportOverridden() check returns true on desktop as of bug 1644271.

Differential Revision: https://phabricator.services.mozilla.com/D86414
2020-08-07 18:16:59 +00:00
Ting-Yu Lin 98cd1c828a Bug 1652186 - Expand the content in <iframe> into block-in-inline-continuations.html. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D86286
2020-08-07 10:06:28 +00:00
Bob Owen ff0078c4dd Bug 1655674: Prevent nsPrintJob::FinishPrintPreview running twice by checking mIsCreatingPrintPreview. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D86320
2020-08-07 09:32:45 +00:00
Bogdan Tara 06a9a6d13f Backed out 11 changesets (bug 1656802) for async-scrolling reftests failures CLOSED TREE
Backed out changeset 941ee8aa9735 (bug 1656802)
Backed out changeset c5b1b38d1d35 (bug 1656802)
Backed out changeset fe2dd5de83ef (bug 1656802)
Backed out changeset 8e217fc1c6d4 (bug 1656802)
Backed out changeset 21f574f6acb4 (bug 1656802)
Backed out changeset 753f93dffe07 (bug 1656802)
Backed out changeset 386554110008 (bug 1656802)
Backed out changeset 2d3576ace2f1 (bug 1656802)
Backed out changeset 06a47c35c531 (bug 1656802)
Backed out changeset 57fa48542435 (bug 1656802)
Backed out changeset b1517bc33eff (bug 1656802)
2020-08-07 14:36:21 +03:00
Timothy Nikkel 2f60aa099a Bug 1656802. Make visual viewport only layout scrollbars affect the composition bounds/visual viewport. r=emilio,kats
AFAICT the spec says that these layout scrollbars that take up no layout space that scroll the visual viewport do affect the size of the visual viewport. (Double check this)

Most other users don't care about the size of these special scrollbars.

I left nsIDOMWindowUtils::getScrollbarSize unchanged (NB different from nsIDOMWindowUtils::getScrollbarSizes which is modified by this patch) because I'm less sure. I will file a followup about it.

Differential Revision: https://phabricator.services.mozilla.com/D85708
2020-08-07 10:05:10 +00:00
Timothy Nikkel 0f0f71e5bc Bug 1656802. If both scrollbars are layout and present and only for the visual viewport they need to be adjusted to not overlap. r=emilio
The existing calculation will make them overlap. The AdjustOverlappingScrollbars code was written with overlay scrollbars in mind but it looks like it will work just fine for this case.

Differential Revision: https://phabricator.services.mozilla.com/D85707
2020-08-07 10:04:50 +00:00
Timothy Nikkel ee280dd6eb Bug 1656802. Position the scrollcorner if we have both layout scrollbars and they are both for the visual viewport only. r=emilio
Otherwise the calculation above would lead to an empty rect for the scroll corner.

The scrollbar rects as computed now still overlap each other and the scroll corner, the next patch fixes that.

Differential Revision: https://phabricator.services.mozilla.com/D85706
2020-08-07 10:04:37 +00:00
Timothy Nikkel 51578a321e Bug 1656802. In LayoutScrollbars move the calculation of the scrollbar rects to the first thing in the function. r=emilio
There is no dependency in this code as far as I can tell.

The next patch needs the scrollbar rects for the scroll corner calculation.

Differential Revision: https://phabricator.services.mozilla.com/D85705
2020-08-07 10:08:14 +00:00
Timothy Nikkel 3f4285b053 Bug 1656802. Shift back in layout scrollbars that are only for the visual viewport so they are visible. r=emilio
Layout scrollbars that were only created for the visual viewport had no space reserved for them, so we need to shift them back in like overlay scrollbars. Otherwise they sit just outside of the scroll port and are not visible.

Depends on D85703

Differential Revision: https://phabricator.services.mozilla.com/D86332
2020-08-07 10:08:14 +00:00
Timothy Nikkel 0275351ad7 Bug 1656802. Add a comment explaining how overlay scrollbars work with their negative margin. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D85703
2020-08-07 10:07:25 +00:00
Timothy Nikkel ba33b7857b Bug 1656802. Add state variables to the scroll frame to track when scrollbars are only created to scroll the visual viewport within the layout viewport. r=emilio,kats
We need to distinguish these special scrollbars for several different reasons in upcoming patches.

Differential Revision: https://phabricator.services.mozilla.com/D85702
2020-08-07 10:03:33 +00:00
Timothy Nikkel 738ce628b6 Bug 1656802. Calculate if we need scrollbars to scroll the visual viewport. r=emilio,kats
This fixes the regression we created with the first patch.

Differential Revision: https://phabricator.services.mozilla.com/D85701
2020-08-07 10:03:26 +00:00
Timothy Nikkel 519c4bdc9e Bug 1656802. Add flags that let us differentiate not showing scrollbars because something is overflow hidden from not showing scrollbars for other reasons. r=emilio
For the former we are still allowed to show scrollbars if we need to scroll the visual viewport inside the layout viewport (as long as they take up no layout space). For the latter we still do not want to show scrollbars.

The ShowScrollbar enum is now only from layouts perspective and doesn't take into account anything about the visual viewport.

Differential Revision: https://phabricator.services.mozilla.com/D85700
2020-08-07 10:03:13 +00:00
Timothy Nikkel 9e2292aea1 Bug 1656802. When deciding if we want a scrollbar we need to consider only if the scrolled rect overflows the scrollport (not the visual viewport). r=emilio,kats
This will actually regress behaviour when overflow is auto and pinch zooming creates scrollable overflow (scrolling the visual viewport inside the layout viewport). We will fix that in later patches.

The reason that this is necessary is that the code as-is is incorrect if we have layout scrollbars (scrollbars that take up space). If we have layout scrollbars and we pinch zoom and we go from not needing a scrollbar to needing a scrollbar then that scrollbar cannot take up layout space (even though it is a layout scrollbar). The scrollbar cannot change the size of the layout viewport (it does, however, change the size of the visual viewport).

In later patches we fix this situation as well as the situation with an overflow hidden document (which also needs to create scrollbars when pinch zoomed).

Differential Revision: https://phabricator.services.mozilla.com/D85699
2020-08-07 10:06:14 +00:00
Simon Giesecke 1e02318b49 Bug 1653335 - Replace MakeSpan uses by constructor calls. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D83817
2020-08-07 07:49:47 +00:00
Simon Giesecke dea5b543db Bug 1653335 - Remove uses of MakeSpan in return statements. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D83812
2020-08-07 07:42:50 +00:00
Mihai Alexandru Michis da15ff7259 Bug 1657515 - Fix bustages regarding nsDocumentViewer.cpp and 'pageCount'. a=bustage-fix
CLOSED TREE
2020-08-07 07:37:28 +03:00
Brindusan Cristian 41ea5830c7 Backed out 5 changesets (bug 1042151) for causing wpt failures in negative-overflow.html. CLOSED TREE
Backed out changeset a9a3507991fa (bug 1042151)
Backed out changeset 14e34cd9dfd8 (bug 1042151)
Backed out changeset bf4991db4445 (bug 1042151)
Backed out changeset ad498cd179b9 (bug 1042151)
Backed out changeset 1eac44fb3f6f (bug 1042151)
2020-08-07 05:16:01 +03:00
Ting-Yu Lin b5b96a98d8 Bug 1042151 Part 4 - Consider flexbox's main & cross axis when getting scrolled rect. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D86078
2020-08-06 22:38:11 +00:00
Ting-Yu Lin f14c566fd2 Bug 1042151 Part 3 - Extract a helper class containing flexbox's axis information. r=dholbert
This struct is going to be used in the next part in nsLayoutUtils::GetScrolledRect().

Differential Revision: https://phabricator.services.mozilla.com/D86077
2020-08-06 22:38:08 +00:00
Ting-Yu Lin 80e5b54e12 Bug 1042151 Part 2 - Refactor the conditions that decide which edge to clamp when getting scrolled rect. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D86076
2020-08-06 22:38:00 +00:00
Ting-Yu Lin 3a3615c34f Bug 1042151 Part 1 - Sort the #include statements in nsLayoutUtils.cpp. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D86075
2020-08-06 22:37:53 +00:00
Brindusan Cristian dc4df79ab1 Backed out changeset 0da3036d0890 (bug 1656711) as requested by tnikkel on irc to test if it caused bug 1657558 or not. CLOSED TREE 2020-08-07 02:27:01 +03:00
Emma Malysz 18fe337c0c Bug 1657161, enable print.tab_modal.enabled for EARLY_BETA_OR_EARLIER and hide page range section r=mstriemer,fluent-reviewers,preferences-reviewers,flod
We want this to be turned on for nightly users by default. The page range is still a WIP,
so we should hide that section for now.
This also adds the pref to the "Nightly Experiment" panel, turned on by default.

Differential Revision: https://phabricator.services.mozilla.com/D85907
2020-08-06 23:02:13 +00:00
Hiroyuki Ikezoe 3d007edf96 Bug 1657515 - Add nsIWebBrowserPrint.printPreviewCurrentPageNumber. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D86151
2020-08-06 22:54:16 +00:00
Hiroyuki Ikezoe 103cf5ff04 Bug 1657515 - Constify some nsIDocumentViewerPrint methods. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D86149
2020-08-06 22:54:16 +00:00
Hiroyuki Ikezoe 163ef31b74 Bug 1657515 - Rename `pageFrame` to `sheetFrame` in PrintPreviewScrollToPage. r=TYLin
Since bug 1652278, it's not a page frame.

Differential Revision: https://phabricator.services.mozilla.com/D86148
2020-08-06 22:57:24 +00:00
Hiroyuki Ikezoe 39c56580df Bug 1657515 - Rename `pt` to `currentScrollPosition` in PrintPreviewScrollToPage. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D86147
2020-08-06 22:22:56 +00:00
Matt Woodrow 852a191d88 Bug 1657523 - Compute the scale from size for async image pipelines in the compositor process, so that we get the size matching the current texture. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D86132
2020-08-06 21:09:55 +00:00
Ting-Yu Lin 250663c1f3 Bug 1657540 Part 6 - Remove WritingMode argument from FlexboxAxisTracker's constructor. r=dholbert
We already pass nsFlexContainerFrame into FlexboxAxisTracker, so we can
get WritingMode from the frame.

Differential Revision: https://phabricator.services.mozilla.com/D86140
2020-08-06 17:28:07 +00:00
Ting-Yu Lin 719adb5e2d Bug 1657540 Part 5 - Remove the default branch to handle StyleFlexDirection. r=dholbert
StyleFlexDirection() is a strong enum now. It cannot have other values.

Differential Revision: https://phabricator.services.mozilla.com/D86139
2020-08-06 17:24:25 +00:00
Ting-Yu Lin 64523a4b31 Bug 1657540 Part 4 - Remove FlexboxAxisTracker::mMainAxis. r=dholbert
We can compute MainAxis() and CrossAxis() by using IsRowOriented().

Differential Revision: https://phabricator.services.mozilla.com/D86138
2020-08-06 17:24:23 +00:00
Ting-Yu Lin db7e771c51 Bug 1657540 Part 3 - Use IsCrossAxisReversed() to implement other methods in FlexboxAxisTracker. r=dholbert
It will be easier to change IsCrossAxisReversed()'s implementation later.

Differential Revision: https://phabricator.services.mozilla.com/D86137
2020-08-06 17:24:20 +00:00
Ting-Yu Lin 722a5a12f7 Bug 1657540 Part 2 - Use IsMainAxisReversed() to implement other methods in FlexboxAxisTracker. r=dholbert
It will be easier to change IsMainAxisReversed()'s implementation later.

Differential Revision: https://phabricator.services.mozilla.com/D86136
2020-08-06 17:24:18 +00:00
Ting-Yu Lin 5acf6b6d8a Bug 1657540 Part 1 - Use IsRowOriented() to implement other methods in FlexboxAxisTracker. r=dholbert
It will be easier to change IsRowOriented()'s implementation later.

Differential Revision: https://phabricator.services.mozilla.com/D86135
2020-08-06 15:50:39 +00:00
Edgar Chen 47b2d8fc3f Bug 1597463 - Audit usage of nsIDocShellTreeItem in PresShell::GetParentPresShellForEventHandling; r=masayuki
Differential Revision: https://phabricator.services.mozilla.com/D84694
2020-08-05 01:50:21 +00:00
Hiroyuki Ikezoe e6c0d31860 Bug 1657535 - Rename runTest18 to runTest19 to run runTest18 properly in printpreview_helper.xhtml. r=emilio
There are two runTest18 functions. :)

Differential Revision: https://phabricator.services.mozilla.com/D86134
2020-08-06 07:59:17 +00:00
Cosmin Sabou 1fd1260b5e Backed out 4 changesets (bug 1623764) for mochitest failures on test_movement_by_characters.html. CLOSED TREE
Backed out changeset f927522d89bc (bug 1623764)
Backed out changeset c100eb8ae430 (bug 1623764)
Backed out changeset 1147ded16458 (bug 1623764)
Backed out changeset 7af572ec5edf (bug 1623764)
2020-08-06 08:09:42 +03:00
Kagami Sascha Rosylight 0f2d254487 Bug 1623764 - Part 4: Stop at hard linebreaks when eat_space_to_next_word r=emilio,masayuki
Differential Revision: https://phabricator.services.mozilla.com/D85923
2020-08-06 01:18:52 +00:00
Kagami Sascha Rosylight d41518f2d3 Bug 1623764 - Part 3: Expose IsLineWrapped via LineInfo r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D85922
2020-08-05 13:24:22 +00:00
Kagami Sascha Rosylight 0df495e2fe Bug 1623764 - Part 2: Add mSawInlineCharacter to PeekWordState r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D85921
2020-08-05 13:24:14 +00:00
Kagami Sascha Rosylight f970ee62bd Bug 1623764 - Part 1: Destruct ILineIterator from where it's initialized r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D85920
2020-08-05 13:24:02 +00:00
Timothy Nikkel 501012a976 Bug 1654933. Make ScrollFrameHelper::GetScrollRangeForUserInputEvents return a range that encompasses the visual viewport offset even if we are overflow: hidden. r=kats
Depends on D85983

Differential Revision: https://phabricator.services.mozilla.com/D85984
2020-08-05 17:55:29 +00:00
Timothy Nikkel 87a1cf6b13 Bug 1654933. ScrollFrameHelper::CurPosAttributeChanged should be using the scroll range not the scroll rect. r=kats
UpdateScrollbarPosition and ReflowFinished both use the scroll range for this. It usually doesn't matter, but the next patch will make it important.

Differential Revision: https://phabricator.services.mozilla.com/D85983
2020-08-05 17:56:12 +00:00
Tom Tung 002102679d Bug 1654935 - Copy over COOP header from new document to the docshell in nsPrintObject; r=nika
The COOP header is set to BrowsingContext only in Document::StartDocumentLoad.
If the replaced document has a different COOP header from one in its docshell.
Then, we can crash while creating a window global child for a new inner window.

Differential Revision: https://phabricator.services.mozilla.com/D85127
2020-08-05 17:14:38 +00:00
Butkovits Atila 3bd0e5497c Backed out 10 changesets (bug 1589102) for failure at browser_saveHeapSnapshot_e10s_01.js CLOSED TREE
Backed out changeset 0d22ad297b19 (bug 1589102)
Backed out changeset 14bcaf2a452c (bug 1589102)
Backed out changeset 20905f91e2bb (bug 1589102)
Backed out changeset 29ee0fbe855f (bug 1589102)
Backed out changeset d1f6185030af (bug 1589102)
Backed out changeset 31949872cc1d (bug 1589102)
Backed out changeset ec04e1a20597 (bug 1589102)
Backed out changeset ffe8da473b91 (bug 1589102)
Backed out changeset 3b92f7306c64 (bug 1589102)
Backed out changeset b187548e258f (bug 1589102)
2020-08-05 21:47:50 +03:00
Anny Gakhokidze 05b0ef78c2 Bug 1589102 - Part 2: Fix tests that were broken as a result of about:srcdoc going via DocumentChannel, r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D85080
2020-08-05 16:44:04 +00:00
Emilio Cobos Álvarez 1ab557e3f4 Bug 1656281 - Allow to stretch items with no intrinsic ratio. r=mats
There's no reason this shouldn't work per the grid spec.

We also remove some outdated condition on the meaning of
align/justify-self: normal on grid items without aspect ratio. This
matches the behavior of other browsers, and the spec as far as I can
tell.

https://drafts.csswg.org/css-grid/#grid-item-sizing no longer mentions
'stretch' from the definition of 'normal'.

Differential Revision: https://phabricator.services.mozilla.com/D85435
2020-08-05 16:31:46 +00:00
Emilio Cobos Álvarez bdca8af91d Bug 1655558 - Retrieve the paper margins lazily on Windows. r=jwatt,bobowen
This is no worse than what we were doing.

In the future, instead of just querying the margin we may want to query
extra information that requires a DC in windows too or what not, for
example.

Differential Revision: https://phabricator.services.mozilla.com/D85919
2020-08-05 11:26:13 +00:00
Emilio Cobos Álvarez 6d5ce8f732 Bug 1655558 - Retrieve paper information from CUPS, and convert paperList to an async attribute. r=jwatt
This builds on top of bug 1656146 to compute the page information on a
background task, and return it via a promise.

Co-Authored-By: Erik Nordin <enordin@mozilla.com>

Differential Revision: https://phabricator.services.mozilla.com/D85865
2020-08-05 01:24:49 +00:00
Simon Giesecke 1e6ec7ec86 Bug 1656117 - Reduce include dependencies on nsRefreshDriver.h. r=mstange
The abstract observer base classes are moved to a separate header file
nsRefreshObservers.h and the includes are adjusted accordingly.

Some method implementations are moved to the corresponding implementation files
to avoid the need to include the nsRefreshDriver.h file in the header.

Differential Revision: https://phabricator.services.mozilla.com/D85764
2020-08-04 21:17:50 +00:00
Daniel Holbert 96d67c6eb3 Bug 1652278 part 2: Flesh out PrintedSheetFrame implementation so that it serves as the container for nsPageFrame. r=TYLin
This patch:
- Creates an anon-box pseudo-style for PrintedSheetFrame, in part so that it
  can co-opt the styles that we formerly gave to page-frames in ua.css, to draw
  the sheet of paper and the shadow in Print Preview.
- Adjusts nsCSSFrameConstructor to create a PrintedSheetFrame as the parent of
  nsPageFrame (inserting between it and its nsPageSequenceFrame container, in
  the frame tree).
- Fleshes out out a simple BuildDisplayList() implementation for
  PrintedSheetFrame (taking the responsibility for "paper"-drawing from
  nsPageFrame).
- Fleshes out a simple Reflow implementation for PrintedSheetFrame, just
  placing the child page (assuming there's only one for now) at the origin.
- Adjusts nsPageFrame and nsPageSequenceFrame to account for the fact that
  there's another layer between them now.

Note that PrintedSheetFrame needs to implement AppendDirectlyOwnedAnonBoxes()
(just as nsSimplePageSequence and nsPageFrame do), since it owns anonymous
nsPageFrame instances. This implementation only needs to append the first
child, as explained in the code-comment and in
https://bugzilla.mozilla.org/show_bug.cgi?id=1374761#c9 (and of course, for
now, PrintedSheetFrame only has one child at a time anyway.)

Differential Revision: https://phabricator.services.mozilla.com/D83457
2020-08-05 03:28:32 +00:00
Daniel Holbert 41ce298d55 Bug 1652278 part 1: Add stub implementation for new frame class "PrintedSheetFrame", to represent an individual printed sheet of paper. r=TYLin
This patch is just to get the "new file/frame class" boilerplate out of the
way.  As of this patch, this frame class *is* compiled, but it doesn't do
anything and it's never instantiated. The next patch in this series will make
us actually start using it at runtime.

Differential Revision: https://phabricator.services.mozilla.com/D83456
2020-08-04 02:00:10 +00:00
Matt Woodrow ba66eda840 Bug 1656813 - Mark failing test. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D85717
2020-08-05 02:19:31 +00:00
Matt Woodrow b31970d899 Bug 1656813 - Annotate fuzzy reftest differences. r=lsalzman
These are all subtle differences that aren't visible, many are actually less fuzzy than with normal WR.

Differential Revision: https://phabricator.services.mozilla.com/D85715
2020-08-05 02:19:08 +00:00
Cosmin Sabou 38cd82e194 Backed out 8 changesets (bug 1656813) for reftest failures on bipbop_300_215kbps.mp4.lastframe.html.
Backed out changeset 92e0209dc7f1 (bug 1656813)
Backed out changeset 1b3842f2ca27 (bug 1656813)
Backed out changeset efed1b35fe47 (bug 1656813)
Backed out changeset d1c313ebe358 (bug 1656813)
Backed out changeset 4d6a3bf61345 (bug 1656813)
Backed out changeset 060254b3ad73 (bug 1656813)
Backed out changeset 37e5e5e6593a (bug 1656813)
Backed out changeset 12c0e9554a5f (bug 1656813)
2020-08-05 04:52:20 +03:00
Matt Woodrow abeb17f2ef Bug 1656813 - Mark failing test. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D85717
2020-08-05 00:54:48 +00:00
Matt Woodrow 1885d56be1 Bug 1656813 - Annotate fuzzy reftest differences. r=lsalzman
These are all subtle differences that aren't visible, many are actually less fuzzy than with normal WR.

Differential Revision: https://phabricator.services.mozilla.com/D85715
2020-08-05 00:54:23 +00:00
Bogdan Tara ebb07c5b3a Backed out changeset b5a3e838eaec (bug 1654935) for nsPrintObject.cpp related bustage CLOSED TREE 2020-08-04 22:21:45 +03:00
Kagami Sascha Rosylight b6115988e8 Bug 1656041 - Part 2: Return a struct from GetFrameFromDirection r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D85317
2020-08-04 15:23:47 +00:00
Kagami Sascha Rosylight c665045479 Bug 1656041 - Part 1: Split blocks to clarify when the inner condition happens r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D85316
2020-08-04 14:25:17 +00:00
Tom Tung cd5124ffd5 Bug 1654935 - Copy over COOP header from new document to the docshell in nsPrintObject; r=nika
The COOP header is set to BrowsingContext only in Document::StartDocumentLoad.
If the replaced document has a different COOP header from one in its docshell.
Then, we can crash while creating a window global child for a new inner window.

Differential Revision: https://phabricator.services.mozilla.com/D85127
2020-08-04 19:05:04 +00:00
Daniel Holbert db7d4269ad Bug 1657024: Simplify code that's effectively walking the nsPageContentFrame continuation chain. r=TYLin
Before this patch, we used a clumsy "GetNextPage" helper-function (which,
despite its name, actually gets the next page **content** frame).  It worked by
pointer-chasing to get the parent's next-sibling's first-child.  This is
unnecessary; we can just directly query for the nsPageContentFrame's
next-continuation, since these frames are linked in a straightforward
continuation chain.

Note that GetNextContinuation() is a virtual function-call, but it may still be
faster than the pointer-chasing that we were doing with the GetNextPage()
API. Moreover, we can help the compiler devirtualize it by static_cast'ing to
the concrete type before calling the method. This is safe since nsPageFrame
always contains a single nsPageContentFrame (which we already validate -- at
least the frame-type-part -- via assertions).

Differential Revision: https://phabricator.services.mozilla.com/D85802
2020-08-04 18:42:54 +00:00
Kartikaya Gupta 5ec0989331 Bug 1621740 - Fuzz a reftest that shows some differences with allow_zooming. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D85431
2020-08-04 17:21:38 +00:00
Kashav Madan 0944a1d57c Bug 1655521 - Remove unnecessary code from nsDocumentViewer::ExitPrintPreview, r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D85343
2020-08-04 16:41:52 +00:00
Mats Palmgren 03f9403679 Bug 1656786 - Make <select> list have 'overflow:auto' by default to indicate its scrollable. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D85874
2020-08-04 14:33:46 +00:00
Sebastian Hengst 21341f7da8 Bug 1656998 - Adjust fuzzy annotations for reftests which became less fuzzy after toolchain and images got rebuilt. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D85840
2020-08-04 12:59:21 +00:00
Simon Giesecke 98908aba1e Bug 1657087 - Fix fallible behaviour of nsStyleAutoArray and nsStyleImageLayers. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D85850
2020-08-04 12:39:39 +00:00
Emilio Cobos Álvarez f67d206be2 Bug 1640040 - Only handle updating the DOM state from TextControlState::SetValue on the outer caller. r=masayuki
The issue here is that AccessibleCaret flushes layout from the middle of
the SetValue call, because it hides the caret (see the call stack in
comment 11).

That changes the placeholder-shown state because it goes from empty to
non-empty but the SetValue call from UnbindFromFrame is not supposed to
change that state (because we're in the middle of restyling).

Call OnValueChanged later, at the outer caller instead.

Differential Revision: https://phabricator.services.mozilla.com/D85745
2020-08-04 11:22:42 +00:00
Emilio Cobos Álvarez a4066afce1 Bug 1656146 - Introduce nsPrinterBase, and add facilities for async attributes queried in a background thread. r=heycam
While at it, properly CC the printer classes, as they're going to hold
promises and it's very easy to introduce leaks otherwise.

Co-Authored-By: Jonathan Watt <jwatt@jwatt.org>

Differential Revision: https://phabricator.services.mozilla.com/D85791
2020-08-04 12:06:37 +00:00
Simon Giesecke 96f3e7e019 Bug 1654992 - Use std::move instead of SwapElements where possible. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D84807
2020-08-04 11:27:07 +00:00
Bob Owen ada89eea81 Bug 1653334 part 2: Cache the selection ranges on subdocuments as we build the nsPrintObject tree. r=jwatt
This also refactors the selection printing code, so that as we build the tree we
record which nsPrintObject should be used if printing a Selection is chosen.

Differential Revision: https://phabricator.services.mozilla.com/D85600
2020-08-03 14:23:56 +00:00
Bob Owen c4f92dc077 Bug 1653334 part 1: Remove unused isRangeSelection and isIFrameSelected. r=jwatt
These unused members are removed from nsIWebBrowserPrint and PPrintingTypes
along with their supporting functions.

Differential Revision: https://phabricator.services.mozilla.com/D85007
2020-08-03 14:23:27 +00:00
Brindusan Cristian 858434b58d Backed out changeset 5913d9f4c3e9 (bug 1655558) for build bustages at nsPaperCUPS.h:9:10. CLOSED TREE 2020-08-04 08:41:27 +03:00
Erik Nordin be6e7c626c Bug 1655558 - Part 1 Retrieve Paper Information from CUPS on macOS r=jwatt
Retrieve paper size information directy from CUPS.

- Add unwriteable margins tests.
- Rename nsPaper to nsPaperCUPS.
- Add new functionality to nsCUPSShim.
- Retrieve paper info from CUPS

Differential Revision: https://phabricator.services.mozilla.com/D85211
2020-08-04 04:43:47 +00:00
Noemi Erli 37e7a2569c Backed out 3 changesets (bug 1620055, bug 1621740) for causing leaks (DManipEventHandler)
Backed out changeset 4ed6ec0c8220 (bug 1620055)
Backed out changeset bb406c0968c5 (bug 1621740)
Backed out changeset a816301284e6 (bug 1621740)
2020-08-04 05:11:54 +03:00
Matt Woodrow 72cda2d18d Bug 1653166 - Add rotation support to computed reference frames and use them for <video>. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D85104
2020-08-04 01:15:04 +00:00
Kartikaya Gupta 7efb584069 Bug 1621740 - Fuzz a reftest that shows some differences with allow_zooming. r=botond
Depends on D85430

Differential Revision: https://phabricator.services.mozilla.com/D85431
2020-07-31 18:28:06 +00:00
Noemi Erli 381fca9783 Backed out 4 changesets (bug 1654992, bug 1654991) for causing timeous in mask-opacity-1e.html
Backed out changeset 11f0f54c6e0a (bug 1654992)
Backed out changeset a353dd5b3f08 (bug 1654991)
Backed out changeset 6a7964ba549f (bug 1654991)
Backed out changeset cf3bfb91d98c (bug 1654991)
2020-08-03 22:09:36 +03:00
Simon Giesecke 032d2ac9d3 Bug 1654992 - Use std::move instead of SwapElements where possible. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D84807
2020-08-03 14:54:18 +00:00
Bob Owen 57c231d365 Bug 1651117 part 1: Add nsIPrinter supportsColor attribute and Windows implementation. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D85032
2020-08-03 11:45:35 +00:00
Butkovits Atila 076d3aa7ed Backed out 2 changesets (bug 1653334) for reftest failures at test-print-selection.html. CLOSED TREE
Backed out changeset 6cc6bbaa91f0 (bug 1653334)
Backed out changeset 75a5873f02a4 (bug 1653334)
2020-08-03 15:35:37 +03:00
Bob Owen ac5872bd35 Bug 1653334 part 2: Cache the selection ranges on subdocuments as we build the nsPrintObject tree. r=jwatt
This also refactors the selection printing code, so that as we build the tree we
record which nsPrintObject should be used if printing a Selection is chosen.

Differential Revision: https://phabricator.services.mozilla.com/D85600
2020-08-03 08:54:12 +00:00
Bob Owen d5715ceb42 Bug 1653334 part 1: Remove unused isRangeSelection and isIFrameSelected. r=jwatt
These unused members are removed from nsIWebBrowserPrint and PPrintingTypes
along with their supporting functions.

Differential Revision: https://phabricator.services.mozilla.com/D85007
2020-08-03 08:53:44 +00:00
Timothy Nikkel 78199a16a4 Bug 1656711. Support hardware accelerated <feGaussianBlur> SVG filters if the x and y radius are not equal with webrender. r=gw
Pretty straight forward, mostly just plumbing stuff through.

Differential Revision: https://phabricator.services.mozilla.com/D85666
2020-08-03 00:48:04 +00:00
Hiroyuki Ikezoe e6f2eaccfd Bug 1656418 - Enable partial prerender on Nightly. r=botond,boris
Differential Revision: https://phabricator.services.mozilla.com/D85550
2020-08-02 22:56:22 +00:00
Dorel Luca eb411c9e05 Backed out changeset fed45fbadc26 (bug 1656711) for webrender build bustage 2020-08-03 00:59:31 +03:00
Timothy Nikkel 9db06357a1 Bug 1656711. Support hardware accelerated <feGaussianBlur> SVG filters if the x and y radius are not equal with webrender. r=gw
Pretty straight forward, mostly just plumbing stuff through.

Differential Revision: https://phabricator.services.mozilla.com/D85666
2020-08-02 21:33:50 +00:00
Dorel Luca e210ecd37e Backed out changeset 26ff1a25028d (bug 1656711) for Webrender build bustages 2020-08-03 00:07:39 +03:00
Timothy Nikkel 9b76156d6b Bug 1656711. Support hardware accelerated <feGaussianBlur> SVG filters if the x and y radius are not equal with webrender. r=gw
Pretty straight forward, mostly just plumbing stuff through.

Differential Revision: https://phabricator.services.mozilla.com/D85666
2020-08-02 20:45:02 +00:00
Emilio Cobos Álvarez f08a5f293b Bug 1650502 - Plumb whether an async APZ animation is in progress via RepaintRequest. r=botond
And store that information in the scroll frame for the purposes of
avoiding scroll anchoring and scroll restoration.

Differential Revision: https://phabricator.services.mozilla.com/D85157
2020-08-02 16:58:29 +00:00
Cosmin Sabou 8aa0a2fcff Backed out 2 changesets (bug 1650502) for mochitest failures on test_frame_reconstruction.html. CLOSED TREE
Backed out changeset 1a4ce811fcab (bug 1650502)
Backed out changeset b21e76dcb485 (bug 1650502)
2020-08-02 19:50:05 +03:00
Sylvestre Ledru 843f943758 Bug 1519636 - Reformat recent changes to the Google coding style r=andi
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D85678
2020-08-02 15:29:15 +00:00
Emilio Cobos Álvarez 964bac7f10 Bug 1650502 - Plumb whether an async APZ animation is in progress via RepaintRequest. r=botond
And store that information in the scroll frame for the purposes of
avoiding scroll anchoring and scroll restoration.

Differential Revision: https://phabricator.services.mozilla.com/D85157
2020-08-02 15:20:55 +00:00