Commit Graph

56154 Commits

Author SHA1 Message Date
Xidorn Quan
e27d2e7dbe Bug 1343964 part 8 - Update mochitest expectation. r=xidorn
MozReview-Commit-ID: 36zfle7hfOG

--HG--
extra : rebase_source : cdbdf68bcf7c0b232a7b86862ff97d9aab4ca94b
2017-04-04 17:16:45 +10:00
Xidorn Quan
987754e4dc Bug 1343964 part 7 - Use URLExtraData for declaration modification directly for Servo backend. r=heycam
MozReview-Commit-ID: 78JRYKk9hgV

--HG--
extra : rebase_source : 1a86db507451637379e35ea17d9dbd88e8dc6902
2017-04-04 16:09:20 +10:00
Xidorn Quan
3d5b648721 Bug 1343964 part 6 - Add a const Rule() method for ServoStyleRule. r=heycam
MozReview-Commit-ID: 1rvWrN3Biut

--HG--
extra : rebase_source : 174ccdeb847c8f3f0807690a0ab0fa2bc949a2f2
2017-04-04 16:07:44 +10:00
Xidorn Quan
04c1637bb1 Bug 1343964 part 5 - Factor out common part of nsDOMCSSDeclaration::Parse{,Custom}PropertyValue. r=heycam
MozReview-Commit-ID: 6IX8sWF4Vhn

--HG--
extra : rebase_source : 197c9ccf51e8bb86f7335a5a72b370c89a23d7ea
2017-04-04 15:28:07 +10:00
Xidorn Quan
4400d347a2 Bug 1343964 part 3 - Have ServoStyleSheet own a URLExtraData. r=heycam
MozReview-Commit-ID: CQyvrVtl0hr

--HG--
extra : rebase_source : 547fce2e9118bf9d6714775df847e8236aec74b6
2017-04-04 13:41:44 +10:00
Xidorn Quan
514feab11a Bug 1343964 part 2 - Move dummy url data to be a static member of URLExtraData. r=heycam
MozReview-Commit-ID: I6pc9WmrLW0

--HG--
extra : rebase_source : 9af2e97d22c58f480603eef97a833539bf69ced9
2017-04-04 13:21:16 +10:00
Xidorn Quan
2df49dbac2 Bug 1343964 part 1 - Move URLExtraData into its own header. r=heycam
This patch does the following in addition to a simple move:
* change the type of the pointers from RefPtr to nsCOMPtr
* move it from mozilla::css namespace to mozilla

MozReview-Commit-ID: 72MYq6kWm4s

--HG--
extra : rebase_source : 400fe0d7cc422f22592c302cfd4e457830b77e3e
2017-04-04 10:04:13 +10:00
Markus Stange
6bc4c8de32 Bug 1354255 - Remove ElementRestyler::ComputeStyleChangeFor profiler instrumentation due to overhead. r=Ehsan
This only has overhead if the profiler is running, but it means that it has
the potential to skew restyle times in profiles.
We haven't measured the overhead of this, but it's probably non-zero, and at
the moment our profiling efforts are more focused on getting accurate times
than on getting useful information about restyling cost sources.

MozReview-Commit-ID: 3KmiiyGrxZH

--HG--
extra : rebase_source : df7047f1af5f36f7a1b3a18498d8eb5508ee0b93
2017-04-06 17:20:40 -04:00
Wes Kocher
4778bff897 Merge m-c to autoland, a=merge 2017-04-06 15:10:53 -07:00
Masatoshi Kimura
8f857ca1d0 Bug 1353493 - Cache the return value for nsIWidget::DefaultScaleOverride(). r=kanru
MozReview-Commit-ID: ExP179bxbHe

