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

74099 Коммитов

Автор SHA1 Сообщение Дата
Kartikaya Gupta 07ba9a1c0e Bug 1637908 - Add some tests for the touchable heuristic to the existing event radius tests. r=snorp
Depends on D91027

Differential Revision: https://phabricator.services.mozilla.com/D91028
2020-09-22 20:39:27 +00:00
Kartikaya Gupta bc09af0d93 Bug 1637908 - Introduce a touchable heuristic and use it for retargeting touch events. r=snorp
The existing heuristics in GetClickableAncestor have evolved over time to be
quite specific to mouse/click events, because those are the ones that we have
enabled by default. The heuristics we want for touch events are different and
should generally be very conservative, because we almost never want to retarget
the raw touch events. This patch introduces a new GetTouchableAncestor
function that implements this new conservative heuristic function and uses it
for determining the retargeting destination for touch events.

Differential Revision: https://phabricator.services.mozilla.com/D91027
2020-09-22 20:40:06 +00:00
Kartikaya Gupta 30be708fe0 Bug 1637908 - Minor cleanup. r=snorp
Depends on D91025

Differential Revision: https://phabricator.services.mozilla.com/D91026
2020-09-22 20:42:52 +00:00
Kartikaya Gupta 81e7ed672a Bug 1637908 - Move the clickableAncestor computation further down. r=snorp
There's a few early-return conditions where we don't need to do this computation
at all. So this patch just moves the computation to after the early-returns. No
functional changes intended.

Differential Revision: https://phabricator.services.mozilla.com/D91025
2020-09-22 20:43:02 +00:00
Emilio Cobos Álvarez a4e300194a Bug 1557645 - Clone OOP iframes in the right process. r=nika
This works, though probably we want to do some follow-up tweaks, like
the adding of the onload blocker and so on, so that we can avoid the
UpdateDimensions hack.

We may also want a PrintObject in the nsPrintJob tree, perhaps...

Differential Revision: https://phabricator.services.mozilla.com/D90310
2020-09-22 09:57:27 +00:00
Razvan Maries 3c91b4555b Backed out changeset bb1437fa93d0 (bug 1665332) for perma failures on ClipManager.cpp. CLOSED TREE 2020-09-22 14:10:37 +03:00
Timothy Nikkel 5039021d77 Bug 1665332. Fetch the value of mZoomableByAPZ in the ScrollFrameHelper constructor so it is always correct. r=kats
Otherwise the only time it gets set is when the ZoomConstraintsClient specifically sets it in response to one of the things that can change it. But if the scroll frame gets reconstructed and one of those things don't happen it will be wrong.

This shows up with desktop zooming scrollbars because we check mZoomableByAPZ (or WantAsyncScroll()) before we use the apz scroll path in ScrollFrameHelper::ScrollBy().

Differential Revision: https://phabricator.services.mozilla.com/D90384
2020-09-22 04:52:18 +00:00
Timothy Nikkel bf1baf1293 Bug 1665332. Have ZoomConstraintsClient keep it's ZoomConstraints around so it can be queried later. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D90383
2020-09-22 04:50:54 +00:00
Boris Chiou 51ee1b55f9 Bug 1646096 - Mark bug number for the incorrect calculation of the cross size for column-oriented flex container. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D88686
2020-09-21 15:20:58 +00:00
Boris Chiou 20eecc6085 Bug 1646096 - Fix the calculation of the flex item's cross size with respect to aspect-ratio. r=dholbert
Address aspect-ratio cases for non-replaced elements, for
https://drafts.csswg.org/css-flexbox-1/#cross-sizing.

Differential Revision: https://phabricator.services.mozilla.com/D88195
2020-09-21 15:20:56 +00:00
Boris Chiou 332f0ffe0e Bug 1646096 - Take aspect-ratio into account in FlexItem::mIntrinsicRatio. r=dholbert,TYLin
This patch is just refactoring and is not intended to change behavior.
Basically, we make mIntrinsicRatio also accept the value from
aspect-ratio, so it works for both replaced elements and non-replaced
elements now.

Differential Revision: https://phabricator.services.mozilla.com/D88194
2020-09-21 15:20:53 +00:00
Boris Chiou 05d1002d3a Bug 1646096 - Handle aspect-ratio for Automatic Minimum Size of Flex items. r=dholbert
This tweaks the retrieval of aspect-ratio for Automatic Minimum Size of
Flex Items.

https://drafts.csswg.org/css-flexbox/#min-size-auto

