Commit Graph

14949 Commits

Author SHA1 Message Date
Brad Werth
9b1031c464 Bug 1265342 Part 7: Implement shape-margin for shape-outside: shape-box. r=dholbert
MozReview-Commit-ID: 67vq9Gcr8qJ

--HG--
extra : rebase_source : afea3fab0bfd0ad538ddc902f9a8ffedd4a65862
2018-02-26 14:47:31 -08:00
Brad Werth
8511677375 Bug 1265342 Part 6b: Implement shape-margin for shape-outside: inset, for general case of shape-margin > 0. r=dholbert
MozReview-Commit-ID: 4pjALPSIBhI

--HG--
extra : rebase_source : b8c065173e04033795baa67c4fcf8222103182cb
2018-04-17 11:39:50 -07:00
Brad Werth
c8f1b46489 Bug 1265342 Part 6a: Implement shape-margin for shape-outside: inset, for some special cases with shape-margin > 0. r=dholbert
MozReview-Commit-ID: AEOksiuM0GJ

--HG--
extra : rebase_source : edc6f6040760d3facb3a7f6bcdc39f1d8fa208f0
2018-04-13 11:29:14 -07:00
Brad Werth
b935ad1265 Bug 1265342 Part 5d: Move EllipseShapeInfo class definition ahead of RoundedBoxShapeInfo so it can be referenced by rounded boxes. r=dholbert
MozReview-Commit-ID: G8qdPlnh8kY

--HG--
extra : rebase_source : 2917054937f488c601394f1d244151c9c3df7596
2018-04-17 11:59:11 -07:00
Brad Werth
eb8a0661ae Bug 1265342 Part 5c: Add some asserts to ensure ellipse distance field index values are in-bounds. r=dholbert
MozReview-Commit-ID: CpuWWaLh1CX

--HG--
extra : rebase_source : 6db8ba9191f1211d8ea2435b23dc13caae39955c
2018-04-20 13:43:36 -07:00
Brad Werth
6c6be70823 Bug 1265342 Part 5b: Complete the implementation of shape-margin for ellipse (handling shape-margin: > 0). r=dholbert
MozReview-Commit-ID: CovCfk5ryEn

--HG--
extra : rebase_source : 4691876fd2afb2833ddf416821988f59abd4c019
2018-04-11 15:18:32 -07:00
Brad Werth
6c5a82a38c Bug 1265342 Part 5a: Implement shape-margin for shape-outside: circle and ellipse (ellipse only for shape-margin: 0). r=dholbert
MozReview-Commit-ID: HeipoUTkqUE

--HG--
extra : rebase_source : 21de8ff25a10ea8007a310e91254cf17346cdd3f
2018-02-26 13:13:03 -08:00
Brad Werth
104fcf3ad7 Bug 1265342 Part 4b: Add some logic and asserts to ensure distance field index values and image index values are in-bounds. r=dholbert
MozReview-Commit-ID: 1C9vB14Qhyj

--HG--
extra : rebase_source : 1f5d912deb27c4f1e2a65e609d6ebc825ab34790
2018-04-20 14:04:15 -07:00
Brad Werth
314184fbb8 Bug 1265342 Part 4a: Complete the implementation of shape-margin for shape-outside: image (handling shape-margin: > 0). r=dholbert
MozReview-Commit-ID: 4xqfqWB78Oh

--HG--
extra : rebase_source : 5ca9e80eb25b9100f7bcbc5a7936b3ec5ce3f1cd
2018-02-22 11:11:03 -08:00
Brad Werth
e53f7f51ac Bug 1265342 Part 3: Stub in shape-margin for shape-outside: image, by implementing only for shape-margin: 0. r=dholbert
MozReview-Commit-ID: 2gVRyQtd7Io

--HG--
extra : rebase_source : 1e3cd2e71d7dbb89db74c5ce8ac88695c70843a1
2018-03-12 17:04:34 -07:00
Brad Werth
eeb34f4713 Bug 1265342 Part 2b: Refactor interval creation for shape-outside:image. r=dholbert
MozReview-Commit-ID: LnzQPsSBVqY

--HG--
extra : rebase_source : 20ff59b099ae7e7f0f3e5207b017f919d5b6f661
2018-02-28 10:43:43 -08:00
Brad Werth
405f362460 Bug 1265342 Part 2a: Move interval binary search method into ShapeInfo. r=dholbert
MozReview-Commit-ID: BxJxIU0RVAo