--HG--
extra : rebase_source : cf242fe02c009fb4f37028000f63c0c1774546cc
extra : intermediate-source : aa0b3009c855c71279f404fb211126ae8bb07b85
extra : source : 80abe5b0a796774e8aef7690e7c8c0be6892f4c1
2017-04-06 23:30:09 +09:00
Carsten "Tomcat" Book
7408344f87 Merge mozilla-central to mozilla-inbound 2017-04-06 13:10:09 +02:00
Carsten "Tomcat" Book
207b516e89 merge mozilla-inbound to mozilla-central a=merge 2017-04-06 12:50:50 +02:00
Daniel Holbert
600a5b4a75 Bug 812687 part 10: Skip new mochitest test_flexbox_focus_order.html on mac for now (pending a tweak to give it sane mac focus behavior in followup bug 812687).
MozReview-Commit-ID: 2u3HGdiuK8P
2017-04-05 21:50:26 -07:00
Boris Zbarsky
148f51a721 Bug 1351926. Set the resize flags to false at the beginning of InitResizeFlags, so stale values from an old (incorrect) computed bsize won't keep being propagated in cases when we SetComputedWidth or SetComputedHeight on the ReflowInput. r=dbaron
MozReview-Commit-ID: 56YFAw3KOmi
2017-04-05 23:07:40 -04:00
Daniel Holbert
6f23054538 Bug 812687 part 9: Add tests for "order" property's influence on list-numbering, baseline, and focus order in a flexbox. (no review, test-only)
MozReview-Commit-ID: EEkPlCgzknG

--HG--
rename : layout/reftests/w3c-css/submitted/flexbox/flexbox-baseline-multi-item-horiz-001.html => layout/reftests/w3c-css/submitted/flexbox/flexbox-baseline-multi-item-horiz-001a.html
rename : layout/reftests/w3c-css/submitted/flexbox/flexbox-baseline-multi-item-horiz-001.html => layout/reftests/w3c-css/submitted/flexbox/flexbox-baseline-multi-item-horiz-001b.html
rename : layout/reftests/w3c-css/submitted/flexbox/flexbox-baseline-multi-item-vert-001.html => layout/reftests/w3c-css/submitted/flexbox/flexbox-baseline-multi-item-vert-001a.html
rename : layout/reftests/w3c-css/submitted/flexbox/flexbox-baseline-multi-item-vert-001.html => layout/reftests/w3c-css/submitted/flexbox/flexbox-baseline-multi-item-vert-001b.html
2017-04-05 19:31:48 -07:00
Daniel Holbert
754dd1bf03 Bug 812687 part 8: Add a test for "order" on flex items with abspos siblings. r=mats
MozReview-Commit-ID: aCBQER5r2G

