Commit Graph

66901 Commits

Author SHA1 Message Date
Margareta Eliza Balazs
ca776030e5 Merge inbound to mozilla-central. a=merge 2018-12-19 17:46:11 +02:00
Brian Hackett
490b175062 Bug 1044074 - Don't run resize or scroll events while documents have events suppressed, r=smaug.
--HG--
extra : rebase_source : 47b98b215d3131fa3e6e88948fdd67aaf41524a9
2018-12-18 15:38:45 -10:00
Ting-Yu Lin
6cf6eb81f5 Bug 1515192 - Replace handcrafted FrameChildListIDs class with EnumSet. r=mats
The following APIs are changed.
1. Contains() needs to become contains(). (EnumSet's methods have lowercase names.)
2. Use list constructor rather than "|" like a plain enum.
3. Use operator+= instead of operator|=.

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

--HG--
extra : moz-landing-system : lando
2018-12-19 00:50:09 +00:00
Bogdan Tara
91d742d138 Merge inbound to mozilla-central. a=merge 2018-12-19 06:50:57 +02:00
Ting-Yu Lin
45814e9ae8 Bug 1511535 - Add a crashtest that sets "column-span:all" to an element under "position:fixed" subtree. r=dbaron
The <iframe> in the test case is getting the "column-span:all" style,
but it's under a position:fixed frame subtree. After the patch in bug
1507244 landed, NS_FRAME_HAS_MULTI_COLUMN_ANCESTOR won't be added
incorrectly to the out-of-flow subtree.

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

--HG--
extra : moz-landing-system : lando
2018-12-15 00:33:52 +00:00
Boris Chiou
647706e4fd Bug 1322780 - Part 4: Add tests. r=dholbert
1. Test the most simple cases when we use max-content/min-content on
   width/height/block-size.
   * block-size-with-min-or-max-content-1a.html
   * block-size-with-min-or-max-content-1b.html
2. Test base cases when we use max-content/min-content on
   width/height/block-size inside the table element.
   * block-size-with-min-or-max-content-table-1a.html
   * block-size-with-min-or-max-content-table-1b.html
3. For {horizontal|vertical} writing mode, we use max-content/min-content on
   {min-|max-}{height|width} and {min-|max-}block-size on the inner element.
   * hori-block-size-small-or-larger-than-container-with-min-or-max-content-1.html
   * vert-block-size-small-or-larger-than-container-with-min-or-max-content-1.html
4. For {horizontal|vertical} writing mode, we use max-content/min-content on
   {min-|max-}{height|width} on the outer element (i.e. the container).
   * hori-block-size-small-or-larger-than-container-with-min-or-max-content-2a.html
   * vert-block-size-small-or-larger-than-container-with-min-or-max-content-2a.html
5. For {horizontal|vertical} writing mode, we use max-content/min-content on
   {min-|max-}block-size on the outer element (i.e. the container).
   * hori-block-size-small-or-larger-than-container-with-min-or-max-content-2b.html
   * vert-block-size-small-or-larger-than-container-with-min-or-max-content-2b.html

Depends on D14320

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

--HG--
extra : moz-landing-system : lando
2018-12-18 18:47:41 +00:00
Boris Chiou
5c91563dc1 Bug 1322780 - Part 3: Let logical height, block-size, accept keywords. r=emilio
We should let block-size/min-block-size/max-block-size accept keywords as the
initial value, just like width in vertical writing mode or height in horizontal
writing mode.

Depends on D7536

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

--HG--
extra : moz-landing-system : lando
2018-12-18 18:47:39 +00:00
Boris Chiou
c35f47093e Bug 1322780 - Part 2: Support unprefixed min-content and max-content. r=mats,emilio
Support unprefixed min-content and max-content and treat the prefixed
version as aliases for
1. width, min-width, max-width if inline-axis is horizontal, and
2. height, min-height, max-height if inline-axis is vertical, and
3. inline-size, min-inline-size, max-inline-size, and
4. flex-basis.

Besides, update the test cases to use unprefixed max-content and
min-content.

Depends on D7535

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

--HG--
extra : moz-landing-system : lando
2018-12-18 18:47:37 +00:00
Boris Chiou
17c2c5c3c4 Bug 1322780 - Part 1: Use cbindgen for ExtremumLength. r=emilio
ExtremumLength is the keyword type for css sizing properties, so we
could use cbindgen.

In Gecko, we use nsStyleCoord to store the sizing properties, and use
integer values to check the enum values, so I keep the macros in nsStyleConsts.
Even though we need to convert the enum type into integer, we still have
benefits to reduce the complexity of converting Rust into C++, and leave
the simplified mappings in C++ for better readability.

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

--HG--
extra : moz-landing-system : lando
2018-12-18 18:47:35 +00:00
Cameron McCormack
59475d7fc5 Bug 1512597 - Resolve currentcolor in fill and stroke against visited-dependent color r=xidorn
Differential Revision: https://phabricator.services.mozilla.com/D14706

--HG--
extra : moz-landing-system : lando
2018-12-18 09:39:07 +00:00
Ting-Yu Lin
1e0598caea Bug 1507244 Part 2 - Suppress column-span descendants under a new block formatting context. r=dbaron
Bug 1506163 fixed only part of the issue. There are more types of frames
such as table, grid, flex, etc. that create their own block formatting
context.

Instead of propagating NS_FRAME_HAS_MULTI_COLUMN_ANCESTOR to the
children, we explicit carry the bit over to block and inline frames by
checking that their parent doesn't suppress column-span descendants.

Also, remove the unused "onload" from <body> in the tests.

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

--HG--
extra : moz-landing-system : lando
2018-12-18 00:40:58 +00:00
Ting-Yu Lin
122e7483c6 Bug 1507244 Part 1 - Add block formatting context bits for column-span in nsBlockFrame::Init(). r=dbaron
That's the common place where the bits are added.

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

--HG--
extra : moz-landing-system : lando
2018-12-17 18:41:01 +00:00
Margareta Eliza Balazs
a5ee709df7 Backed out changeset 90db69624281 (bug 1495962) for reftest failures in reftests/position-sticky/nested-sticky-2.html DONTBUILD 2018-12-18 11:41:34 +02:00
Kartikaya Gupta
66e5cee8aa Bug 1495962 - Add reftests for nested sticky-positioning r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D14764

--HG--
extra : moz-landing-system : lando
2018-12-18 03:07:36 +00:00
Hiroyuki Ikezoe
f0fe14fe8d Bug 1514679 - Drop aFirstPass from ReflowScrolledFrame. r=botond
It hasn't been used since bug 300030.

Depends on D14715

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

--HG--
extra : moz-landing-system : lando
2018-12-17 21:54:41 +00:00
Hiroyuki Ikezoe
d864a9f8f1 Bug 1514679 - Move vScrollbarActualWidth inside the if block where the value is used. r=botond
Depends on D14714

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

--HG--
extra : moz-landing-system : lando
2018-12-17 21:54:24 +00:00
Hiroyuki Ikezoe
0a0f595df0 Bug 1514679 - Use layers::ScrollDirection instead of boolean. r=botond
Depends on D14713

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

--HG--
extra : moz-landing-system : lando
2018-12-17 21:54:11 +00:00
Hiroyuki Ikezoe
f46451eef5 Bug 1514679 - Drop aVertical from GetScrollbarMetrics. r=botond
The argument has never been used since the function the function was introduced
in bug 240276.

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

--HG--
extra : moz-landing-system : lando
2018-12-17 21:53:59 +00:00
Julian Descottes
e046e9a177 Bug 1502346 - Retrieve ::slotted rules in InspectorUtils getCSSStyleRules;r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D14759

--HG--
extra : moz-landing-system : lando
2018-12-17 21:33:40 +00:00
Jonathan Kingston
943bc1976a Bug 903372 - Removal of xml:base. r=baku
Differential Revision: https://phabricator.services.mozilla.com/D13457
2018-12-13 15:16:52 +00:00
Mark Banner
8fc9eab7b3 Bug 1503674 - Remove now unused nsIScriptableUnescapeHTML.idl. r=hsivonen
Differential Revision: https://phabricator.services.mozilla.com/D14680

--HG--
extra : moz-landing-system : lando
2018-12-17 09:33:28 +00:00
Cameron McCormack
e8db2c5f88 Bug 1194856 - Remove UA style sheet load crash report annotations r=gsvelto,dbaron
This backs out the main patch landed earlier in bug 1194856 and the
patch from bug 1225004.

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

--HG--
extra : moz-landing-system : lando
2018-12-15 00:02:56 +00:00
Cosmin Sabou
00b9cd5e1e Merge mozilla-central to autoland. 2018-12-17 02:08:52 +02:00
Cosmin Sabou
b9bad8ace2 Merge mozilla-inbound to mozilla-central. a=merge 2018-12-17 02:01:29 +02:00
Matt Woodrow
f278a7e08c Bug 1500864 - Cull items within opacity:0 containers when merging with retained display lists. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D14304

--HG--
extra : moz-landing-system : lando
2018-12-16 23:35:42 +00:00
Matt Woodrow
f0ee7a9279 Bug 1500864 - Don't record a display list mutation based on the partial build rect, rely on comparisons during merging. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D14303

--HG--
extra : moz-landing-system : lando
2018-12-16 23:34:20 +00:00
Emilio Cobos Álvarez
7204b38327 Bug 1514338 - Remove unneeded special case in nsHTMLButtonControlFrame. r=bzbarsky
This is a followup to bug 1089326.

The other kind of elements other than <button> that use this frame are
input[type="reset|submit|button"], via nsGfxButtonControlFrame. And that frame
is a leaf, so it can only contain anonymous content (which is chromeonly
content and thus doesn't show up in event.target and co.).

This changes behavior for event.originalTarget, I suppose, but that's what we
do elsewhere as well, and that's a Gecko-specific thing.

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

--HG--
extra : moz-landing-system : lando
2018-12-16 22:17:44 +00:00
Ryan VanderMeulen
6878dab6ea Merge m-c to autoland. a=merge 2018-12-16 13:17:34 -05:00
Ryan VanderMeulen
c105f9ddd8 Backed out changesets b232989d707c and 551e3cbe82ba (bug 1500864) for causing topcrash bug 1514528. 2018-12-16 13:11:32 -05:00
Emilio Cobos Álvarez
a8df58f265 Bug 1514086 - The 'all' property is not animatable. r=hiro
Since it allows to animate display, which is not good.

This is a regression from:

  https://hg.mozilla.org/mozilla-central/rev/6884ba750aa3

Actually I wonder if the logic shouldn't be the other way around, i.e., a
shorthand is animatable if all the longhands are, not if just one.

In any case this rolls back to the previous behavior, should we do that, it
should be another bug.

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

--HG--
extra : moz-landing-system : lando
2018-12-15 22:48:37 +00:00
Timothy Guan-tin Chien
3913ded230 Bug 1510848 - Do not unattach UA Widget Shadow Root if the element is already re-attached to the tree r=emilio,smaug
This patch moves all UA Widget calls to helper functions in Element.cpp. The helper function AttachAndSetUAShadowRoot sets the shadow root in a runnable, so that it is in the same order of NotifyUAWidget* runnables.

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

--HG--
extra : moz-landing-system : lando
2018-12-15 02:48:46 +00:00
Matt Woodrow
a3aee981a7 Bug 1500864 - Cull items within opacity:0 containers when merging with retained display lists. r=mstange
Depends on D14303

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

--HG--
extra : moz-landing-system : lando
2018-12-14 19:46:51 +00:00
Matt Woodrow
850a52b360 Bug 1500864 - Don't record a display list mutation based on the partial build rect, rely on comparisons during merging. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D14303

--HG--
extra : moz-landing-system : lando
2018-12-14 19:31:59 +00:00
Matt Woodrow
35037187d0 Bug 1493353 - Clip TextDrawTarget to the visible rect, and avoid emitting display items that are outside the clipped area. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D14367

--HG--
extra : moz-landing-system : lando
2018-12-14 22:30:08 +00:00
Daniel Holbert
7258ebe69e Bug 1514309 part 2: Remove C++ serialization code for CSS {align,justify}-{content,items,self} properties. r=emilio
(Also remove stale decl for DoGetOverflowY, which cleanup_computed_getters.py
found for me.)

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

--HG--
extra : moz-landing-system : lando
2018-12-14 21:27:18 +00:00
Daniel Holbert
38e7aed189 Bug 1514309 part 1: Include the 'unsafe' keyword in serializations of css-align properties. r=emilio
Previously we'd omit it since it was merely an explicit way of requesting the
default behavior.  But the spec has changed such that it's not necessarily
equivalent to the default anymore:
https://drafts.csswg.org/css-align/#overflow-values

(Technically the behaviors are probably still equivalent in our implementation,
pending bug 1451380, but we don't have to publicize that via our
serialization.)

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

--HG--
extra : moz-landing-system : lando
2018-12-14 21:24:17 +00:00
Sylvestre Ledru
7cf43b9bc0 Bug 1513205 - Ride along, update some code to match the Google coding style r=Ehsan
# ignore-this-changeset

Depends on D14595

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

--HG--
extra : moz-landing-system : lando
2018-12-14 18:10:08 +00:00
Andrew Halberstadt
68040e3639 Bug 1513577 - [reftest] Add a selftest for the manifest parser, r=jmaher
This test would have caught the regression detected and fixed in bug 1512989.
It also sets up the scaffolding to add future tests to the reftest
manifestparser.

Depends on D14301

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

--HG--
rename : layout/reftests/reftest-sanity/scripttest-pass.html => layout/tools/reftest/selftest/files/scripttest-pass.html
extra : moz-landing-system : lando
2018-12-14 16:42:56 +00:00
Andrew Halberstadt
b44af2311d Bug 1513577 - [reftest] Refactor the runtests fixture to a more re-useable 'get_reftest' fixture, r=jmaher
This will make it easier for new tests to get a handle on a RefTest instance so
they can do a wider variety of unittesting.

Depends on D14300

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

--HG--
extra : moz-landing-system : lando
2018-12-14 16:42:56 +00:00
Andrew Halberstadt
70f627bfde Bug 1513577 - [reftest] Update selftests with new local specialpowers location, r=jmaher
This was a regression from bug 1497339 which changed the location of
specialpowers in the objdir. While the reftest harness itself was changed, the
selftests weren't updated.

Only the local case was affected since the location of specialpowers in the
tests.zip remained the same. This explains why this wasn't caught in CI.

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

--HG--
extra : moz-landing-system : lando
2018-12-14 16:42:56 +00:00
Andrea Marchesini
69926deea6 Bug 1511436 - Cleanup URL-Classifier code - part 1 - nsIUrlClassifierFeature, r=dimi
--HG--
rename : netwerk/base/nsChannelClassifier.cpp => netwerk/url-classifier/nsChannelClassifier.cpp
rename : netwerk/base/nsChannelClassifier.h => netwerk/url-classifier/nsChannelClassifier.h
rename : netwerk/base/nsIURIClassifier.idl => netwerk/url-classifier/nsIURIClassifier.idl
2018-12-14 12:40:16 +01:00
Ryan VanderMeulen
23a14652e3 Merge m-c to inbound. a=merge 2018-12-16 13:16:44 -05:00
Andrea Marchesini
9cc643f6d3 Bug 1513895 - Unify PopupBlocker algorithm in 1 single file, r=smaug 2018-12-16 10:21:16 +01:00
Ting-Yu Lin
df8e9a54fd Bug 1506306 - Fix <table> having "column-span:all" style. r=bzbarsky
The main style of <table> is set on the inner TableFrame, not the outer
TableWrapperFrame. Thus, we fail to spot the table as a column-span kid
in nsCSSFrameConstructor::ConstructionBlock().

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

--HG--
extra : moz-landing-system : lando
2018-12-13 22:43:01 +00:00
Bogdan Tara
4cbc39232e Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-12-14 00:52:36 +02:00
Bogdan Tara
b6a18773a4 Merge inbound to mozilla-central. a=merge 2018-12-14 00:42:20 +02:00
Daniel Holbert
fae5834855 Bug 1510369 part 3: Add about:config pref 'layout.dynamic-reflow-roots.enabled' (enabled by default). r=dbaron
Differential Revision: https://phabricator.services.mozilla.com/D13133

--HG--
extra : moz-landing-system : lando
2018-12-13 17:47:11 +00:00
Daniel Holbert
2a78d674bd Bug 1510369 part 2: Adjust logic in InitDynamicReflowRoot() to stop checking conditions once we've determined we can't be a dynamic reflow root. r=dbaron
This patch does not change behavior - it's purely an optimization to some
existing logic.

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

--HG--
extra : moz-landing-system : lando
2018-12-13 17:47:02 +00:00
Daniel Holbert
9b2496feff Bug 1510369 part 1: Make IsFixedPosContainingBlock assert that all fixed-pos CBs must also be abs-pos CBs. r=dbaron
Differential Revision: https://phabricator.services.mozilla.com/D13131

--HG--
extra : moz-landing-system : lando
2018-12-13 17:46:48 +00:00
Kartikaya Gupta
8493a7fb2c Bug 1508835 - Clean up redundant webrender fuzzy annotation. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D14475

--HG--
extra : moz-landing-system : lando
2018-12-13 18:24:56 +00:00