Commit Graph

75481 Commits

Author SHA1 Message Date
Mats Palmgren
4547bafea1 Bug 1695530 part 1 - Don't create an INCREMENT counter node when the increment is zero because it has no effect. r=emilio
Also, fix Dump() so that it logs the right type for INCREMENT/SET nodes.

Differential Revision: https://phabricator.services.mozilla.com/D107097
2021-03-04 00:37:59 +00:00
Ting-Yu Lin
ea9685fb41 Bug 1690701 Part 4 - Replace rarely used ReflowInput::IsFloating() with nsStyleDisplay::IsFloating(). r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D106583
2021-03-04 00:34:04 +00:00
Ting-Yu Lin
252b93c3a9 Bug 1690701 Part 3 - Check NS_FRAME_OUT_OF_FLOW bit in nsIFrame::IsFloating(). r=emilio
Similar to Part 1, I assume nsIFrame::IsFloating()'s callers really want
to check whether a frame is a real float.

Differential Revision: https://phabricator.services.mozilla.com/D106582
2021-03-04 00:34:04 +00:00
Ting-Yu Lin
7e74c47006 Bug 1690701 Part 2 - Check NS_FRAME_OUT_OF_FLOW bit in nsIFrame::IsAbsolutelyPositioned(). r=emilio
I assume nsIFrame::IsAbsolutelyPositioned()'s callers really want to
check whether a frame is a real abspos frame, not just check a frame has
a abspos style. This could potentially change the behavior, but I feel
its the right thing to do.

Differential Revision: https://phabricator.services.mozilla.com/D106580
2021-03-04 00:34:03 +00:00
Ting-Yu Lin
a0be0aea13 Bug 1690701 Part 1 - Check floating style when determining whether it is a floating first letter. r=layout-reviewers,emilio
IsFontSizeInflationContainer() is a helper of nsIFrame::Init(). That is,
when it is called from a caller like
nsCSSFrameConstructor::CreateFloatingLetterFrame(), the
`NS_FRAME_OUT_OF_FLOW` bit is not set yet. There is also a hint at the
call site
https://searchfox.org/mozilla-central/rev/362676fcadac37f9f585141a244a9a640948794a/layout/generic/nsIFrame.cpp#770

To fix it, we need to change the condition to check only the
floating style.

layout/reftests/bidi/with-first-letter-2b.html is one of the testcases
that can trigger the following assertion without this patch.

  ###!!! ASSERTION: should not be container for font size inflation

Differential Revision: https://phabricator.services.mozilla.com/D106579
2021-03-04 00:34:03 +00:00
Butkovits Atila
4a2aa0080e Merge mozilla-central to autoland. CLOSED TREE 2021-03-04 00:23:06 +02:00
Andreea Pavel
002023eb26 Merge autoland to mozilla-central a=merge 2021-03-03 23:49:23 +02:00
Emilio Cobos Álvarez
a491a4b14d Bug 1696172 - Tweak fuzz range.
Differential Revision: https://phabricator.services.mozilla.com/D107102
2021-03-03 18:49:11 +00:00
Micah Tigley
99ac1f352b Bug 1695402 - Support image-set() on the cursor property. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D106745
2021-03-03 18:34:46 +00:00
Csoregi Natalia
de702c9eb1 Backed out changeset 78567f53575e (bug 1695402) for failures on test_css-properties-db.js. CLOSED TREE 2021-03-03 19:54:08 +02:00
Micah Tigley
dee15c3162 Bug 1695402 - Support image-set() on the cursor property. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D106745
2021-03-03 16:34:39 +00:00
Emilio Cobos Álvarez
f3d447ac6a Bug 1687022 - Make image-element widget test expectation lousy on win win7 since it passes in some configurations.
MANUAL PUSH: orange CLOSED TREE
2021-03-03 16:37:44 +01:00
Sebastian Hengst
7916a12f4f Backed out 2 changesets (bug 1528289) for breaking navigation with clicks after user scrolled by clicking with middle mouse button. a=backout
Backed out changeset 33c7b633ada2 (bug 1528289)
Backed out changeset be5cf87707f9 (bug 1528289)
2021-03-03 14:29:12 +01:00
Emilio Cobos Álvarez
f8386a04fd Bug 1687022 - Menulist shrinkwrap test is a bit more fuzzy with swgl.
MANUAL PUSH: Orange on a CLOSED TREE
2021-03-03 13:36:36 +01:00
Emilio Cobos Álvarez
a2c53cfa1f Bug 1687022 - Minor fuzzy adjustments.
MANUAL PUSH: Win7 orange on a CLOSED TREE
2021-03-03 13:34:39 +01:00
James Graham
b9682a9785 Bug 1695263 - Import marionette from driver not harness, r=marionette-reviewers,whimboo
This avoids a lot of unnecessary extra work and dependencies.

