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

33 Коммитов

Автор SHA1 Сообщение Дата
Bobby Holley ab415510c2 Bug 1384769 - Break TraversalFlags::ForReconstruct down into several independent pieces. r=emilio
These will be useful in followup work.

MozReview-Commit-ID: Dyp9R0PG36v
2017-07-27 17:49:44 -07:00
Bobby Holley f3de753524 Bug 1384769 - Get rid of the ForNewlyBoundElement mode. r=emilio
MozReview-Commit-ID: 1IRn2iaPnVc
2017-07-27 17:49:42 -07:00
Bobby Holley 07295b450f Bug 1384769 - Clean up ForThrottledAnimationFlush stuff. r=hiro
MozReview-Commit-ID: I6xeHv65nH2
2017-07-27 17:49:40 -07:00
Bobby Holley 12955e0dde Bug 1384769 - Pass TraversalFlags from C++ into Rust. r=emilio
MozReview-Commit-ID: EVUzgnL5coN
2017-07-27 17:49:38 -07:00
Manish Goregaokar 08c6de8178 Bug 1382017 part 4 Gecko piece - Rename ServoComputedValues -> ServoComputedData; r=heycam
ServoComputedValues is confusing because ComputedValues is actually
ServoStyleContext on the C++ side.

MozReview-Commit-ID: IQNVdfREAMt
2017-07-20 21:44:02 -07:00
Cameron McCormack 9654eabe7f Bug 1380133 - Part 1: Minor reformatting and encapsulation. r=emilio
MozReview-Commit-ID: 3hmptLbxxok
---
 dom/animation/KeyframeUtils.h      |  2 +-
 layout/style/ServoBindings.cpp     | 24 +++++++++++++++---------
 layout/style/ServoStyleContext.cpp | 21 ++++++++++++---------
 layout/style/ServoStyleContext.h   | 33 ++++++++++++++-------------------
 layout/style/ServoTypes.h          | 24 ++++++++++++++----------
 layout/style/nsAnimationManager.h  |  7 +++----
 6 files changed, 59 insertions(+), 52 deletions(-)

--HG--
extra : rebase_source : 150278b5f7429986e79976ec9faf290db6de86c0
2017-07-21 11:42:42 +08:00
Manish Goregaokar f4917a7611 Bug 1382190: Make fields public to avoid assertions; r=bustage
MozReview-Commit-ID: 4t4RfnlmFy0
2017-07-20 14:15:00 -07:00
Manish Goregaokar 19e8dfd20b Bug 1382190 - servo: Move FontComputationData to the end of ServoComputedValues to make size check easier, make it NonZero. r=emilio
MozReview-Commit-ID: B2gVj5bQRBT
2017-07-20 13:36:22 -07:00
Sebastian Hengst b289637574 Backed out changeset 454d7232178d (bug 1380133) for bustage at mozilla/KeyframeUtils.h: no 'object' file generated. r=backout on a CLOSED TREE 2017-07-20 15:41:12 +02:00
Cameron McCormack c1be90be48 Bug 1380133 - Part 1: Minor reformatting and encapsulation. r=emilio
MozReview-Commit-ID: 3hmptLbxxok

--HG--
extra : rebase_source : 50044c27fbf6915a36f6a52d3cec7f226dc89460
2017-07-19 13:14:53 +08:00
Manish Goregaokar 2508f1fac9 Bug 1367904 - Part 16: stylo: Stop using mStyleIfVisited in Servo; r=bholley
MozReview-Commit-ID: JxoMr6fz7lh
2017-07-17 21:01:23 -07:00
Manish Goregaokar cdb73416fd Bug 1367904 - Part 14: stylo: Remove FFI calls for fetching style structs from ServoComputedValues; r=bholley
MozReview-Commit-ID: 2HrVZl9HZu1
2017-07-17 21:01:10 -07:00
Manish Goregaokar 3597e8df2e Bug 1367904 - Part 13: stylo: Flatten ServoComputedValues into ServoStyleContext; r=bholley
This patch also removes the duplication of style contexts during the
restyle, because otherwise pointer equality of ServoComputedValues stops
holding (and we assert on that in a few places)

MozReview-Commit-ID: 7Evc1p8ZfM2
2017-07-17 21:01:02 -07:00
Manish Goregaokar f33beecc59 Bug 1367904 - Part 10: stylo: Switch Gecko over to ServoStyleContext; r=bholley
MozReview-Commit-ID: EmopKVjEzlz
2017-07-17 21:00:46 -07:00
Manish Goregaokar 387babf22c Bug 1367904 - Part 4: stylo: Replace real ComputedValues with bindgenned ComputedValues2; r=bholley
MozReview-Commit-ID: GRkycXueUVr
2017-07-17 21:00:25 -07:00
Manish Goregaokar 25536ab88d Bug 1367904 - Part 3: stylo: Use RawOffsetArc in ComputedValues; r=bholley
MozReview-Commit-ID: 1zexSgkcQv0
2017-07-17 21:00:14 -07:00
Manish Goregaokar ab2615effa Bug 1367904 - Part 1: stylo: Create C++-side ServoComputedValues; r=bholley
MozReview-Commit-ID: 1k7KFShSHAY
2017-07-17 21:00:07 -07:00
Hiroyuki Ikezoe c040adf510 Bug 1371450 - Rename TraversalRestyleBehavior::ForAnimationOnly to TraversalRestyleBehavior::ForThrottledAnimationFlush. r=birtles,emilio
ForAnimationOnly is somewhat misleading, it means actually we process
*only* animation-only restyle without normal restyle. The purpose of
ForAnimationOnly is for updating throttled animations to get correct position
of the animations when we need to handle events. Currently we do also update
unthrottled animations though.

