Commit Graph

9923 Commits

Author SHA1 Message Date
Hiroyuki Ikezoe
5a15da458f Bug 1534070 - Factor scroll-margin into the position calculation where nsIPresShell::ScrollFrameRectIntoView() is going to scroll. r=botond
Depends on D23084

Differential Revision: https://phabricator.services.mozilla.com/D23085

--HG--
extra : moz-landing-system : lando
2019-04-11 06:22:31 +00:00
Hiroyuki Ikezoe
7b600a0531 Bug 1534070 - Factor scroll-padding into the position calculation where nsIPresShell::ScrollContentIntoView() is going to scroll if necessary. r=botond
In the case where scroll-snap-type is specified for the scroll container, the
scroll-padding is also factored into in ScrollFrameHelper::ComputeScrollSnapInfo
which is called via ScrollFrameHelper::ScrollToWithOrigin.  It doesn't double
the scroll-padding value, but it's actually redundant, we should avoid it.
We could separate the functionality of ScrollToWithOrigin, one is to scroll
to a given element, the other is to scroll to a given position.  The former will
be used for Element.scrollIntoElement and relevant stuff, the latter will be
used for Element.scrollTo and relevant stuff.  That's being said, as of now, we
have still the old scroll snap implementation, so the separation will introduce
complexity, the separation should be done once after the old implementation
removed.

There are 9 call sites of nsIPresShell::ScrollContentIntoView:
  nsIPresShell::GoToAnchor
  nsIPresShell::ScrollToAnchor
  Element::ScrollIntoView
   We definitely needs scroll-padding and scroll-margin for these functions.

  nsCoreUtils::ScrollTo
   This is used for Accesible::ScrollTo which scrolls to a given accesible node,
   probably we should behave as what Element::ScrollIntoView does.

  Accessible::DispatchClickEvent
   Similar to the above, similated various mouse events on a given target node.

  PresShell::EventHandler::PrepareToUseCaretPosition
  PresShell::EventHandler::GetCurrentItemAndPositionForElement
   Both are for context menu, we shouldn't consider scroll-padding and
   scroll-margin.

  nsFormFillController::SetPopupOpen
   This is used for autocompletion popup, we shouldn't consider scroll-padding
   and scroll-margin.

  nsFocusManager::ScrollIntoView
   This is bit unfortunate, we should use scroll-padding and scroll-margin
   depending on call site of this function. Bug 1535232 is for this case.

cssom-view/scrollIntoView-scrollPadding.html which has some tests that is
actually testing scroll-padding with scrollIntoView passes with this change.

The reftest in this change is a test case that the browser navigates to an
element with specifying the anchor to the element.

Differential Revision: https://phabricator.services.mozilla.com/D23084

--HG--
extra : moz-landing-system : lando
2019-04-11 06:22:14 +00:00
violet
995f337626 Bug 1524901 - Should not set SVG viewport to intrinsic size when painting background image r=longsonr
When an SVG is used as a CSS background-image, we previously used the same behavior as
a normal image. It will stretch if the background-size is incompatible with the intrinsic
size of the SVG. This is a webcompat issue.

Now we use the painting destination rect size instead to avoid stretching.

Differential Revision: https://phabricator.services.mozilla.com/D26935

--HG--
extra : moz-landing-system : lando
2019-04-11 01:05:02 +00:00
Jonathan Kew
f41c23be63 Bug 1541500 - Apply Android ::selection styling to SVG as well as HTML content. r=snorp
Differential Revision: https://phabricator.services.mozilla.com/D25980

--HG--
extra : moz-landing-system : lando
2019-04-10 10:44:30 +00:00
Henri Sivonen
1240f02f32 Bug 1536575 - Stack size on aarch64 Windows should match stack size on x86_64 Windows. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D26272

--HG--
extra : moz-landing-system : lando
2019-04-09 08:15:24 +00:00
Jeff Muizelaar
43dc286d72 Bug 1541920. Handle blend mode activeness properly. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D26364