Differential Revision: https://phabricator.services.mozilla.com/D106760
2021-03-03 10:03:03 +00:00
Simon Giesecke
b5855b89fc Bug 1634281 - Remove unused nsDataHashtable.h includes. r=xpcom-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D106007
2021-03-03 08:58:52 +00:00
Jamie Nicol
3e85fea00a Bug 1694707 - Select correct scroll root within fixed position items with dynamic toolbar. r=gw
Currently when selecting the scroll root for picture caching, if a
non-Zoom transform is encountered we give up and select the root
spatial node. This is because the transform may be non-axis aligned.

When the Fenix dynamic toolbar is enabled, fixed position items must
create a spatial node with an animated transform, so that they can be
positioned asynchronously by APZ when the toolbar moves.

The combination of these two things means for that scroll frames
within fixed position items we always select the root spatial node,
meaning that the entire contents invalidates continuously while
scrolling.

To fix this, add a flag to the Transform ReferenceFrameKind which
marks the transform as always being a 2D scale or translation. When
selecting the scroll root, we can continue searching through such
reference frames, as we already do for Zoom frames. Set this flag true
for references frames created due to the dynamic toolbar.
Additionally, assert that the transform is indeed a 2d scale or
translation after it is resolved.

The condition of the transform being only a 2d scale and translation
is shared with ReferenceFrameKind::Zoom, so that has been removed and
its uses updated to use this new flag instead. An additional
should_snap flag has also been added, so that we continue to snap zoom
transforms, and additionally snap the dynamic-toolbar related
transforms too.

Lastly, this adds some unit tests for find_scroll_root.

Differential Revision: https://phabricator.services.mozilla.com/D106809
2021-03-02 21:53:41 +00:00
Emilio Cobos Álvarez
222709a839 Bug 1694527 - Tweak fuzz range for mac+swgl.
MANUAL PUSH: Unexpected pass CLOSED TREE
2021-03-02 22:12:53 +01:00
Emilio Cobos Alvarez
3e0919346a Bug 1695970 - Make layout/generic/test/test_bug632379.xhtml not depend on widget sizes. r=mstange
It was relying on the precise height you get with the windows native theme.

Differential Revision: https://phabricator.services.mozilla.com/D106952
2021-03-02 19:19:27 +00:00
Emilio Cobos Alvarez
633b06235f Bug 1695965 - Tweak some fuzzy pixel counts for Windows+nnt . r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D106951
2021-03-02 19:16:55 +00:00
Emilio Cobos Álvarez
71c7f8b66a Bug 1694527 - Fix the order of conditions in the reftest manifest so that it fails as expected on android and windows (for now).
MANUAL PUSH: orange on a CLOSED TREE
2021-03-02 18:49:28 +01:00
Emilio Cobos Álvarez
5753b7aa51 Bug 1694708 - Fix annotation for wr+windows+native theme.
MANUAL PUSH: Orange on a CLOSED TREE
2021-03-02 17:57:37 +01:00
Mihai Alexandru Michis
866910c7fb Bug 1694527 - Remove typo from fuzzy expectation in box-shadow/reftest.list. a=fix
CLOSED TREE
2021-03-02 18:16:55 +02:00
Emilio Cobos Álvarez
dc5c1a0789 Bug 1694527 - The test is a bit fuzzy on the shadow radius after all.
MANUAL PUSH: Orange on a CLOSED TREE
2021-03-02 16:47:13 +01:00
Stephen A Pohl
5a7103f458 Bug 1694708: Adjust fuzziness for element-paint-native-widget.html on Windows with the non-native theme enabled. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D106715
2021-03-02 15:10:12 +00:00
Stephen A Pohl
8a63815f27 Bug 1694527: Add cross-platform test for bug 1212823 that can be used with the non-native theme. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D106714
2021-03-02 14:54:52 +00:00
Lee Salzman
6488599ba1 Bug 1695807 - Mix blend image brush data should be RasterizationSpace::Screen. r=gw
Differential Revision: https://phabricator.services.mozilla.com/D106880
2021-03-02 12:18:22 +00:00
Olli Pettay
bba6b348ae Bug 1689601, nested freeze/thaw, r=peterv
Non-SHIP bfcache seems to be rather complicated here, since it needs to explicitly store inner windows and what not.
SHIP should be able to handle this in a simpler way.
It is possible that some ordering needs still tweaking.

Differential Revision: https://phabricator.services.mozilla.com/D105360
2021-03-02 12:13:20 +00:00
Emilio Cobos Álvarez
c17b1c2e53 Bug 1695390 - Move extremum lengths to the individual Size / MaxSize types. r=boris
This will prevent growing them when introducing fit-content(<length>).

