Commit Graph

68733 Commits

Author SHA1 Message Date
Ting-Yu Lin
bb8e9c6ca6 Bug 1547162 Part 1 - Remove unused variables and imports in import-test.py. r=dbaron
This is discovered by running "flake8 import-tests.py" locally.

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

--HG--
extra : moz-landing-system : lando
2019-05-09 23:30:17 +00:00
Masayuki Nakano
1fb845d129 Bug 1543315 - part 17: Mark PresShell::HandleDOMEventWithTarget() as MOZ_CAN_RUN_SCRIPT r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D30494

--HG--
extra : moz-landing-system : lando
2019-05-09 20:21:28 +00:00
Narcis Beleuzu
f533451f22 Merge inbound to mozilla-central. a=merge 2019-05-10 00:42:34 +03:00
Emilio Cobos Álvarez
f65bcfba56 Bug 1549559 - Add bindings for ArcSlice and ThinArc, and use them to reduce copies of SVG path data. r=heycam
As I said over bug 1549593, the eventual goal is to use ArcSlice in all
inherited properties. But this seemed like a good first candidate that doesn't
require me to move around a lot more code, since we were already using cbindgen
for the path commands.

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

--HG--
extra : moz-landing-system : lando
2019-05-09 12:43:19 +00:00
Emilio Cobos Álvarez
38065025d9 Bug 1548691 - Use the owned slice type for basic shape polygon coordinates. r=TYLin,heycam
This enables destructors for tagged unions in cbindgen, implemented in:

 * https://github.com/eqrion/cbindgen/pull/333

Which allow us to properly generate a destructor for the cbindgen-generated
StyleBasicShape (which now contains an OwnedSlice).

For now, we still use the glue code to go from Box<BasicShape> to
UniquePtr<BasicShape>. But that will change in the future when we generate even
more stuff and remove all the glue.

I could add support for copy-constructor generation to cbindgen for tagged
enums, but I'm not sure if it'll end up being needed, and copy-constructing
unions in C++ is always very tricky.

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

--HG--
extra : moz-landing-system : lando
2019-05-09 11:24:57 +00:00
Emilio Cobos Álvarez
23b7a280bf Bug 1545823 - Implement non-standard CSSStyleSheet.rules, CSSStyleSheet.addRule and CSSStyleSheet.removeRule. r=bzbarsky
It's not worth dying on this hill. Both Blink and WebKit pass the tests.

