Граф коммитов

88 Коммитов

Автор SHA1 Сообщение Дата
Brad Werth 1af9f090ed Bug 1339629 Part 8: Uplift ClearRuleCascades into StyleSheet. r=heycam
MozReview-Commit-ID: CCYIYjWrw86

--HG--
extra : rebase_source : c9f3e4bced29d46ab9c906e58e97465e60fda5ae
2017-05-18 14:21:11 -07:00
Hiroyuki Ikezoe 49bc653390 Bug 1364799 - Add a new TraversalRestyleBehavior that represents the traversal is triggered by CSS rule changes. r=birtles
And propagate the new flag to servo if mRestyleForCSSRuleChanges is set.

MozReview-Commit-ID: HRZ5duYgciF

--HG--
extra : rebase_source : 65528ea0dfa21e84bb9184a849c72a5c322e306b
2017-05-21 08:16:26 +09:00
Bobby Holley cdff82b294 Bug 1329876 - Stop accepting aTreeMatchContext in the ServoStyleSet methods. r=bz
This makes it clear it's unused.
2017-05-20 21:59:59 +02:00
Boris Chiou 38215cedea Bug 1334036 - Part 11: Trigger animation-only restyle when we handle an event with coordinates. r=birtles,heycam
We need to request an animation-only restyle to force flush all throttled
animations on main thread when we handle an event with coordinates
(e.g. mouse event).

MozReview-Commit-ID: KkjeQVsLgTl

--HG--
extra : rebase_source : 314408062e719e9f52df9a6726e2f3dad817bbef
2017-05-19 16:16:41 +08:00
Emilio Cobos Álvarez 5a98022984 Bug 1365902: Make ServoStyleSet::RebuildAllStyleData async. r=heycam
MozReview-Commit-ID: D9Ri4gO3F6G

--HG--
extra : rebase_source : 7bcd208994a7140eadc54fa32f209643a8570b72
2017-05-17 18:33:32 +02:00
Emilio Cobos Álvarez 9e24a8c649 Bug 1364862: Make PostRebuildAllStyleData async. r=heycam
MozReview-Commit-ID: EM3eUP1dWwA
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>

--HG--
extra : rebase_source : 2928e4cbd12af99dde2d913bb814febec72200a0
2017-05-15 18:02:59 +02:00
Xidorn Quan 647879714c Bug 1328319 part 7 - Enable querying counter-style rule on Servo backend. r=heycam
MozReview-Commit-ID: Aj3AcW1KmRe

--HG--
extra : rebase_source : b17302b7026c78627bee766094fb117b2e2abe48
2017-05-11 14:47:24 +10:00
Emilio Cobos Álvarez 8b2a66ab16 Bug 1364412: Convert pseudo-elements to an enum. r=hiro,xidorn
This allows us to access metadata using `match` instead of comparison with
atoms, which makes it doable to get the pseudo-element flags in the future.

Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>

MozReview-Commit-ID: KgGjFePmhyS
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>

--HG--
extra : rebase_source : 57614aed13d2c088fe129ecf3fabf9869d5a6d50
2017-05-14 18:39:22 +02:00
Emilio Cobos Álvarez 66f11e5df2 Bug 1364412: Simplify Servo_HasAuthorSpecifiedRules looking at the pseudo style. r=bholley
MozReview-Commit-ID: HpV92ttZGJz
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>

--HG--
extra : rebase_source : 0f93984a7af0ac5c0e5dd479607fa500f55f7506
2017-05-12 17:51:32 +02:00
Hiroyuki Ikezoe b57fed9509 Bug 1354947 - Rename FillKeyframesForName to GetKeyframesForName. r=birtles
MozReview-Commit-ID: AOLygEtuhpO

--HG--
extra : rebase_source : 2db2a183588a44fc33e0e7bff44847813a72cb74
2017-05-13 16:34:38 +09:00
Brad Werth 4f193e918a Bug 1363572 Part 3: Change ServoStyleSet to use sheet addresses as unique IDs. r=heycam
MozReview-Commit-ID: BZSKZx0wjL8