MozReview-Commit-ID: HBCCluKrZs9

--HG--
extra : rebase_source : bb37080e44b161b8b0210e3ba3c055604cf43a72
2017-07-15 13:08:47 +09:00
Cameron McCormack a6661ab735 Bug 1370793 - Part 1: Don't try to style unstyled children of elements with newly applied XBL bindings if in a display:none or unstyled subtree. r=bholley
MozReview-Commit-ID: EFi2Vp19AQm

--HG--
extra : rebase_source : 39ce54a1ffc4ec709afa552bc45cb6cd803ee827
2017-06-11 19:11:08 +08:00
Cameron McCormack e958203c53 Bug 1366157 - stylo: Implement getDefaultComputedStyle. r=emilio
MozReview-Commit-ID: GKr06ylK4tA

--HG--
extra : rebase_source : 04907d98d62a0b06f7d3753aaedf999b63483a77
2017-05-24 14:37:47 +08: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
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
Hiroyuki Ikezoe 6ac20e3acf Bug 1357295 - Add PARSING_MODE_ALLOW_ALL_NUMERIC_VALUES to force to parse negative values. r=emilio
As per SVG spec [1], we should also parse negative color components values for
SMIL, but currently Gecko does not support it either.

[1] https://www.w3.org/TR/SVG/implnote.html#RangeClamping

MozReview-Commit-ID: FH80zN3jyKh

--HG--
extra : rebase_source : c9b435222ee7e84cb6e84064a62b2b866e75b6eb
2017-05-13 19:47:38 +09:00
Hiroyuki Ikezoe 55f24d5f91 Bug 1357295 - Make ParsingMode bitflags. r=emilio
assert_parsing_mode_match() is mostly the same as
assert_restyle_hints_match().

MozReview-Commit-ID: 7oOHlZ06DYk

--HG--
extra : rebase_source : 2ace9d66f64c1cfc11c17ded37fdabf356f57d5c
2017-05-13 19:47:38 +09:00
Hiroyuki Ikezoe 7cd8cdf2bb Bug 1357295 - Rename LengthParsingMode to ParsingMode and LengthParsingMode::SVG to PasingMode::AllowUnitlessLength. r=emilio
We need another flag that represents allow-negative-number for SMIL, so
this enum will also comprise the another parsing mode that allows negative number.

MozReview-Commit-ID: IDFNppjGeB

--HG--
extra : rebase_source : 456f661b33346ff4a756a66c6accf4ab1a5f2f80
2017-05-13 19:47:38 +09:00
Emilio Cobos Álvarez 2e7660653c Bug 1360508: Adjust text-combine properly. r=jryans
Text style is always resolved via ServoStyleSet::ResolveStyleForText, either
from the frame constructor initially, or from
ServoRestyleManager::ProcessPostTraversalForText.

So text-only adjustments should go there instead. Since that doesn't call into
cascade(), all the code that passes `pseudo` there is dead code we can remove.

MozReview-Commit-ID: jpbBYpLlUL
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-04-28 20:18:00 +02:00
J. Ryan Stinnett 9e8f561392 Bug 1329088 - Add LengthParsingMode enum to Gecko side. r=emilio
Add a Gecko side LengthParsingMode enum that matches the Servo version.  This
will be used in a few Stylo glue APIs on the FFI boundary.

MozReview-Commit-ID: EuDlWc6ZiQ8
2017-04-14 18:27:49 +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 d6922e73d9 Bug 1350754 - Introduce UpdateAnimationTasks to perform a bunch of animation's tasks in a SequentialTask. r=heycam
The UpdateAnimationsTasks is a bitflags and each bit is generated from
Gecko's UpdateAnimationsTasks (enum class) values for matching values
between C++ and Rust. For this reason, the bitflags is annotated as
(feature = "gecko"), as a result update_animations() which uses this bitflags
also became gecko-only function.

MozReview-Commit-ID: AfQd0FJGkYd

--HG--
extra : rebase_source : 2a5fee40c57a7941defa447357915756af42bc11
2017-03-27 19:43:16 +09:00
Bobby Holley 09ce7e77ed Bug 1325734 - Simplify ElementData and eliminate the concept of consuming styles. r=emilio 2017-01-09 11:50:16 -08:00
Bobby Holley 2207c01808 Bug 1322945 - Change skip_root to unstyled_children_only and use StyleNewChildren in more places. r=heycam
I noticed that our current behavior in ContentRangeInserted is incorrect. Unlike
ContentInserted (where this code lived originally), ContentRangeInserted takes a
start and end element. I'm not sure if we ever take that path for new content that
needs style, but it seemed sketchy. And generally, it seems nice to just always
style new content the same way (though we still need to style NAC by the subtree
root, since it hasn't been attached to the parent yet).

For situations where there is indeed only one unstyled child, the traversal
overhead should be neglible, since we special-case the single-element in
parallel.rs to avoid calling into rayon.

Being more explicit about what we want here also makes us more robust against
the other handful of callpaths that can take us into
nsCSSFrameConstructor::{ContentRangeInserted,ContentAppended}. Currently we
can call StyleNewSubtree on an already-styled element via RecreateFramesForContent,
which triggers an assertion in the servo traversal.

MozReview-Commit-ID: DqCGh90deHH
2016-12-12 18:39:33 -08:00
Bobby Holley f8c9d884fc Bug 1317016 - Basic infrastructure for RestyleHint-driven traversal. r=emilio
MozReview-Commit-ID: 7wH5XcILVmX
2016-11-25 10:06:39 -08:00
Bobby Holley 6351b3ffb8 Bug 1304913 - Have Servo manage node data directly without FFI calls. r=Manishearth
MozReview-Commit-ID: H8f8VP18TbM
2016-09-23 15:58:48 -07:00