This can _almost_ be derived, if it wasn't because of the quirky stuff.
I think the macro is probably good enough for now but let me know if you
disagree.

Differential Revision: https://phabricator.services.mozilla.com/D106713
2021-03-02 12:11:35 +00:00
Brindusan Cristian
82efbb80e1 Backed out changeset be6d9849825d (bug 1695390) for wr failures in col-definite-max-size-001.html. CLOSED TREE 2021-03-02 13:41:40 +02:00
Mihai Alexandru Michis
87f481bf9a Backed out 16 changesets (bug 1689601) for causing cpp bustages in nsFrameLoader.
CLOSED TREE

Backed out changeset 6e5523a7210d (bug 1689601)
Backed out changeset 745eaa468c74 (bug 1689601)
Backed out changeset a594bd02b8b6 (bug 1689601)
Backed out changeset 0c5fe977ced6 (bug 1689601)
Backed out changeset 2fca23521891 (bug 1689601)
Backed out changeset 334aeb627855 (bug 1689601)
Backed out changeset 2b2081a15d67 (bug 1689601)
Backed out changeset 307bde43cc96 (bug 1689601)
Backed out changeset 04aadec67ce2 (bug 1689601)
Backed out changeset 701eccb34772 (bug 1689601)
Backed out changeset 278db692aa8b (bug 1689601)
Backed out changeset c261c243a64d (bug 1689601)
Backed out changeset 7e8022e5696a (bug 1689601)
Backed out changeset 6138bfc6c08d (bug 1689601)
Backed out changeset 63295b3a62d0 (bug 1689601)
Backed out changeset 6d02e59ddc51 (bug 1689601)
2021-03-02 13:15:10 +02:00
Emilio Cobos Álvarez
b5686164be Bug 1695390 - Move extremum lengths to the individual Size / MaxSize types. r=boris
This will prevent growing them when introducing fit-content(<length>).

This can _almost_ be derived, if it wasn't because of the quirky stuff.
I think the macro is probably good enough for now but let me know if you
disagree.

Differential Revision: https://phabricator.services.mozilla.com/D106713
2021-03-02 10:34:39 +00:00
Olli Pettay
9a08f751a4 Bug 1689601, nested freeze/thaw, r=peterv
Non-SHIP bfcache seems to be rather complicated here, since it needs to explicitly store inner windows and what not.
SHIP should be able to handle this in a simpler way.
It is possible that some ordering needs still tweaking.

Differential Revision: https://phabricator.services.mozilla.com/D105360
2021-03-02 09:44:13 +00:00
Petr Sumbera
5e6ba7970d Bug 1695573 - Add missing #include for MakeScopeExit. r=glandium DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D106753
2021-03-02 08:27:31 +00:00
Hiroyuki Ikezoe
b7d077670b Bug 1678505 - s/VerticalScollDirection/VerticalScrollDirection/. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D103411
2021-03-02 08:06:25 +00:00
Masayuki Nakano
246163150b Bug 1528289 - part 1: Move selection at middle button down rather than middle button up r=edgar
Chrome and Safari move selection at middle button down and does not modify the
range at middle button up.  However, they handle middle button down with
`Shift` key is "continue selection".  So, we should handle selection in
nsIFrame when `mousedown` event for middle mouse button is fired, but ignore
multiple selection, drag and drop and maintaining selection for aligning the
behavior to the other browsers.

This patch splits `nsIFrame::HandlePress()` and calls new method which
moves selection from `nsIFrame::HandleEvent()` when middle button is pressed.
(Note that this patch does not check whether middle click paste is enabled
because Chrome moves selection even on Windows which Chrome always disable
middle click paste on.)

With this change, "paste" event target is changed.  Previously, we used target
of the preceding `mouseup` event, but we start to use the target of the
preceding `mousedown` event.

Note that even with this patch, we still behave differently from Chrome even
in the following cases:
- middle mouse button down in selected range, we collapse it, but Chrome keeps
  the selection.
- middle mouse button click in selected range, we dispatch "paste" event, but
  Chrome collapse selection and not dispatch "paste" event.
- middle mouse button down in selected range and up in different element,
  Chrome does not modify the range nor dispatch "paste" event.
- Shift + middle mouse button in editable `<table>` works as non-editable
  in Chrome, but our editor handles it with special path.  Therefore, we
  don't modify the range but dispatch "paste" event in the selected range.

Changing them requires bigger change and probably requires some other features'
behavior changes.  Therefore, we shouldn't touch these issues until they are
actually reported as web-compat issues.