--HG--
extra : rebase_source : 2404ba8acaa8877a242c92c265de1d341f631839
2017-05-12 12:04:55 -07:00
Brad Werth 1abf09eb7e Bug 1363572 Part 2: Change ServoStyleSet to use uint64_t for entry unique IDs. r=heycam
MozReview-Commit-ID: 50whQ71j4B5

--HG--
extra : rebase_source : 9f4fa6aa77d43c609c9b9c3af9d10dac54ced649
2017-05-10 11:20:57 -07:00
Ryan VanderMeulen 44e0bdf130 Backed out changesets 72fe8375faa0 and 5f55c10a0a72 (bug 1352306) for ElementInlines.h assertions.
CLOSED TREE
2017-05-12 12:58:05 -04:00
Cameron McCormack 9aa3f6dbf6 Bug 1352306 - Part 2: stylo: Only snapshot EventStates if there is some rule that depends on it. r=emilio
MozReview-Commit-ID: J5xhdi7pGSv

--HG--
extra : rebase_source : 48247c1dd2e5b091224bc5fff2e1249b880e157b
2017-05-09 18:13:45 +08:00
Cameron McCormack baddd12434 Bug 1352306 - Part 1: stylo: Only snapshot attributes if there is some rule that depends on that attribute. r=emilio
MozReview-Commit-ID: Emey96ovc2a

--HG--
extra : rebase_source : b60b5114e8faf5bb39bf34fd0d985b071b9ec2dc
2017-05-08 16:04:31 +08:00
Boris Zbarsky 78c83f5606 Bug 1361843 part 4. Remove the now-unused mBatching member of ServoStyleSet. r=emilio
MozReview-Commit-ID: DvyZkQh6q8A

--HG--
extra : rebase_source : d8c8314dd36ab5e2bba44b13e73f816051916f72
2017-05-10 13:13:50 -04:00
Boris Zbarsky 170c7570c7 Bug 1361843 part 2. Track whether the stylist may need a rebuild in ServoStyleSet and do on-demand rebuilds as needed. r=emilio
This does not remove the eager rebuilds we're doing yet.

I'm not completely happy with the ad-hoc manner in which we end up doing
rebuilds.  I considered doing something where we'd make stylist a non-public
member of PerDocumentStyleDataImpl and have a getter that updates the stylist on
get, with maybe a separate non-flushing getter for special situations, if those
arise.  But that requires that we make various cases where we currently have a
non-mut PerDocumentStyleDataImpl use a mut one.  Maybe that would be the right
tradeoff...

I'm also not sure whether the naming is right here.  Maybe we should just talk
about needing a stylesheet flush, not a stylist rebuild, in ServoStyleSet?

MozReview-Commit-ID: 9C7BG5ygm79

--HG--
extra : rebase_source : b70ff0fe5300fed11b36e4c71c1d78b51aa6488b
2017-05-10 13:13:39 -04:00
Emilio Cobos Álvarez 68f1504992 Bug 1355343: Take all the snapshots into account. r=bholley
I've chosen this approach mainly because there's no other good way to guarantee
the model is correct than holding the snapshots alive until a style refresh.

What I tried before this (storing them in a sort of "immutable element data") is
a pain, since we call into style from the frame constructor and other content
notifications, which makes keeping track of which snapshots should be cleared an
which shouldn't an insane task.

Ideally we'd have a single entry-point for style, but that's not the case right
now, and changing that requires pretty non-trivial changes to the frame
constructor.

MozReview-Commit-ID: FF1KWZv2iBM

--HG--
extra : rebase_source : b02d516ea164fc567110338411bf6ba251d53dab
2017-05-07 16:36:47 +02:00
Matt Brubeck 0c70ae6c1d Bug 1349651 - stylo: Implement HasAuthorSpecifiedRules. r=bholley
MozReview-Commit-ID: 8ta5KqKzncZ

--HG--
extra : rebase_source : 3ec29f283dc6bfec4d2a1676ab3f78296893d94b
2017-05-10 13:11:36 -07:00
Cameron McCormack 1eb02fae6c Bug 1356103 - Part 4: Add a mechanism for C++ functions to perform post-Servo traversal tasks. r=bholley
MozReview-Commit-ID: 5Gx1qZzQxAK