Differential Revision: https://phabricator.services.mozilla.com/D86635
2020-09-21 15:20:49 +00:00
Boris Chiou 42dfbb75a3 Bug 1646096 - Support aspect-ratio for flex items when computing their sizes for ReflowInput. r=dholbert
For flex items with used 'flex-basis:content', normally we resolve that
(to get the 'flex base size') by behaving as if their main-size property
had the value 'max-content'.

But if the flex item has an aspect ratio and a definite cross size, then
'flex-basis:content' is instead supposed to use those values (the ratio
& cross size) to produce the flex base size. So in that scenario, we need
to behave as if the main-size property were 'auto', *not* 'max-content'.
This lets us get past an IsAuto() check & reach the codepath that calls
`Compute{Inline,Block}SizeFromAspectRatio` which does what we want.

Reference:
https://drafts.csswg.org/css-flexbox-1/#valdef-flex-basis-content
https://drafts.csswg.org/css-flexbox-1/#algo-main-item

Differential Revision: https://phabricator.services.mozilla.com/D86633
2020-09-21 15:20:41 +00:00
Kris Maglione 0ae5bf64c5 Bug 1655866: Part 4 - Handle OOP beforeunload listeners in PermitUnload(). r=nika
Differential Revision: https://phabricator.services.mozilla.com/D88317
2020-09-21 22:41:01 +00:00
Kris Maglione aa7e3fbdb4 Bug 1655866: Part 3 - Refactor PermitUnload to simplify handling OOP frames. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D88316
2020-09-21 22:40:53 +00:00
Bas Schouten ab620ae50d Bug 1661881 - Part 4: Prevent additional event loop churn for NotifyVsync when in the child process. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D90863
2020-09-21 14:00:07 +00:00
Emilio Cobos Álvarez 86a62e8a52 Bug 1663439 - Re-order rowgroups if reflowing a tfoot with an already split next-in-flow. r=TYLin
As the reflow may destroy the next-in-flow. See existing code.

Differential Revision: https://phabricator.services.mozilla.com/D90146
2020-09-16 17:18:03 +00:00
Emilio Cobos Álvarez 28ba192e8d Bug 1663439 - Avoid negative avail bsizes in paginated table reflow. r=TYLin
This causes an assertion when printing the test-case, though it turns
out not to be the cause of the bug in the end. Still seems worth fixing,
and will be tested by the test in the following patch.

Differential Revision: https://phabricator.services.mozilla.com/D90145
2020-09-16 10:42:09 +00:00
Emilio Cobos Álvarez 3cfb419d00 Bug 1665816 - CSSOM should respect rule-level property restrictions. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D90729
2020-09-21 09:57:46 +00:00
Bogdan Tara 2991b8c066 Backed out changeset 0da5103ba772 (bug 1665975) for mozglue_static::panic_hook mass crashes CLOSED TREE 2020-09-21 10:07:03 +03:00
Frederic Wang 1ac695dbdc Bug 1665975 - Implement the math-style property. r=emilio
This patch renames the internal -moz-math-display to math-style and
exposes it under the layout.css.math-style.enabled preference. The
initial value becomes "normal" but that does not affect the default
MathML behavior since the UA style sheet sets the math-style property
explicitly on <math> tags. WPT tests are updated to use the syntax
approved by the CSSWG.

Intent to prototype: https://groups.google.com/forum/#!msg/mozilla.dev.platform/1hQQ7ISudGo/_yLEckEeBQAJ

Differential Revision: https://phabricator.services.mozilla.com/D90731
2020-09-21 05:41:51 +00:00
Narcis Beleuzu d9dfe81235 Backed out changeset 976e025956bf (bug 1665152) for linting failure on Overview.html . CLOSED TREE 2020-09-21 07:35:08 +03:00
Mats Palmgren ef32c09d8f Bug 1665152 - Initial CSS Masonry draft spec. r=dholbert
NPOTB DONTBUILD

The Overview.html file was generated by this command:
curl https://api.csswg.org/bikeshed/ -F file=@layout/docs/css-grid-3/Overview.bs -F force=1 > layout/docs/css-grid-3/Overview.html