--HG--
extra : moz-landing-system : lando
2019-04-08 22:37:26 +00:00
violet
14a3ded377 Bug 1523343 - Should not round translation for SVG frame r=longsonr
When computing transform matrix, translation in SVG should not be rounded.
Checking !IsSVGTransformed() isn't the correct way, since an SVG frame may
have CSS transform applied.

Differential Revision: https://phabricator.services.mozilla.com/D26271

--HG--
extra : moz-landing-system : lando
2019-04-05 09:03:52 +00:00
André Bargull
41b749957c Bug 1533481 - Part 9: Update Gecko to Unicode 12. r=jfkthame!
Summary:

- Add markers to generated files to discourage manual edits.
- Add generated file to clang-format-ignore.
- Handle currently not supported Georgian characters in the Perl script.

Reviewers: jfkthame

Reviewed By: jfkthame

Bug #: 1533481

Differential Revision: https://phabricator.services.mozilla.com/D25269

--HG--
extra : rebase_source : cb485b400638790af9cbe24867d6a25505888459
2019-04-04 12:46:18 +03:00
Jonathan Kew
224d07137d Bug 1479760 - Use the ::selection colors to paint inactive as well as active selections. r=emilio
This will enable the devtools font highlighting issue in bug 1479760 to be fixed
using ::selection, and matches webkit/blink behavior.

When we implement ::inactive-selection (bug 1475773) it will supersede this.

Differential Revision: https://phabricator.services.mozilla.com/D25396

--HG--
extra : moz-landing-system : lando
2019-04-04 09:17:25 +00:00
Edwin Gao
4ef9fcc3d1 Bug 1532813 - expect fail for last_test_to_unload_testsuite for windows10-aarch64 r=jmaher
Changes:
- skipped problematic tests in crashtest suite on windows10-aarch64
- removed unnecessary pixel fuzzy values from previous iterations of greening tests

Differential Revision: https://phabricator.services.mozilla.com/D25714

--HG--
extra : moz-landing-system : lando
2019-04-03 20:36:41 +00:00
Mats Palmgren
19b053428a Bug 1540561 - Resurrect the display-contents-shadow-dom-1.html reftest as a WPT. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D25546

--HG--
rename : layout/reftests/css-display/display-contents-shadow-dom-1-ref.html => testing/web-platform/tests/css/css-display/display-contents-shadow-dom-1-ref.html
extra : rebase_source : 93b017a3750bcdb2c0e4f592a3fd598f3e9fe698
2019-03-31 19:53:42 +02:00
Botond Ballo
27b218cb75 Bug 1519007 - Avoid using setAsyncScrollOffset() to scroll out of bounds in tests. r=kats
Depends on D24826

Differential Revision: https://phabricator.services.mozilla.com/D25483

--HG--
extra : moz-landing-system : lando
2019-04-01 15:39:27 +00:00
Lee Salzman
a00853db4b Bug 1539026 - Skia m74 fuzzing. r=rhunt 2019-03-26 14:52:45 -04:00
Daniel Holbert
f4e0af6db7 Bug 1514843 part 3: Add more testcases for 'contain:size' on scrollable elements. r=TYLin
This patch adds tweaked copies of the testcases from the prior patch,
exercising the other relevant values for the 'overflow' property (for 'hidden'
and 'auto', rather than 'scroll').

Depends on D25155

Differential Revision: https://phabricator.services.mozilla.com/D25317