Differential Revision: https://phabricator.services.mozilla.com/D103997
2021-03-01 22:57:06 +00:00
Makoto Kato
53f95208a9 Bug 1692809 - Move some word-break tests into WPT. r=jfkthame
Actually, WPT has no some word-break tests for Japanese (ID and CJ) and
Korean (Hangul Jamos).

So I would like to move layout/reftests/text/wordbreak-2.html and
layout/reftests/text/wordbreak-4a.html into WPT.

Differential Revision: https://phabricator.services.mozilla.com/D105227
2021-03-01 16:55:55 +00:00
Mats Palmgren
d1b89f4cb3 Bug 1485917 - Make <fieldset> with 'display:inline' support CSSOM width/height. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D106728
2021-03-01 16:14:33 +00:00
Emilio Cobos Álvarez
f482ffa15d Bug 1695369 - Simplify StyleColor representation. r=jwatt
There's no need for CurrentColor / Numeric variants when we can
represent them with the complex form.

Differential Revision: https://phabricator.services.mozilla.com/D106690
2021-03-01 16:05:14 +00:00
Mats Palmgren
f01d9a4402 Bug 1694729 - Fix sizing issues for display:table-* on <fieldset> and replaced elements. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D106656
2021-03-01 15:37:00 +00:00
Simon Giesecke
8ecfb38a41 Bug 1691913 - Remove uses of nsDataHashtable::GetValue. r=xpcom-reviewers,necko-reviewers,dragana,nika
GetValue is going to be removed in a subsequent patch. It is no longer needed,
because it can be replaced by functions already provided by nsBaseHashtable,
in particular Lookup and Contains.

Also, its name was confusing, since it specifically returns a pointer that
allows and is intended for modifying the entry within the hashtable, rather
than returning by-value. According to the naming rules to be set on
nsBaseHashtable, it would also needed to be renamed to "Lookup*. Removing
its uses saves this effort.

Differential Revision: https://phabricator.services.mozilla.com/D105476
2021-03-01 09:59:30 +00:00
Mats Palmgren
26330a08b1 Bug 1694459 - Deal with 'display:contents' style changes on <fieldset> descendants better where it affects which <legend> is the rendered legend. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D106566
2021-03-01 03:42:41 +00:00
longsonr
b7e4cc0df4 Bug 1695490 - Remove svg.text-spacing.enabled pref r=emilio
Backs out bug 1599173 which landed in Firefox 72. The pref has been enabled since bug 1600855 which landed in Firefox 73

Differential Revision: https://phabricator.services.mozilla.com/D106731
2021-02-28 21:52:21 +00:00
Botond Ballo
52910b99c8 Bug 1695385 - Avoid scrolling out of bounds using reftest-async-scroll. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D106711
2021-02-27 17:39:34 +00:00
Lee Salzman
cf4a050155 Bug 1682194 - Accelerate cs_clip_rectangle in SWGL. r=jrmuizel
cs_clip_rectangle is slow because we evaluate distance AA for every fragment
the shader touches. With SWGL, we can do much better since we have control
over span. We calculate an inner opaque octagon which can just use a cheap
solid fill and an outer AA octagon within which we need to actually we do
AA and outside which we can just do another solid clear. This reduces most
of the cost of rounded-rectangles to just some setup work, a few fragments
of distance AA on the ends of a span, and large runs of solid color where
we don't have to do much work.

Differential Revision: https://phabricator.services.mozilla.com/D106658
2021-02-27 11:26:30 +00:00
Csoregi Natalia
863547c177 Merge mozilla-central to autoland on a CLOSED TREE 2021-02-27 11:48:23 +02:00
Csoregi Natalia
52a3b19a3d Merge autoland to mozilla-central. a=merge 2021-02-27 11:43:56 +02:00
Csoregi Natalia
b08394edf3 Backed out 11 changesets (bug 1678505) for causing crashes. a=backout
Backed out changeset 7cd5f2c1c3f4 (bug 1678505)
Backed out changeset 09f4c4093c07 (bug 1678505)
Backed out changeset 76e3f391b7dd (bug 1678505)
Backed out changeset 6a0e949d4a2d (bug 1678505)
Backed out changeset 69c7b98ac8f6 (bug 1678505)
Backed out changeset 63608c5df1b0 (bug 1678505)
Backed out changeset a4532c4a1768 (bug 1678505)
Backed out changeset 09aab64b89cd (bug 1678505)
Backed out changeset e832d2bfe7a6 (bug 1678505)
Backed out changeset e0898b4f9fe6 (bug 1678505)
Backed out changeset 04a759c327cd (bug 1678505)
2021-02-27 11:26:46 +02:00
Botond Ballo
8da27843d6 Bug 1688453 - Fix include-what-you-use errors in nsScrollbarFrame.{h,cpp}. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D106692
2021-02-27 02:28:56 +00:00