Differential Revision: https://phabricator.services.mozilla.com/D90302
2020-09-21 04:07:00 +00:00
Cameron McCormack a9b6211496 Bug 1658343 - Propagate intrinsic sizes from SVG documents in embed/object to parent using IPC. r=kmag,dholbert
Differential Revision: https://phabricator.services.mozilla.com/D90055
2020-09-21 02:09:57 +00:00
Sylvestre Ledru ec8859e69e Bug 1519636 - Reformat recent changes to the Google coding style r=andi
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D90793
2020-09-20 10:14:09 +00:00
Jonathan Kew 039d64f49f Bug 1665904 - Rename paperName to paperId for better clarity (front-end). r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D90791
2020-09-20 14:09:59 +00:00
Kartikaya Gupta 0a8f544bee Bug 1664626 - Delete now-unused code. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D90724
2020-09-19 00:36:20 +00:00
Kartikaya Gupta 2273097f9e Bug 1664638 - Replace the ScrollPositionUpdate from scrollframe construction with one that has the scroll position. r=tnikkel
In some cases (in this scenario, with a RTL XUL scrollframe), the scrollframe
can have a nonzero scroll position upon construction or reconstruction, without
having executed the scrolling code in ScrollFrameHelper::RestoreState or
ScrollFrameHelper::ScrollToRestoredPosition. In such cases APZ is not properly
notified of the scroll position, and it can get into a state where it is out of
sync with the main thread scroll position (until a subsequent scroll).

To correct this, we replace the ScrollPositionUpdate that is created during
scrollframe construction with a new ScrollPositionUpdate that holds the correct
scroll position, so that APZ is properly notified of the scroll position.

Differential Revision: https://phabricator.services.mozilla.com/D90674
2020-09-19 00:30:22 +00:00
Botond Ballo 95ba24f326 Bug 1666022 - Make nsLayoutUtils::AsyncPanZoomEnabled() const. r=hiro
The patch also adds a const version of GetDisplayRootFrame().

Differential Revision: https://phabricator.services.mozilla.com/D90754
2020-09-18 20:38:50 +00:00
Kartikaya Gupta f38b3ecb1b Bug 1665955 - Stop including nsIScrollableFrame.h from Element.h. r=emilio
Changes to nsIScrollableFrame.h cause the world to rebuild which I find annoying.
This removes the inclusion into Element.h which is responsible for the
world-rebuilding and is relatively easy to eliminate. A bunch of usages of
nsIScrollableFrame get moved from .h files into .cpp files and I include the
header into .cpp files as needed.

Differential Revision: https://phabricator.services.mozilla.com/D90735
2020-09-18 18:32:13 +00:00
Kartikaya Gupta fb97ec2e40 Bug 1654836 - Redo how we expand displayport alignment for webrender. r=nical
The displayport is aligned to screen pixels by an alignment number; there was
code to increase that alignment number for the WebRender codepath. This is
desirable because it causes the displayport to move less frequently, which
provides better performance characteristics with WebRender. However, the
way that was implemented, it was possible for the aligned displayport to not
completely enclose the unaligned displayport, which could then result in
perma-checkerboarding.

This patch removes that code and replaces it with a simpler approach to scale
up the existing alignment number by a factor based on the size of the scroller's
base rect (roughly how much of the scroller is visible to the user).

This does make the displayports larger, more so for scrollers with more visible
area. This has negative performance implications, so we mitigate that by also
scaling down the displayport margin multiplier by the same scaling factor. This
isn't perfect, but seems to work well enough in practice.

Differential Revision: https://phabricator.services.mozilla.com/D90503
2020-09-18 12:40:08 +00:00
Kartikaya Gupta ff619cad8f Bug 1654836 - Add a bunch of verbose-level displayport logging. r=nical
Differential Revision: https://phabricator.services.mozilla.com/D90499
2020-09-18 08:05:50 +00:00
Kris Maglione a3b66dd82c Bug 1662841: Remove Fission-incompatible `nsDocumentViewer::AppendSubtree`. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D90615
2020-09-17 22:43:47 +00:00
Timothy Nikkel bcd2f907ad Bug 1665326. Make the APZ pure relative scroll path in ScrollFrameHelper::ScrollBy handle ScrollUnit::WHOLE scrolls as well. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D90371
2020-09-17 12:34:49 +00:00
Olli Pettay 3f30b17ab9 Bug 1665165 - Disable some bfcache tests on Fission, r=jesup
Differential Revision: https://phabricator.services.mozilla.com/D90303
2020-09-17 17:36:24 +00:00
Geoff Brown 1492a7168d Bug 1662894 - Expand fuzzy range for mix-blend-mode-and-filter.svg; r=kats
Update fuzzy range by +1 to avoid frequent intermittent failures in this test.

Differential Revision: https://phabricator.services.mozilla.com/D90507
2020-09-17 10:41:00 +00:00
Hiroyuki Ikezoe 79b4b86322 Bug 1661316 - Use `visibleRect` for partial pre-render check instead of `dirtyRect`. r=mattwoodrow
With RDL the dirty rect might be empty if the target transformed frame is
marked as `mForceDescendIntoIfVisible`.