--HG--
rename : layout/reftests/w3c-css/submitted/contain/contain-size-block-002-ref.html => layout/reftests/w3c-css/submitted/contain/contain-size-block-003-ref.html
rename : layout/reftests/w3c-css/submitted/contain/contain-size-block-002.html => layout/reftests/w3c-css/submitted/contain/contain-size-block-003.html
rename : layout/reftests/w3c-css/submitted/contain/contain-size-block-002-ref.html => layout/reftests/w3c-css/submitted/contain/contain-size-block-004-ref.html
rename : layout/reftests/w3c-css/submitted/contain/contain-size-block-002.html => layout/reftests/w3c-css/submitted/contain/contain-size-block-004.html
rename : layout/reftests/w3c-css/submitted/contain/contain-size-inline-block-002-ref.html => layout/reftests/w3c-css/submitted/contain/contain-size-inline-block-003-ref.html
rename : layout/reftests/w3c-css/submitted/contain/contain-size-inline-block-002.html => layout/reftests/w3c-css/submitted/contain/contain-size-inline-block-003.html
rename : layout/reftests/w3c-css/submitted/contain/contain-size-inline-block-002-ref.html => layout/reftests/w3c-css/submitted/contain/contain-size-inline-block-004-ref.html
rename : layout/reftests/w3c-css/submitted/contain/contain-size-inline-block-002.html => layout/reftests/w3c-css/submitted/contain/contain-size-inline-block-004.html
extra : moz-landing-system : lando
2019-03-29 22:01:25 +00:00
Daniel Holbert
beda2208c9 Bug 1514843 part 2: Honor 'contain:size' for scrollable elements. r=TYLin
'contain:size' just means we should size these elements as if they had no
contents -- i.e. wherever we derive the size of the scrollable frame from the
size of its contents, we should pretend that its contents had zero size.

Differential Revision: https://phabricator.services.mozilla.com/D25155

--HG--
rename : layout/reftests/w3c-css/submitted/contain/contain-size-block-001.html => layout/reftests/w3c-css/submitted/contain/contain-size-block-002.html
rename : layout/reftests/w3c-css/submitted/contain/contain-size-inline-block-001.html => layout/reftests/w3c-css/submitted/contain/contain-size-inline-block-002.html
extra : moz-landing-system : lando
2019-03-29 22:08:34 +00:00
Daniel Holbert
c7d7937517 Bug 1503173: When deciding whether a flex item needs a final reflow, check RELATIVE_BSIZE state bit on its children. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D25441

--HG--
extra : moz-landing-system : lando
2019-03-29 21:50:37 +00:00
Hiroyuki Ikezoe
63484d1fba Bug 1141387 - Set image.animation_mode=none to avoid the animated GIF is advanced to the next frame. r=heycam
The animated GIF in background-blending-image-color-gif.html has two animation
frames, the one is a red rectangle, the other is a green rectangle.  The reftest
is supposed to take the snapshot during the time where the animation frame is
the red rectangle (the first frame) and the frame duration is 1000ms.  So if we
take over 1000ms there for some reasons, say on slow platforms, before taking
the snapshot, the reftet fails.

Differential Revision: https://phabricator.services.mozilla.com/D24843

--HG--
extra : moz-landing-system : lando
2019-03-29 05:58:25 +00:00
Gurzau Raul
ce6fed5354 Backed out changeset 0c32d04c0665 (bug 1529492) for reftest failures at /bugs/1529492-1.html on a CLOSED TREE. 2019-03-29 06:10:50 +02:00
Cameron McCormack
97109f9916 Bug 1529492 - Disable caret clamping if transforms are present. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D25194

--HG--
extra : moz-landing-system : lando
2019-03-28 23:33:40 +00:00
Hiroyuki Ikezoe
9db5bc51b8 Bug 1519013 - Shrink the content to display size if user has never changed the site resolution. r=botond
elementFromPoint-002.html, elementFromPoint-003.html and dialog-showModal.html
use document.elementFromPoint with a given point which is calculated from the
value returned by getBoundingClientRect() for a 100% width element.  Before
this change, the given point is outside of view because there is no viewport
meta tag in the documents so that elementFromPoint fails.  After this change, the
documents fit to the visual viewport so that elementFromPoint works as expected.

Differential Revision: https://phabricator.services.mozilla.com/D16155

--HG--
extra : moz-landing-system : lando
2019-03-28 03:04:59 +00:00
Edwin Gao
4b22eba76a Bug 1536365, 1536363 - fine tune expected outcome of reftests on windows10-aarch64 r=jmaher
Relocated the `fuzzy-if` conditions for windows10-aarch64 in the files listed below, as the fuzzy condition was being overridden by conditions that came later.