--HG--
extra : rebase_source : c822c3fd56fe8fc11aeb7aab10afa440a2a53931
2018-04-11 14:05:06 -07:00
Jamie Nicol
e8077ba4d8 Bug 1449608 - Avoid calling ComputeScrollMetadata repeatedly for same scroll frame and clip. r=mstange
Currently in ContainerState::SetupScrollingMetadata we call
ComputeScrollMetadata for every layer and for each ASR in the layer's
clip chain. If there are many sibling layers with the same clip then
this is largely wasted work.

This change makes us cache the most recently calculated result, and
only recalculate if the ASR or clip is different.

There was a small portion of ComputeScrollMetadata that must actually
be executed for every layer and ASR in its clip chain. This has been moved
to a separate function, ClipLayerToDisplayPort, that is still called
every time.

MozReview-Commit-ID: 7Zzblmimtc5

--HG--
extra : rebase_source : 85ee310ceaaff5fa8a1ccb513ffaf90904ace19d
2018-04-19 14:48:04 +01:00
Margareta Eliza Balazs
551cdf87ce Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-04-24 14:52:40 +03:00
Margareta Eliza Balazs
36dec78aec Merge inbound to mozilla-central. a=merge
--HG--
rename : toolkit/mozapps/extensions/internal/XPIProviderUtils.js => toolkit/mozapps/extensions/internal/XPIDatabase.jsm
2018-04-24 12:42:08 +03:00
Bas Schouten
8338ab994b Bug 1387399: Add SIMD optimizations for methods used frequently in nsRect. r=jrmuizel
This improves the DisplayList Mutate Talos test by about 5% on windows, as well as numerous smaller improvements on DisplayList heavy tasks.

MozReview-Commit-ID: tlEtPjqWI4
2018-04-19 15:56:29 +02:00
Ciure Andrei
84bde96dc6 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-04-24 04:26:26 +03:00
Ciure Andrei
33e644e1da Merge inbound to mozilla-central. a=merge 2018-04-24 04:14:21 +03:00
Matt Woodrow
1c08a21338 Bug 1439809 - Add an index parameter to nsDisplayWrapList to prevent scrollbar frames from creating duplicates. r=mattwoodrow
MozReview-Commit-ID: 8somakqqA3P

--HG--
extra : rebase_source : 9d82377196b53c3df3f2bfd4683d8454b1a3fa86
2018-04-24 12:59:08 +12:00
Matt Woodrow
00069d57ec Bug 1452805 - Make sure we rebuild contents infront and behind stacking contexts if their size might have changed. r=miko
The test invalidates the z-index element, so that we do a partial build with just that and the DAG no longer knows the relative ordering between it and the other blue elements.
We then expand the size of the 'first' elements stacking context, and ensure that we provide enough intersecting items to know that we're on top of the z-index element.

MozReview-Commit-ID: KP7c3bnwfBd
* * *
[mq]: fix

MozReview-Commit-ID: EuraqvaUS35

--HG--
extra : rebase_source : 9e2e4f2dc661cc552891499a614d489625ea895d
2018-04-15 16:38:45 +12:00
Andreea Pavel
14cb4908a0 Backed out changeset b443e56d2f62 (bug 1449608) for build bustages on a CLOSED TREE 2018-04-24 00:16:58 +03:00
Alexis Beingessner
4303ce985c Bug 1403261 - enable native webrender handling of partial ligatures. r=jrmuizel,mstange
The clipping code uses gfxContext::GetClipExtents which calls gfxContext::GetDeviceOffset
and DrawTarget::GetSize. The former was previously not being intialized, while the latter
was explicitly unimplemented. This patch fixes both of those facts.

Otherwise, enabling this functionality has been made trivial by several upstream patches
in webrender (the most recent being glenn's work on unifying shadows which eliminated
the buggy text-shadow shader code that was blocking this).

MozReview-Commit-ID: B1AlG3o4XQS

--HG--
extra : rebase_source : 2043c9c781f507c5d02041420145b1a5c59c0bb2
2018-04-16 23:05:48 -04:00
Jamie Nicol
d361ce7995 Bug 1449608 - Avoid calling ComputeScrollMetadata repeatedly for same scroll frame and clip. r=mstange
Currently in ContainerState::SetupScrollingMetadata we call
ComputeScrollMetadata for every layer and for each ASR in the layer's
clip chain. If there are many sibling layers with the same clip then
this is largely wasted work.

This change makes us cache the most recently calculated result, and
only recalculate if the ASR or clip is different.

There was a small portion of ComputeScrollMetadata that must actually
be executed for every layer and ASR in its clip chain. This has been moved
to a separate function, ClipLayerToDisplayPort, that is still called
every time.

MozReview-Commit-ID: 7Zzblmimtc5