--HG--
extra : rebase_source : af569f460fb7039faf481e393a34c04bc4c36bb9
2017-04-30 14:45:32 +08:00
Cameron McCormack b23bdd20ae Bug 1356103 - Part 3: Make it easy to access the ServoStyleSet currently in traversal. r=bholley
In a later patch, we'll want to queue up some tasks to run when the
Servo traversal is one, and the ServoStyleSet seems like the natural
place to store those tasks.  We could probably find the ServoStyleSet
by chasing a bunch of pointers from the task-adding call sites, but
it seems simpler just to make it available directly.

MozReview-Commit-ID: AJoFZEoNaGm

--HG--
extra : rebase_source : 78389d72ba6dfb4301ba75bd39bbdc51d13cb4d5
2017-04-30 14:41:11 +08:00
Iris Hsiao 0a6db9e69f Backed out 12 changesets (bug 1356103) for build bustage at PostTraversalTask.h
Backed out changeset 9fb487252c28 (bug 1356103)
Backed out changeset 301237c65945 (bug 1356103)
Backed out changeset 7bc3a4861a39 (bug 1356103)
Backed out changeset 2f383d89184b (bug 1356103)
Backed out changeset a03112e1c9d5 (bug 1356103)
Backed out changeset c60b4c9cbd83 (bug 1356103)
Backed out changeset 34280baeaabe (bug 1356103)
Backed out changeset 31a0881cfb47 (bug 1356103)
Backed out changeset 529d037f9c33 (bug 1356103)
Backed out changeset 1c7831db6b07 (bug 1356103)
Backed out changeset 559f06e32df3 (bug 1356103)
Backed out changeset 784865d234cd (bug 1356103)
2017-05-04 17:56:25 +08:00
Cameron McCormack b3951ab999 Bug 1356103 - Part 4: Add a mechanism for C++ functions to perform post-Servo traversal tasks. r=bholley
MozReview-Commit-ID: 5Gx1qZzQxAK

--HG--
extra : rebase_source : d3c119e2a71833462d67bb373674bbd38a7aa47d
2017-04-30 14:45:32 +08:00
Cameron McCormack 64ee30fc47 Bug 1356103 - Part 3: Make it easy to access the ServoStyleSet currently in traversal. r=bholley
In a later patch, we'll want to queue up some tasks to run when the
Servo traversal is one, and the ServoStyleSet seems like the natural
place to store those tasks.  We could probably find the ServoStyleSet
by chasing a bunch of pointers from the task-adding call sites, but
it seems simpler just to make it available directly.

MozReview-Commit-ID: AJoFZEoNaGm

--HG--
extra : rebase_source : d8afe0c2cdf1ea4b1681c6e57aea48c9efddea00
2017-04-30 14:41:11 +08:00
Boris Chiou 7c0868e25d Bug 1346052 - Part 3: Implement AnimationValue::FromString. r=birtles
AnimationValue::FromString compute the AnimationValue from a string.

MozReview-Commit-ID: CX8wairpnfN

--HG--
extra : rebase_source : 05dbaa84bf40463a0021bd538d7baba5d591f992
2017-05-03 11:15:27 +08:00
Brad Werth 3c02700e0e Bug 1348481 Part 2: Gecko-side track unique IDs for each stylesheet and send them to Servo. r=heycam
MozReview-Commit-ID: 7ZaQYhjdYmG

--HG--
extra : rebase_source : 4f1479ca32a305e16c4da8b3ca1c4532f7040258
2017-05-01 16:46:41 -07:00
Cameron McCormack 060797a439 Bug 1358968 - Part 2: Use nsCSSAnonBoxList.h data to skip parent display-based style fixups when resolving anon box style. r=bz
MozReview-Commit-ID: HugxFcRcCqv

--HG--
extra : rebase_source : 5c3b12151db531a0b595cff674b1d1d137ebb9cf
2017-04-24 16:25:37 +08:00
Hiroyuki Ikezoe 51d6b62cb0 Bug 1324700 - Add an FFI which returns computed values for a given declaration block with/without parent_style. r=heycam
The function uses document's default computed values if the parent style
is not specified.