Also tuned some of the values for pixel differences to reduce oranges.

Differential Revision: https://phabricator.services.mozilla.com/D25113

--HG--
extra : moz-landing-system : lando
2019-03-27 18:30:38 +00:00
Botond Ballo
c1665a519c Bug 1527511 - Other scrollbar rendering reftest fixes. r=kats
The functional fix in this patch series makes some other scrollbar rendering
tests actually test something useful.

Some of them just start passing. Some need a bit of fuzzing. Some need an
adjustment to avoid running afoul of our minimum viewport width of 200.

Differential Revision: https://phabricator.services.mozilla.com/D23079

--HG--
extra : moz-landing-system : lando
2019-03-27 16:38:23 +00:00
Botond Ballo
d558cef23f Bug 1527511 - Get zoomed-in RTL scrollbar rendering tests working and re-enable them. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D23078

--HG--
extra : moz-landing-system : lando
2019-03-27 16:38:13 +00:00
Cosmin Sabou
ef5fea1c75 Merge mozilla-central to mozilla-inbound. 2019-03-27 07:00:56 +02:00
Glenn Watson
9b399ba2a8 Bug 1539048 - Support segment rendering for pictures in WR. r=kvark
On some low end GPUs, clip mask rendering can be a significant
GPU cost. One way to reduce this is to support segment rendering
on more primitive types, to reduce the size of clip masks.

This patch adds support for pictures that have clip masks
to take part in segment rendering. This can significantly
reduce the number of fragments that must be drawn into a clip
mask for off-screen picture surfaces.

In future, WR can take advantage of segment rendering to use
clip mask shaders that handle only a single corner at a time.
This will be a further significant performance win to clip mask
render time.

Differential Revision: https://phabricator.services.mozilla.com/D24852

--HG--
extra : moz-landing-system : lando
2019-03-26 21:25:31 +00:00
Mats Palmgren
9e5f85edc2 Bug 1538618 - [css-pseudo] implement animation support for ::marker pseudos. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D25003

--HG--
extra : rebase_source : 999373f16c816cdd0dd64b1cc3f9f3f30bb12003
extra : amend_source : 829c0fc25afc55d50b70aebc1f3b9f0e8f06c458
2019-03-26 05:48:26 +01:00
Cosmin Sabou
326beac646 Bug 1531816 - Disable svg/as-image/img-blobURI-2.html on webrender due to frequent failures.
Reviewers: kats

Tags: #secure-revision

Bug #: 1531816

Differential Revision: https://phabricator.services.mozilla.com/D24671

--HG--
extra : rebase_source : e1ebfa15431563b74ddc0c70df9fdd8f92c5f749
2019-03-25 10:49:18 +02:00
Matt Woodrow
3859e5d739 Bug 1535507 - Assume that we have an empty display list building override rect for frames that support it, even if an explicit one isn't present. r=miko
If the frame supports it (stacking context + containing block for fixed), and a descendant was
modified, we would have created an override dirty region with just the area of that descendant.
In the case where no descendants are modified, we should use an empty rect, rather than
the area inherited from our parent.

This fixes the case where we forcibly build position:fixed frames (since they might async
scroll differently to the rest of the page), but we only need to build the container item,
not the whole frame subtree within it.

Added a test that shows us building the non-intersecting position:fixed, but not items within it.

Differential Revision: https://phabricator.services.mozilla.com/D23610

--HG--
extra : moz-landing-system : lando
2019-03-26 02:14:50 +00:00
Edwin Gao
5b28c50d53 Bug 1536362, 1536363, 1536365, 1536355, 1537997, 1537993, 1538001, 1538005, 1538009, 1538012, 1538017, 1538022, 1534717 - add conditions to reftests, crashtests and wpt reftets that experience issues on windows10-aarch64 r=jmaher
Disable or change the expected outcomes of:

- reftests
- jsreftests
- crashtest
- web-platform-reftests

for windows10-aarch64.

Differential Revision: https://phabricator.services.mozilla.com/D24741

--HG--
extra : moz-landing-system : lando
2019-03-25 18:17:37 +00:00
arthur.iakab
ee02cd6515 Merge inbound to mozilla-central a=merge 2019-03-25 17:53:27 +02:00
Glenn Watson
b625730d0b Bug 1538626 - Support fast path for clip-out rectangles in WR. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D24666

--HG--
extra : moz-landing-system : lando
2019-03-25 08:35:31 +00:00
Daniel Varga
b929b1b42d Bug 1473859 - Disable css-valuesandunits/unit-vh-vw-overflow-auto-ref.html on linux for frequent failures r=jmaher
Differential Revision: https://phabricator.services.mozilla.com/D24646

--HG--
extra : moz-landing-system : lando
2019-03-24 21:45:02 +00:00
Csoregi Natalia
56705678f5 Backed out changeset 54cb3fe39194 (bug 1536362) for spidermonkey bustage. 2019-03-24 07:43:42 +02:00
Edwin Gao
9bfb259a16 Bug 1536362, 1536363, 1536365, 1536355, 1537997, 1537993, 1538001, 1538005, 1538009, 1538012, 1538017, 1538022, 1534717 - add conditions to reftests, crashtests and wpt reftets that experience issues on windows10-aarch64 r=jmaher,gbrown
Disable or change the expected outcomes of:

- reftests
- jsreftests
- crashtest
- web-platform-reftests

Differential Revision: https://phabricator.services.mozilla.com/D24295

--HG--
extra : moz-landing-system : lando
2019-03-24 05:17:07 +00:00
Kartikaya Gupta
522737691b Bug 1536807 - Expand fuzziness annotation to include macOS. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D24183

--HG--
extra : moz-landing-system : lando
2019-03-21 20:41:14 +00:00
Miko Mynttinen
c33cbad71c Bug 1535040 - Exclude some SVG frames from DL building fast-path r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D23810

--HG--
extra : moz-landing-system : lando
2019-03-21 14:48:54 +00:00
Ting-Yu Lin
cd5719b6d9 Bug 1535200 Part 1 - In fieldset, make absolute positioned frames relative to multicol container, not the column content frames. r=mats
Per spec, "Note: Column boxes do not become the containing block for
elements with position: fixed or position: absolute. The containing
block is the multicol container, it being the principal box."

https://drafts.csswg.org/css-multicol-1/#the-multi-column-model

contentFrame and contentFrameTop are different only if fieldset has
multicol layout. In that case, contentFrameTop is nsColumnSetFrame (or
ColumnSetWrapperFrame after applying Part 2 with
layout.css.column-span.enabled=true).

Differential Revision: https://phabricator.services.mozilla.com/D23617

--HG--
extra : moz-landing-system : lando
2019-03-18 05:47:53 +00:00
Cameron McCormack
ca2fb0a357 Bug 282126 - Part 5: Tests. r=jfkthame,emilio
MozReview-Commit-ID: 1c0yMdUt7QG

Depends on D23426

Differential Revision: https://phabricator.services.mozilla.com/D23427

--HG--
extra : moz-landing-system : lando
2019-03-21 04:50:49 +00:00
Oana Pop Rus
b01d230f27 Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-03-25 12:04:50 +02:00
Mats Palmgren
ff5ea5f6ab Bug 205202 part 2 - [css-lists][css-pseudo] Add support for the ::marker pseudo element on list items. Test updates. r=emilio 2019-03-24 23:13:53 +01:00
Mats Palmgren
c750eaac07 Bug 288704 part 2 - [css-lists] Implement display:list-item counters using a built-in 'list-item' CSS counter. r=emilio 2019-03-24 23:13:52 +01:00
Andreea Pavel
69f980ffee Backed out 3 changesets (bug 1535507) wr failures e.g. line_1_wrapped_cue_grow_downwards.html on a CLOSED TREE
Backed out changeset 458563d6a69e (bug 1535507)
Backed out changeset 48726c586c4f (bug 1535507)
Backed out changeset 74d9f16af0bf (bug 1535507)
2019-03-20 03:32:51 +02:00
Matt Woodrow
244c79d92a Bug 1535507 - Assume that we have an empty display list building override rect for frames that support it, even if an explicit one isn't present. r=miko
If the frame supports it (stacking context + containing block for fixed), and a descendant was
modified, we would have created an override dirty region with just the area of that descendant.
In the case where no descendants are modified, we should use an empty rect, rather than
the area inherited from our parent.