--HG--
rename : layout/style/test/test_flexbox_order.html => layout/style/test/test_flexbox_order_abspos.html
2017-04-05 19:31:48 -07:00
Daniel Holbert
7d9d8415dc Bug 812687 part 7: Minor cleanup in existing test_flexbox_order mochitests. (no review, test-only)
This patch:
 - does s/var/let/ to upgrade to modern JS best-practices.
 - Wraps some lines that are too long.
 - Changes loops to "for (let foo of [...])" rather than foreach+function-pointer.
 - Changes some copypasted cleanup code to use a loop instead (which will be especially useful in a forthcoming version of this test that'll add another thing to clean up).

MozReview-Commit-ID: DWK8jFbfqeB
2017-04-05 19:31:47 -07:00
Daniel Holbert
c05bf39d8c Bug 812687 part 6: Rename & invert polarity of a flexbox frame-state-bit, for consistency with grid. r=mats
This patch is just flipping some logic in a way that should produce the same
outcome, so it shouldn't affect behavior.

MozReview-Commit-ID: LM4HbJD3D9w
2017-04-05 19:31:47 -07:00
Daniel Holbert
17ef2998db Bug 812687 part 5: Adjust nsFlexContainerFrame to use CSSOrderAwareFrameIterator instead of reordering its child frame list. r=mats
This patch shouldn't change our layout order or paint order for flex items
(though it will change our behavior for the better when an abspos child is
present, as discussed in bug 1345873).

This patch *will* change the tab-index behavior of flex items. Previously, the
default tab order would match the visual order (i.e. it would respect "order"),
because it depends on the frame tree, and we sorted the frame tree by
"order". Now, the tab-index will come from the DOM order (the unmodified frame
tree), as the spec requires.

MozReview-Commit-ID: 9OsqQX1sEn3
2017-04-05 19:31:47 -07:00
Daniel Holbert
047c5e7b26 Bug 812687 part 4: Add an optional parameter which can make CSSOrderAwareFrameIterator use the legacy "box-ordinal-group" property. r=mats
This patch just adds an optional codepath that isn't taken yet, so it shouldn't
affect our behavior. (The next patch in the series will make use of this new
codepath.)

Note: the large code-comment that this patch adds is taken mostly-verbatim from
some nsFlexContainerFrame.cpp code. (The original copy will be removed by the
next patch in this series, when we switch to take advantage of this new
mechanism.)

MozReview-Commit-ID: 9pkJ346rrXg
2017-04-05 19:31:47 -07:00
Daniel Holbert
d6f3c58c61 Bug 812687 part 3: Move CSSOrderAwareFrameIterator code to its own .h/.cpp file. r=mats
This patch just moves code, so it should not affect our behavior at all.

MozReview-Commit-ID: 4yxSR5rWUV1
2017-04-05 19:31:47 -07:00
Daniel Holbert
9a4b6b6d74 Bug 812687 part 2: Rename GridItemCSSOrderIterator to CSSOrderAwareFrameIterator (& similar for its Reverse form). r=mats
This patch is purely type-renames, so it should not affect our behavior at all.

MozReview-Commit-ID: 51zRGFyVDtT
2017-04-05 19:31:47 -07:00
Daniel Holbert
db6436ab45 Bug 812687 part 1: Rename GridItemCSSOrderIteratorT to CSSOrderAwareFrameIteratorT, and drop "Grid" from its method names. r=mats
This patch is purely type-renames & method-renames, so it should not affect our
behavior at all.

MozReview-Commit-ID: 5N7zru0uPfD
2017-04-05 19:31:47 -07:00
Hiroyuki Ikezoe
862f50057c Bug 1311257 - Update comment refering to bug 1311257. r=birtles
MozReview-Commit-ID: EM1dYILDlzS

--HG--
extra : rebase_source : 4b47c821c0d07261a13d58fda2b9bcc0f4bc2970
2017-04-06 11:51:29 +09:00
Hiroyuki Ikezoe
50ce1998ae Bug 1311257 - Update test expectations. r=heycam
MozReview-Commit-ID: K3HlC794cCo

--HG--
extra : rebase_source : 03d3df88c1d4ca452ab6d810efb9e7a154768b71
2017-04-06 10:34:51 +09:00
Hiroyuki Ikezoe
2614ef2eac Bug 1311257 - Use underlying value for missing keyframes. r=birtles,heycam
mBaseStyleValuesForServo is a nsRefPtrHashtable<nsUint32HashKey, RawServoAnimationValue>
In this patch, we use void* instead of exposing nsRefPtrHashtable in FFI
because we just use the hash table as an argument of a C++ function, it means
we don't touch the hash table in Rust at all.

MozReview-Commit-ID: 1wM6NeF2S0t

--HG--
extra : rebase_source : 17908ff84d061e189f21641bf660dc9720b964bc
2017-04-06 10:34:51 +09:00
Hiroyuki Ikezoe
fa100db77c Bug 1311257 - Move stuff of KeyframeEffectReadOnly::ComposeStyleRule in Rust. r=heycam
After this, we will implement additive or accumulative calculation
in this Rust function.

MozReview-Commit-ID: 4xAvLz1oTIZ

--HG--
extra : rebase_source : c0672cb1c894eadaaebec94dce2f0d1c1a77d244
2017-04-06 10:34:51 +09:00
Hiroyuki Ikezoe
8e14922b0a Bug 1311257 - Add FFI functions to get progress value and current position in a segment. r=birtles
Two functions added in this patch get progress value from ComputedTiming
or get the position in a given AnimationPropertySegment.
Without these FFIs, we need to expose Maybe<> and Nullable<> and handle
them in Rust.

MozReview-Commit-ID: IXYWlqEQyVR

--HG--
extra : rebase_source : 8cc4d03f718cc13abfcb9c9af700bae7082bbf31
2017-04-06 10:34:51 +09:00
Hiroyuki Ikezoe
88423b4e0b Bug 1311257 - Add an FFI function that returns an AnimationValue for a given nsCSSPropertyID from computed values. r=heycam
When we compose style for a given nsCSSPropertyID in the case where
we have no specified values in target keyframe, we use this AnimationValue
for composition as if it's specified.

MozReview-Commit-ID: 2CTLIGgeLIO

--HG--
extra : rebase_source : 3be5bdaf3d226ff004bb0af0f832e5af88f15b6d
2017-04-06 10:34:50 +09:00
Hiroyuki Ikezoe
3f28d7ec76 Bug 1311257 - Add a function that returns a base computed values (i.e. computed values without any animations rules). r=heycam
This base value will be used for additive, accumulative animations
and also SMIL.

MozReview-Commit-ID: LHV8ZnxSzjb

--HG--
extra : rebase_source : 507a8dd74961e7f439b90fd4c5f90a98706aa434
2017-04-06 10:34:50 +09:00
Jonathan Watt
9176ddbc11 Bug 828240, part 2 - Create only one nsDisplayTransform for outer-<svg> children-only transforms. r=longsonr
Previously if an outer-<svg> had children-only transforms we would create
an nsDisplayTransform display list item for every child of the <svg> element.
For certain SVG files this could cause performance problems. This commit makes
us create a single nsDisplayTransform for the nsSVGOuterSVGFrame's anonymous
child frame rathen than one nsDisplayTransform for every real child.
2017-03-15 16:59:34 +00:00
Brian Birtles
19ef9bec3d Bug 1315874 - Tweak some line wrapping in DoGetStyleContextNoFlush; r=heycam
In ensuring that this method does *not* re-use the existing style context if
aStyleType != eAll, I found it easy to miss this check in the multi-condition if
statement due to the way some, but not all, of the conditions are on one line.
I think this would be a little easier to read if this multi-line condition used
one line per condition.

MozReview-Commit-ID: 4UOAGhAndIV

--HG--
extra : rebase_source : 0798cf29d125227587d3cf42eba7352f1a6e40c6
2017-04-03 16:49:10 +09:00
Brian Birtles
092ef82d3a Bug 1315874 - Drop animation styles if we re-use an existing style context in DoGetStyleContextNoFlush for non-animation style; r=heycam
MozReview-Commit-ID: GrB8A8bVLiX

--HG--
extra : rebase_source : aa118879e22b8c7902b5efde877b5cc621d6ddec
2017-04-03 16:49:10 +09:00
Brian Birtles
362c588a5a Bug 1315874 - Make GetStyleContextWithoutAnimation not flush; r=heycam
There are currently no call sites of GetStyleContextWithoutAnimation
but there are a couple of places (including this patch series) where we would
like to use such a method, but without the flushing behavior.

This patch drops the flushing from GetStyleContextWithoutAnimation and
renames it to GetUnanimatedStyleContextNoFlush. It also makes a few other minor
tweaks:

* Adds the aStyleType parameter for consistency with GetStyleContextNoFlush and
  GetStyleContext
* Moves the implementation of this method and GetStyleContextNoFlush to the
  header file since they simply wrap DoGetStyleContextNoFlush.
* Changes the order of these declarations so that the more specialized method
  comes later.
* Drops the comment describing the method since both the method name and the
  inline definition should now make it obvious what it is doing.

(Actually making this method not return animation styles when it re-uses an
existing style context will happen in the next patch.)

MozReview-Commit-ID: JYeim4A9Imr

--HG--
extra : rebase_source : abf7c27c52dd6b0c20a2710d6d56f2fb3e146ccf
2017-04-03 16:49:09 +09:00
Brian Birtles
33041d1214 Bug 1315874 - Drop 'ForElement' from GetStyleContextForElementXXX methods; r=heycam
In the next patch we want to add a method called
GetUnanimatedStyleContextForElementNoFlush but that's much too long. Instead it
seems better to just drop 'ForElement' from all these methods since it should be
fairly obvious we are getting the style context for an element given that the
first argument is an element.

MozReview-Commit-ID: JQKaEuCKV2F

--HG--
extra : rebase_source : 3ba51f3b00d1ec7bc91102629d9c0abb88992fef
2017-04-05 14:39:23 +09:00
Wes Kocher
264adb55c2 Merge m-c to autoland, a=merge 2017-04-05 14:20:01 -07:00
Wes Kocher
d71fef4f33 Merge autoland to central, a=merge 2017-04-05 13:20:39 -07:00
Kartikaya Gupta
c32c70abe2 Merge m-c to graphics
MozReview-Commit-ID: JgUpOHlFfrP
2017-04-05 09:41:01 -04:00
Carsten "Tomcat" Book
7a670cdd01 merge mozilla-inbound to mozilla-central a=merge 2017-04-05 14:33:35 +02:00
Kartikaya Gupta
8335081baa Merge m-c to graphics
MozReview-Commit-ID: DenuOx3ztpy
2017-04-04 22:47:56 -04:00
Kartikaya Gupta
70d62f1a4c Bug 1351480 - Mark a test passing again. r=jrmuizel
MozReview-Commit-ID: FAEhShmVd1J
2017-04-04 22:46:48 -04:00
Ryan Hunt
7ab0cb366b Bug 1351480 - Update bindings for gradients. r=jrmuizel
MozReview-Commit-ID: 48bjXH4ZCBi
2017-03-31 19:18:44 -04:00
Kartikaya Gupta
868642f10c Merge m-c to graphics
MozReview-Commit-ID: KJoBJaTnxoC
2017-04-02 22:46:53 -04:00
Sebastian Hengst
990055a490 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: EjvlThqFc40
2017-04-02 18:52:13 +02:00
Cameron McCormack
08d2db05b2 Bug 1352785 - stylo: Ensure children of elements with invalid -moz-binding URLs get styled. r=bholley
MozReview-Commit-ID: 2zot13HgjWU

--HG--
extra : rebase_source : 34dabaa228c0f6c2625804c073ff3a5394647bf0
2017-04-02 15:15:44 +08:00
Manish Goregaokar
8cced1c51f Bug 1352775 - Revert "Bug 1352771 - modify flexbox reftest expectations. r=manishearth"
This reverts commit 13e78ea10b414ac4bd062037d4436ce1689ba865.

MozReview-Commit-ID: CZxOSUfT02b
2017-04-01 19:59:12 -07:00
Hiroyuki Ikezoe
f80b34a9d5 Bug 1352771 - modify flexbox reftest expectations. r=bholley
MozReview-Commit-ID: 8QCs5TPFKP

--HG--
extra : rebase_source : 722be5247566b83c113fbdfb53d8da517ab38060
2017-04-02 11:06:23 +09:00
Hiroyuki Ikezoe
63f23ab207 Bug 1345283 - Add fuzzy-if for 1024473-1.html. r=gbrown
MozReview-Commit-ID: KmOF7097ruK

--HG--
extra : rebase_source : 2689ed9bb14a77037f4c37f39bd1baf0e1df0571
2017-04-01 20:22:46 +09:00
Kartikaya Gupta
acefdfbab2 Merge m-c to graphics
MozReview-Commit-ID: Gmms6PhTr8U
2017-03-31 10:37:00 -04:00
Carsten "Tomcat" Book
095969b8ee merge mozilla-inbound to mozilla-central a=merge 2017-03-31 14:45:33 +02:00