MozReview-Commit-ID: ICd3phAi0C6

--HG--
extra : rebase_source : 343dee682096b75cd7f905db7207823f7e3624b5
2017-04-15 07:37:35 +09:00
Hiroyuki Ikezoe a7215d7152 Bug 1324700 - Add ResolveServoTransientStyle to get servo's computed values instead of nsStyleContext. r=heycam
Also this patch add nsIAtom as an argument to ResolveTransientStyle() to call
the new function ResolveServoTransientStyle easier. The only call site of the
ResolveTransientStyle() has already nsIAtom* there.

MozReview-Commit-ID: IwxqZbaCSpB

--HG--
extra : rebase_source : b94a3a8723fe53f38eb6144a5926dec3d7796e72
2017-04-15 07:37:34 +09:00
Brad Werth e50d5d4bbe Bug 1341721 Part 1: ServoStyleSet implementation of SetAuthorStyleDisabled. r=heycam
MozReview-Commit-ID: Bd0TJDfcj94

--HG--
extra : rebase_source : c5904f67f4303e14a785d0526190e51bc987f4c9
2017-04-11 15:43:14 +08:00
Emilio Cobos Álvarez 16cd642c17 Bug 1325878: Create less hardcoded nsMediaList instances. r=xidorn
MozReview-Commit-ID: K6T3MM1ZrFb
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-04-13 00:30:03 +08:00
Nicholas Nethercote c54a8b6198 Bug 1353948 - Add SizeOfIncludingThis() methods to ServoStyle{Set,Sheet,SheetInner}. r=heycam.
This fills things in a bit more on the Gecko side.

--HG--
extra : rebase_source : a7cd16969fa0ce06f7d9e39f83d67bf3bd472ea4
2017-04-06 12:22:36 +10:00
Cameron McCormack 12cc9ae143 Bug 1351535 - Part 6: Add ServoStyleSet::StyleSubtreeForReconstruct. r=bholley
MozReview-Commit-ID: CovU36o4lAV

--HG--
extra : rebase_source : d1b990032dcf5438823316f2934bf59a1babd337
2017-04-04 19:34:30 +08:00
Cameron McCormack 9ce0d4d3d2 Bug 1351535 - Part 4: Add a TraversalRestyleBehavior argument to traversal functions. r=bholley
This argument will be used to control whether we are restyling in preparation
for reframing a subtree, which can avoid generating any change hints, as we
aren't preserving the frames that they would otherwise apply to.

MozReview-Commit-ID: DkLVCUnNGt

--HG--
extra : rebase_source : cb3537cea26cb9805b2ec1556cf5ca6eb9d38ab8
2017-04-08 22:57:08 +08: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
Xidorn Quan be843c7162 Bug 1345696 part 7 - Provide @font-face rules for stylo backend. r=heycam
MozReview-Commit-ID: CHPxz7iOLg6

--HG--
extra : rebase_source : 56371228e08b1accbdd30f738622bc211e6daee8
2017-03-27 17:53:27 +11:00
Xidorn Quan 082e026668 Bug 1345696 part 1 - Lots of fixup for the next patch. r=heycam
The next patch moves nsCSSFontFaceRule into a separate header, which
somehow affects lots of header dependencies. I'm not completely sure
why this happens, though.

MozReview-Commit-ID: KuXbsaX0NUd

--HG--
extra : rebase_source : cef91018964b5488c5031df8aada90aa7fa0ad51
2017-03-28 20:05:12 +11:00
Cameron McCormack c4f1f8e321 Bug 1350671 - stylo: Allow resolving out of date styles when explicitly reconstructing frames for an element. r=bholley
MozReview-Commit-ID: 7w9pehHNXQ