(Well, WebKit actually fails one of the latest ones I wrote, cssRules and rules
are not the same JS object, WebKit returns a new rule list. I'll file)

Spec PR in https://github.com/w3c/csswg-drafts/pull/3900.

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

--HG--
extra : moz-landing-system : lando
2019-05-09 12:32:52 +00:00
Jonathan Kew
e6aa378ae6 Bug 1545177 - Add crashtest. r=heycam
Depends on D27980

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

--HG--
extra : moz-landing-system : lando
2019-05-09 05:15:50 +00:00
Jonathan Kew
c8c951fbbe Bug 1545177 - If descriptors of a FontFace are modified after creation, update the associated font entry so that face selection will respect the new values, and mark font sets as dirty. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D27980

--HG--
extra : moz-landing-system : lando
2019-05-09 09:43:42 +00:00
Noemi Erli
34f9686f88 Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-05-09 18:37:16 +03:00
Cameron McCormack
d4d63edb8f Bug 1133175 - Remove SVGTests.hasExtension. r=bz,longsonr 2019-05-09 14:39:28 +10:00
Daniel Holbert
d4b5b44718 Bug 1548985: Don't let 'contain:size' suppress the intrinsic size of document-root SVG elements. r=TYLin
Differential Revision: https://phabricator.services.mozilla.com/D30259

--HG--
extra : moz-landing-system : lando
2019-05-08 23:05:04 +00:00
Oana Pop Rus
443bc6002b Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-05-09 00:58:43 +03:00
Mike Conley
f6abfd1e36 Bug 1550157 - Set a pref if the user profile is using a userChrome.css or userContent.css file. r=emilio
This is in preparation to disable (but not remove) support for these customizations
by default. We want to avoid scanning for these files on start-up, but also don't want
to make our users jump through a pref-flipping hoop to get their customizations back.

So we'll detect those files and flip the pref for this release. For the next release,
we'll not load those files unless the pref is flipped.

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

--HG--
extra : moz-landing-system : lando
2019-05-08 20:50:57 +00:00
Artur Signell
97f51aaa75 dragndrop: Allow drag'n'drop to start from elements inside a shadow root (Bug 1521471) r=emilio
Before this change, only elements inside the shadow root tree were scanned for the
draggable=true attribute. We now check the flattened tree instead so an element
inside a shadow root can start a drag for an element containing the shadow root.

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

--HG--
extra : moz-landing-system : lando
2019-05-08 18:30:45 +00:00
Miko Mynttinen
e74a435226 Bug 1549860 - Make display item merging nsDisplayWrapList specific operation r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D30283

--HG--
extra : moz-landing-system : lando
2019-05-08 15:51:23 +00:00
Jonathan Kew
fabb0dc4d5 Bug 1549728 - Flush line-breaker whenever the word-break property changes. r=emilio
The patch in bug 1507744 was not sufficient by itself, as the line-breaker could still accumulate a single "current word" across a text-run boundary, and then a single word-break value would be applied to it. We need to flush the line-breaker when word-break changes, so that each part of the word will have break opportunities set according to the appropriate value.

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

--HG--
extra : moz-landing-system : lando
2019-05-08 15:09:44 +00:00
Miko Mynttinen
1ad7ab6372 Bug 1549751 - Part 3: Use nsPaintedDisplayItem in WR and FLB r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D30226

--HG--
extra : moz-landing-system : lando
2019-05-08 13:50:09 +00:00
Miko Mynttinen
2c5cb1519c Bug 1549751 - Part 2: Add nsPaintedDisplayItem r=mattwoodrow
Move ApplyOpacity(), CanApplyOpacity(), Paint() and PaintWithClip() methods to nsPaintedDisplayItem

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

--HG--
extra : moz-landing-system : lando
2019-05-08 13:49:56 +00:00
Miko Mynttinen
d31f4467e4 Bug 1549751 - Part 1: Add nsDisplayList::Iterator r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D30224

--HG--
extra : moz-landing-system : lando
2019-05-08 14:11:40 +00:00
Ting-Yu Lin
62831385c7 Bug 1494100 Part 3 - Implement "contain:size" for ColumnSetWrapperFrame. r=dholbert
Add multicol-width-004.html and multicol-width-005.html to test "width:
min-content" and "width: max-content" with column-span:all children.
There's no size containment in these tests.

Note it may be worth to reuse nsBlockFrame's mCachedMinISize and
mCachedPrefISize to cache intrinsic size for ColumnSetWrapperFrame, but
this can be done separately.

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

--HG--
extra : moz-landing-system : lando
2019-05-08 22:58:39 +00:00
Ting-Yu Lin
2598c03a8b Bug 1494100 Part 2 - Check column-span pref before checking the size containment in nsColumnSetFrame. r=dholbert
If column-span is enabled, nsColumnSetFrame becomes an inner frame under
ColumnSetWrapperFrame, and that outer frame is then where we should be
handling size containment.

This patch doesn't change the logic but make the logic easier to
simplify once we start eliminating column-span pref.

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

--HG--
extra : moz-landing-system : lando
2019-05-08 22:49:40 +00:00
Ting-Yu Lin
1dc9d49936 Bug 1494100 Part 1 - Create ColumnUtils, and extract utility functions in nsColumnSetFrame into it. r=dholbert
The functions move to ColumnUtils will be used by ColumnSetWrapperFrame
to implement GetPrefISize() and GetMinISize().

Also, I verify locally that non-unified build is still working by
s/UNIFIED_SOURCES/SOURCES/ in layout/generic/moz.build.

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

--HG--
extra : moz-landing-system : lando
2019-05-08 22:49:31 +00:00
Cameron McCormack
f5b7d1380b Bug 866102 - Implement -webkit-line-clamp. r=mats,emilio,dholbert
Differential Revision: https://phabricator.services.mozilla.com/D20115

--HG--
extra : moz-landing-system : lando
2019-05-09 02:32:30 +00:00
Ting-Yu Lin
44b91cdf58 Bug 1548118 Part 4 - Always mark inner ColumnSetWrapper's children dirty before reflowing it if the outer ColumnSetWrapper is balancing. r=dbaron
ColumnSetFrame always tries to reflow column content regardless of it's
dirtiness. Making ColumnSetWrapperFrame's children dirty can have the
same effect.

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

--HG--
extra : moz-landing-system : lando
2019-05-08 03:12:18 +00:00
Ting-Yu Lin
1bfc721a99 Bug 1548118 Part 3 - Remove margin-bottom from column-balancing-nested-001.html and its reference. r=dbaron
Per bug 1487927, margin-bottom value is not always rendered as expected
with our column balancing algorithm. I'd like to remove it from
column-balancing-nested-001.html, and add <br> to separate each cases.

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

--HG--
extra : moz-landing-system : lando
2019-05-08 03:12:18 +00:00
Ting-Yu Lin
c52b56e4f0 Bug 1548118 Part 2 - Extract computing column balancing depth logic to a function. r=dbaron
Differential Revision: https://phabricator.services.mozilla.com/D29434

--HG--
extra : moz-landing-system : lando
2019-05-08 03:12:05 +00:00
Ting-Yu Lin
1582e78c5d Bug 1548118 Part 1 - Advance the column count at the end of the while loop. r=dbaron
We use `columnCount == aConfig.mBalanceColCount - 1` in other places to
determine if we are at the last column. Advancing the column count at
the end of the loop make the condition consistent.

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

--HG--
extra : moz-landing-system : lando
2019-05-08 03:09:19 +00:00
Emilio Cobos Álvarez
98b4f62a61 Bug 1549691 - nsLayoutUtils::GetRealPrimaryFrameFor makes no sense. r=jwatt
The primary frame is always the out of flow frame.

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

--HG--
extra : moz-landing-system : lando
2019-05-07 17:04:36 +00:00
Alexis Beingessner
0feadff33f Bug 1545768 - Re-enable good text bounds for webrender. r=kats
This just reverts commit 580a7e38c60491123f3e7bba82904008ab0262d1.

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

--HG--
extra : moz-landing-system : lando
2019-05-07 11:20:34 +00:00
Jonathan Kew
6ca164fa73 Bug 1507744 - Respect word-break value set on an inline element. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D30174

--HG--
extra : moz-landing-system : lando
2019-05-07 09:47:52 +00:00
Martin Stransky
89dd37e531 Bug 1539471 - [wayland] Track active popup windows on Wayland and use dynamic popup hierarchy, r=ashie
In order to show all popups on Wayland we need to set popup parent runtime for popups which don't have
fixed parent. For instance popup menus (fired after right button mouse click) can be issued on top of another popup
and we need to follow that connection on Wayland.

We track all open (active) popups to:

- close all visible tooltip windows when we're going to open another tooltip
- close concurrent popup on the same level when a new one is about to open
- get latest active popup as a parent for a new tooltip windows
- get latest active popup as a parent for a new popup menu without fixed parent

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

--HG--
extra : moz-landing-system : lando
2019-05-07 11:28:04 +00:00
Botond Ballo
65317978a2 Bug 1516722 - Update usage notes for nsIPresShell::ScrollToVisual(). r=kats
Differential Revision: https://phabricator.services.mozilla.com/D30106

--HG--
extra : moz-landing-system : lando
2019-05-07 03:04:06 +00:00
Botond Ballo
5101ae966a Bug 1516722 - Don't let ScrollToVisual clobber further layout scrolling in the same transaction. r=kats
Test coverage for this is provided in the web platform test
html/browsers/browsing-the-web/history-traversal/persisted-user-state-restoration/scroll-restoration-fragment-scrolling-samedoc.html.

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

--HG--
extra : moz-landing-system : lando
2019-05-07 03:03:56 +00:00
Botond Ballo
bdf500fe17 Bug 1516722 - Also scroll the visual viewport in ScrollToShowRect() if necessary. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D29079

--HG--
extra : moz-landing-system : lando
2019-05-07 03:03:34 +00:00
Lee Salzman
0037d62d7b Bug 1414961 - enable WR dual-source blending by default. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D30107

--HG--
extra : moz-landing-system : lando
2019-05-07 02:30:16 +00:00
arthur.iakab
e044816b6c Backed out 3 changesets (bug 1548118) for causing reftest failures on column-balancing-nested-001.html CLOSED TREE
Backed out changeset 516cc2c504f5 (bug 1548118)
Backed out changeset 40a074be8bf0 (bug 1548118)
Backed out changeset f3821529e276 (bug 1548118)
2019-05-07 05:41:24 +03:00
Ting-Yu Lin
0c3d6cd3a5 Bug 1548118 Part 3 - Always mark inner ColumnSetWrapper's children dirty before reflowing it if the outer ColumnSetWrapper is balancing. r=dbaron
ColumnSetFrame always tries to reflow column content regardless of it's
dirtiness. Making ColumnSetWrapperFrame's children dirty can have the
same effect.

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

--HG--
extra : moz-landing-system : lando
2019-05-06 23:09:35 +00:00
Ting-Yu Lin
7c9e81378c Bug 1548118 Part 2 - Extract computing column balancing depth logic to a function. r=dbaron
Differential Revision: https://phabricator.services.mozilla.com/D29434

--HG--
extra : moz-landing-system : lando
2019-05-03 19:25:57 +00:00
Ting-Yu Lin
1719001748 Bug 1548118 Part 1 - Advance the column count at the end of the while loop. r=dbaron
We use `columnCount == aConfig.mBalanceColCount - 1` in other places to
determine if we are at the last column. Advancing the column count at
the end of the loop make the condition consistent.

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

--HG--
extra : moz-landing-system : lando
2019-05-03 19:24:03 +00:00
Oana Pop Rus
251b4874dc Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-05-07 01:33:06 +03:00
Oana Pop Rus
65399363fb Merge inbound to mozilla-central. a=merge 2019-05-07 00:45:24 +03:00
Matt Woodrow
e78cff4176 Bug 1548483 - Don't assert that we have an invalidated frame when we encouter a new displayport, since it can have changed on an earlier paint if we didn't have display items. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D29975

--HG--
extra : moz-landing-system : lando
2019-05-06 09:13:00 +00:00
Kartikaya Gupta
c739ca6793 Bug 1062609 - Make scroll-behaviour test work with APZ enabled. r=botond
The test itself is reasonable, except that it reads scroll positions
from the main thread. With APZ enabled we need to flush any pending APZ
repaints before reading these scroll positions. So changing the
waitForAllPaints to the APZ-flushing variant makes that happen, and the
test passes.

Depends on D29921

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

--HG--
extra : moz-landing-system : lando
2019-05-06 17:50:14 +00:00
Miko Mynttinen
4818bf20d6 Bug 1546955 - Part 2: Make all display item constructors take nsDisplayListBuilder and frame as the first two parameters r=mattwoodrow
Depends on D28844

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

--HG--
extra : moz-landing-system : lando
2019-05-05 21:45:31 +00:00
Miko Mynttinen
1d36aadb94 Bug 1546955 - Part 1: Invoke display item copy-constructors through MakeClone() r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D28844

--HG--
extra : moz-landing-system : lando
2019-05-05 21:05:33 +00:00
Masayuki Nakano
41c520d31f Bug 1543315 - part 16: Mark PresShell::HandleEventWithTarget() as MOZ_CAN_RUN_SCRIPT r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D30011

--HG--
extra : moz-landing-system : lando
2019-05-06 13:15:05 +00:00
Masayuki Nakano
780b285e68 Bug 1543315 - part 15: Mark PresShell::ScrollFrameRectIntoView() as MOZ_CAN_RUN_SCRIPT r=smaug
Unfortunately, `EventChainVisitor` does not grab the `nsPresContext` with
`RefPtr` by itself.  Therefore, there is no guarantee of the lifetime without
checking the origin when its subclasses are instantiated.  This patch changes
it and subclasses to `MOZ_STACK_CLASS` since only `EventDispatcher::Dispatch()`
creates them in the stack with given `nsPresContext`.  Additionally, it's
already been marked as MOZ_CAN_RUN_SCRIPT_BOUNDARY`.  Therefore, the
`nsPresContext` instance has already been guaranteed its lifetime by the
caller.  For making this fact stronger, this patch marks their constructors
as `MOZ_CAN_RUN_SCRIPT`.  Therefore, nobody can create those instances without
guaranteeing the lifetime of `nsPresContext` and `dom::Event`.  Note that
it may look like that `mPresContext` of `EventChainPostVisitor` is not
guaranteed.  However, `EventChainPreVisitor` which gives `nsPresContext` to it
is also a stack only class.  So, it won't be deleted before
`EventChainPostVisitor` instance.

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

--HG--
extra : moz-landing-system : lando
2019-05-06 13:57:46 +00:00
Masayuki Nakano
4fd67bb3f1 Bug 1543315 - part 14: Mark PresShell::WillPaintWindow() and PresShell::DidPaintWindow() as MOZ_CAN_RUN_SCRIPT r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D30009

--HG--
extra : moz-landing-system : lando
2019-05-06 13:01:48 +00:00
Masayuki Nakano
8d503c6d14 Bug 1543315 - part 13: Mark PresShell::Paint() as MOZ_CAN_RUN_SCRIPT r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D30008

--HG--
extra : moz-landing-system : lando
2019-05-06 13:25:35 +00:00
Kartikaya Gupta
46c4b1ff9e Bug 1524232 - Dispatch synthesized mousemoves to OOP iframes if that's where they land. r=tnikkel
Depends on D29731

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

--HG--
extra : moz-landing-system : lando
2019-05-02 19:57:16 +00:00