--HG--
extra : rebase_source : d39908b2be2565d22079b3e5e8df56316159a918
2018-04-19 14:48:04 +01:00
Daniel Holbert
d5c3e8dbab Bug 1455976: Give table wrapper boxes a special case during flex base size resolution, so that percent main-sizes can be respected. r=mats
MozReview-Commit-ID: GB3SCaj9cv1

--HG--
extra : rebase_source : 565a8fc3879d6b9dcc0f3f6a67e5b577a2dc50b9
2018-04-23 12:05:40 -07:00
Ciure Andrei
1940af33ec Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2018-04-24 04:29:20 +03:00
Mats Palmgren
8e30369644 Bug 1398482 part 2 - [css-grid][css-flexbox][css-multicol] Add 'row-gap' and 'gap' properties; make 'grid-[column|row]-gap' and 'grid-gap' alias the respective unprefixed properties (Gecko part). r=dholbert 2018-04-24 01:52:51 +02:00
Dorel Luca
65669dae30 Merge mozilla-inbound to mozilla-central. a=merge 2018-04-21 02:00:04 +03:00
Botond Ballo
f5c31308e4 Bug 1443424 - Only set eScrollbarThumb on a CompositorHitTestInfo item if the thumb is being layerized. r=kats
MozReview-Commit-ID: CvngEy9ZsUD

--HG--
extra : rebase_source : 0fa0e97368a9d37906f4bddf241f3034a3f80cdd
2018-04-17 18:58:42 -04:00
Cosmin Sabou
b9a82af44a Backed out 2 changesets (bug 1387399) for OSX reftests permafailures on attachment-local-positioning-2.html. a=backout
Backed out changeset b78a225fa8c9 (bug 1387399)
Backed out changeset 4beeacb75bf5 (bug 1387399)
2018-04-20 06:47:41 +03:00
Bas Schouten
0dee5c2745 Bug 1387399: Add SIMD optimizations for methods used frequently in nsRect. r=jrmuizel
This improves the DisplayList Mutate Talos test by about 5% on windows, as well as numerous smaller improvements on DisplayList heavy tasks.

MozReview-Commit-ID: tlEtPjqWI4
2018-04-19 15:56:29 +02:00
Jonathan Watt
156c4af1ec Bug 1436048: Use user defined types for font-stretch / font-style. r=jfkthame,jwatt
Co-authored-by: Emilio Cobos Álvarez <emilio@crisal.io>

MozReview-Commit-ID: 7ONYtICeAqb
2018-04-23 18:22:05 +02:00
Matt Woodrow
a6e9002c24 Bug 1406727 - Improve diagnostics in BuildDisplayList. r=froydnj
MozReview-Commit-ID: Ctb7HFxgPac

--HG--
extra : rebase_source : 696683a6a905e0f4862e0a7f8a9708c487e5248b
2018-02-06 12:21:31 +13:00
Daniel Holbert
acccfe6d00 Bug 1454822 part 2: Cache the results of nsFlexContainerFrame::GetMinISize/GetPrefISize. r=mats
Assuming we call MarkIntrinsicISizesDirty in the appropriate scenarios, this
patch shouldn't change behavior - it just caches these values so we don't
needlessly recalculate them.

MozReview-Commit-ID: 8QY4AZJXshy

--HG--
extra : rebase_source : a7c87b03ac8240ba71efd2198ce1976d96c91f64
2018-04-17 17:06:26 -07:00
Daniel Holbert
14267669bd Bug 1454822 part 1: Refactor nsFlexContainerFrame::GetMinISize/GetPrefISize to be implemented via a common helper function. r=mats
This patch does not change behavior; it just merges the implementations of
these two functions into a single common function.

MozReview-Commit-ID: BqsRt3p2NQT

--HG--
extra : rebase_source : e8792f2bed3fd0708ffb38b91cf15a78cb6fbd59
2018-04-17 17:06:23 -07:00
Brindusan Cristian
8bcf097e09 Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-04-17 13:10:25 +03:00
Daniel Zielas
aa51622886 Bug 1453469 - Remove nsDisplayOwnLayer::mScrollTarget. r=botond
MozReview-Commit-ID: 1LAWH96mm5m

--HG--
extra : rebase_source : fe2bf1d16dc1921057f718cd5f7dd00b11e566c5
extra : amend_source : 53a8a2c0cd03b94002ba0600859e6c18d3a466b6
2018-04-14 09:42:45 +02:00
Andrew McCreight
3f7472aec1 Bug 1449670, part 1 - Convert IsNodeOfType(nsINode::eTEXT) to IsText(). r=bz
This method is not a virtual call, and also looks nicer.

This patch was mostly generated by a Python script, but I manually
cleaned up the code in a few places where statements didn't need to be
split across multiple lines any more.