--HG--
extra : rebase_source : 1476b4397a4384046c324f0176ecd9f699b026bd
2017-03-28 15:31:41 +08:00
Iris Hsiao 5bed2bfda5 Backed out changeset 6e4ccddb5c4b (bug 1350671) for build bustage 2017-03-28 15:23:59 +08:00
Cameron McCormack e945f00cd0 Bug 1350671 - stylo: Allow resolving out of date styles when explicitly reconstructing frames for an element. r=bholley
MozReview-Commit-ID: A7ssy7ygWLh

--HG--
extra : rebase_source : 7f8fa109f1a739b68525e3ff662024267189d93f
2017-03-28 13:46:59 +08:00
Bobby Holley cbcf9903c7 Bug 1351026 - Whitelist the compositor thread in DO_RESET. r=emilio
MozReview-Commit-ID: 3k6Rrq7mbWx
2017-03-27 13:11:10 -07:00
Manish Goregaokar 681045b70e Bug 1341086 - Part 2: stylo: Support all non-ts pseudos with an argument; r=emilio,heycam
MozReview-Commit-ID: IHjX2Q3k8eD

--HG--
extra : rebase_source : 57df0f0e54fd1aa1ce4b304238c7070ef9af6dd4
2017-03-16 14:10:22 -07:00
Boris Chiou 5fdc3654b4 Bug 1349124 - Replace ServoComputedStyleValues with ServoComputedValuesWithParent. r=hiro
MozReview-Commit-ID: 5POa8DRjmc8

--HG--
extra : rebase_source : 5a88f1c30c32dcd6bb728707c066a4b8becfc311
2017-03-21 15:41:23 +08:00
Emilio Cobos Álvarez fb3b444270 Bug 1303229: Get the proper viewport size for animations. r=heycam,hiro
While we're here, don't re-recompute the default computed values, just grab them
from the device.

MozReview-Commit-ID: GqqnPLIwN2F
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-03-11 14:29:38 +01:00
Boris Zbarsky 964a12c306 Bug 1345362 part 4. Rename ResolveAnonymousBoxStyle to ResolveInheritingAnonymousBoxStyle. r=heycam
MozReview-Commit-ID: GVA1fTh0RDv

--HG--
extra : rebase_source : 4333baf6764f346d68836e387fa002705684bfdd
2017-03-08 23:50:28 -05:00
Boris Zbarsky b537f110e2 Bug 1345362 part 3. Introduce CSSPseudoElementType::NonInheritingAnonBox to represent non-inheriting anon boxes. r=heycam
The idea is to be able to call the right function during style resolution time
without doing a linear walk via nsCSSAnonBoxes::IsNonInheritingAnonBox.

MozReview-Commit-ID: JKt33GggTjz

--HG--
extra : rebase_source : fcf477dcef8529c803bf97b1d3a16f8f4fcea39f
2017-03-08 23:41:04 -05:00
Boris Zbarsky 767339fbd8 Bug 1345362 part 1. Use mozilla::EnumeratedArray for mNonInheritingStyleContexts. r=heycam
MozReview-Commit-ID: EddWYLSmfGL

--HG--
extra : rebase_source : c2cd37964b60c25ae2176098addfcbf94cad61a3
2017-03-08 23:39:45 -05:00
Hiroyuki Ikezoe 1761aeb22e Bug 1344619 - Part 4: Add ServoStyleSet::ResolveStyleLazily(). r=heycam
MozReview-Commit-ID: GvlD6lQYBQ6

--HG--
extra : rebase_source : 73baac118a3de04d88b565c61f853ec145d3d1e7
2017-03-09 05:20:17 +09:00
Hiroyuki Ikezoe 394a4a9b12 Bug 1344619 - Part 3: Kick EffectCompositor::PreTraverse(). r=heycam
MozReview-Commit-ID: HbBrQ7HZ8gf

--HG--
extra : rebase_source : 764ca245bd03ef5bc943c5814f53198141ad5b89
2017-03-09 05:20:17 +09:00
Boris Zbarsky f12067d36e Bug 1343078 part 7. Make placeholders a non-inheriting anon box. r=dbaron
MozReview-Commit-ID: 3kQQroDRlr8

--HG--
extra : rebase_source : 6b1c8e0c1f287532badedb50439e415f97a4cf81
2017-03-08 00:18:40 -05:00