Differential Revision: https://phabricator.services.mozilla.com/D90497
2020-09-17 00:52:16 +00:00
Dorel Luca 72ef712fd0 Backed out 10 changesets (bug 1518999) for GeckoView failures in PanZoomControllerTest.scroll. CLOSED TREE
Backed out changeset 7b5bdd071d05 (bug 1518999)
Backed out changeset 401e488734dd (bug 1518999)
Backed out changeset c13e51e17329 (bug 1518999)
Backed out changeset 2a2d67ba15b8 (bug 1518999)
Backed out changeset 3d4d84003227 (bug 1518999)
Backed out changeset 972731762965 (bug 1518999)
Backed out changeset f21b13582dad (bug 1518999)
Backed out changeset 13a4c749a802 (bug 1518999)
Backed out changeset 5a6cea5fd344 (bug 1518999)
Backed out changeset c3bb552e76a3 (bug 1518999)
2020-09-17 02:58:34 +03:00
Emilio Cobos Álvarez 567d300760 Bug 1663826 - Keep freezing navigation during window.print() for compat. r=smaug
This broke in bug 1636728 because we started setting the bit in the
cloned docshell rather than the original one.

Behavior in other browsers seems to be a bit all over the place, but for
now keeping our behavior during window.print() seems sane.

Differential Revision: https://phabricator.services.mozilla.com/D90456
2020-09-16 22:55:19 +00:00
Timothy Nikkel bd79bff909 Bug 1665507. Back out changeset 25760b432ecb from bug 1663562. The workaround is no longer needed.
Differential Revision: https://phabricator.services.mozilla.com/D90490
2020-09-16 22:30:01 +00:00
Sean Feng 3aaaa826c0 Bug 1518999 - Update ContentfulPaint algorithm to follow the spec r=emilio
This patch includes a couple of changes.
1) Notify contentful paint only during refresh driver ticks.
2) Not only the root document, sub document should also have their own
   contentful paint entry.
3) Consider invisible text as contentful as well.

Differential Revision: https://phabricator.services.mozilla.com/D89498
2020-09-14 18:47:34 +00:00
Sean Feng 11a2849f32 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-09-14 15:13:18 +00:00
Emilio Cobos Álvarez e6b821e340 Bug 968753 - Save per-printer settings on GTK. r=jwatt
I don't see any reason why this shouldn't work off-hand, there's no
gtk globals or such that fundamentally avoid sharing settings.

The PSPrinters stuff is gone so it's not needed to mess up with PS/CUPS
names.

The last used printer name stuff is now just a pref read, so there
shouldn't be sandbox violation shenanigans...

There are some restrictions on what can be set or what not (like, if you
set the paper name that may also override the paper size).

But these are problems that we have when restoring from prefs already,
so there's no reason we shouldn't do this, afaict.

Differential Revision: https://phabricator.services.mozilla.com/D90418
2020-09-16 15:31:45 +00:00
Andreas Farre f9f96d23ca Bug 1662410 - Part 1: Fix usage of ChildSHistory.legacySHistory . r=peterv
ChildSHistory.legacySHistory isn't valid for content processes when
session history in the parent is enabled. We try to fix this by either
delegating to the parent by IPC or move the implementation partially
or as a whole to the parent.

Differential Revision: https://phabricator.services.mozilla.com/D89353
2020-09-16 14:51:01 +00:00
Mats Palmgren a4b9f330ab Bug 1660358 - [css-lists-3][css-pseudo-4] Add support for 'text-transform' on ::marker. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D90329
2020-09-15 23:22:26 +00:00
Emilio Cobos Álvarez 706ceffb4b Bug 1665125 - Make print background settings infallible. r=bobowen
This makes callers simpler.

Differential Revision: https://phabricator.services.mozilla.com/D90285
2020-09-16 11:21:41 +00:00
Emilio Cobos Álvarez ba7373413f Bug 1665064 - Honor print background image settings on WebRender too. r=kats,jwatt CLOSED TREE
We usually suppress background images in
nsCSSRendering::PaintStyleImageLayerWithSC, but that codepath isn't hit
by WebRender, so instead do it during display list building, the same
way we suppress background colors.

Differential Revision: https://phabricator.services.mozilla.com/D90278
2020-09-15 16:26:05 +00:00
Narcis Beleuzu 38f63aa9b6 Backed out changeset 0834b634ea07 (bug 1665125) for reftest failures. CLOSED TREE 2020-09-15 23:32:11 +03:00
Barret Rennie 2e9f3011e1 Bug 1663762 - Add probes to measure input event latency during load correlated with preload r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D90208
2020-09-15 17:43:10 +00:00
Barret Rennie 099ef90095 Bug 1663760 - Add probes to measure TTFI correlated with preload r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D90183
2020-09-15 16:42:54 +00:00