MozReview-Commit-ID: 8JExxqSRc59

--HG--
extra : rebase_source : df6330a89e8d65dfe7a6fda0c8cb9f9732302efc
2018-04-12 15:41:00 -07:00
Andreea Pavel
69ae5fe098 Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2018-04-14 00:58:36 +03:00
Andreea Pavel
01f50bc3d8 Merge mozilla-inbound to mozilla-central. a=merge 2018-04-14 00:56:30 +03:00
Jonathan Watt
1e7f76576a Bug 1436048 part 1 - Use a user defined type for font weight everywhere. r=jfkthame,emilio
--HG--
extra : rebase_source : 2e267ff99de6f52484e34ac15c39e5ca8b473394
2018-04-13 20:34:37 +01:00
Emilio Cobos Álvarez
9509cd7e32 Bug 1453789: Remove Element.createShadowRoot. r=smaug
MozReview-Commit-ID: Hgxbp1Icgvh
2018-04-13 20:51:55 +02:00
Sebastian Hengst
0819f35e51 Backed out 4 changesets (bug 525063) on request from Andi. a=backout
Backed out changeset 516c4fb1e4b8 (bug 525063)
Backed out changeset 6ff8aaef2866 (bug 525063)
Backed out changeset bf13e4103150 (bug 525063)
Backed out changeset d7d2f08e051c (bug 525063)
2018-04-13 16:01:28 +03:00
Daniel Holbert
26923e2e3b Bug 1374540 part 4: Change nsFrame::ComputeSize to treat used flex-basis:content as 'max-content'. r=mats
This brings us into alignment with the spec and makes us pass some web-platform
tests, along with the reftests that I've included for this bug.

MozReview-Commit-ID: KoKPi18svGE

--HG--
extra : rebase_source : f00dd814238afd4b09bdcb75b22ea249162252b8
2018-04-13 12:17:51 -07:00
Daniel Holbert
555deebbc9 Bug 1374540 part 3: Refactor nsFrame::ComputeSize methods to handle the two "used flex-basis of content" scenarios with a consistent codepath. r=mats
This patch doesn't change behavior.

It simply makes us share code/data for two different cases that both ended up
producing mainAxisCoord->GetUnit() == eStyleUnit_Auto.  Now, they'll *both* use
the same static nsStyleCoord to represent this "auto" value.

Originally, in one of these cases ("flex-basis:auto;[main-size-property]:auto),
we left the mainAxisCoord untouched. Now we'll point it at this dummy 'auto'
value. Either way we end up with mainAxisCoord->GetUnit() == eStyleUnit_Auto,
so the behavior doesn't change.

The next patch in this series will make further changes to one of these spots,
as noted in the "XXXdholbert" code-comment included here.

MozReview-Commit-ID: 5ClfbNHuKhO

--HG--
extra : rebase_source : 17efe1e9f721324d6182db654e601727c791800b
2018-04-13 12:17:51 -07:00
shindli
108a654fb8 Merge inbound to mozilla-central. a=merge 2018-04-12 02:45:34 +03:00
Tristan Bourvon
a3a77c0312 Bug 525063 - Initialize uninitialized class attributes in m-c. r=ehsan 2018-04-10 21:11:02 +02:00
Matt Woodrow
5f47a3aed8 Bug 1451971 - Rebuild the whole page when we have perspective or preserve-3d. r=miko
MozReview-Commit-ID: 2SkKvpdLWMi

--HG--
extra : rebase_source : 6b19d557a93fb3e0f2a2faf34f238b96c3e0f0bd
2018-04-11 21:49:30 +12:00
Ciure Andrei
3f4a118829 Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2018-04-11 12:00:35 +03:00
Ciure Andrei
873d562bc3 Backed out 8 changesets (bug 1451169) on request from njn a=backout
Backed out changeset b92f856e15a8 (bug 1451169)
Backed out changeset 348e825756fa (bug 1451169)
Backed out changeset 624d82428726 (bug 1451169)
Backed out changeset 4d51610ca08e (bug 1451169)
Backed out changeset bb76a9589717 (bug 1451169)
Backed out changeset c145fbd03947 (bug 1451169)
Backed out changeset 6d36289e0f54 (bug 1451169)
Backed out changeset 914fb7cd9fc3 (bug 1451169)

--HG--
extra : histedit_source : 94de6631919f895dec422bc0e564f5baf885ba4a%2C18f52c6c11d3064d3137a6847575effb7d407894
2018-04-11 11:22:05 +03:00
Nika Layzell
242c9ce313 Bug 1438026 - Part 3: Replace nsPresState with the new PresState type, r=baku 2018-04-10 17:49:44 -04:00