This fixes the case where we forcibly build position:fixed frames (since they might async
scroll differently to the rest of the page), but we only need to build the container item,
not the whole frame subtree within it.

Added a test that shows us building the non-intersecting position:fixed, but not items within it.

Differential Revision: https://phabricator.services.mozilla.com/D23610

--HG--
extra : moz-landing-system : lando
2019-03-19 22:24:36 +00:00
Glenn Watson
9d856b1091 Bug 1535976 - Add a fast path for common rounded rect clips to WR. r=kvark
Most rounded rect clips in real content are (a) axis aligned and
(b) have uniform radii.

When these conditions are met, we can run a fast path for clip
mask generation that uses significantly fewer ALU shader ops.

This is not typically a bottleneck on desktop GPUs, but can have
a large performance impact on mobile GPUs (and perhaps low end
integrated GPUs).

The Mali shader analyzer reports the slow path for the rounded
rect clip shader to be 94 cycles per fragment, while the fast
path is 10 cycles.

Differential Revision: https://phabricator.services.mozilla.com/D23817

--HG--
extra : moz-landing-system : lando
2019-03-19 19:48:13 +00:00
Jonathan Kew
95ed8b4b59 Bug 1534693 - Bail out of font-family search in GlobalFontFallback once we've found a font with an exact style match. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D23162

--HG--
extra : moz-landing-system : lando
2019-03-19 10:49:53 +00:00
Bogdan Tara
84581c394f Backed out changeset 70440f88051f (bug 1535976) for /reftests/transform-3d/mask-layer* failures CLOSED TREE 2019-03-19 06:02:09 +02:00
Bogdan Tara
df46c029a4 Backed out 3 changesets (bug 1535507) for webvtt/rendering/cues-with-video/processing-model/selectors/cue* failures CLOSED TREE
Backed out changeset f7a60828b0ad (bug 1535507)
Backed out changeset a9c6e9e27b17 (bug 1535507)
Backed out changeset f2061889974a (bug 1535507)
2019-03-19 02:49:55 +02:00
Bogdan Tara
ddb22ded49 Backed out changeset c78ae1f1f538 (bug 1534693) for unexpected item fuzzy-if Android in reftest.list CLOSED TREE 2019-03-19 01:33:38 +02:00
Glenn Watson
7e08c517ab Bug 1535976 - Add a fast path for common rounded rect clips to WR. r=kvark
Most rounded rect clips in real content are (a) axis aligned and
(b) have uniform radii.

When these conditions are met, we can run a fast path for clip
mask generation that uses significantly fewer ALU shader ops.

This is not typically a bottleneck on desktop GPUs, but can have
a large performance impact on mobile GPUs (and perhaps low end
integrated GPUs).

The Mali shader analyzer reports the slow path for the rounded
rect clip shader to be 94 cycles per fragment, while the fast
path is 10 cycles.

Differential Revision: https://phabricator.services.mozilla.com/D23817

--HG--
extra : moz-landing-system : lando
2019-03-18 16:15:45 +00:00
Jonathan Kew
6746c8f733 Bug 1534693 - Bail out of font-family search in GlobalFontFallback once we've found a font with an exact style match. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D23162

--HG--
extra : moz-landing-system : lando
2019-03-18 16:28:19 +00:00