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

275 Коммитов

Автор SHA1 Сообщение Дата
Cameron McCormack 8b8f339e85 Bug 1289868 - Part 1: stylo: Add an outparam to Gecko_CalcStyleDifference that returns whether any style data changed. r=emilio
MozReview-Commit-ID: 2Pk2x9JME0

--HG--
extra : rebase_source : 4ea272000541d5b79d83e69d6129a7b7b6871b8f
2017-05-20 11:17:40 +08:00
Boris Chiou 3ae8dacbdf Bug 1334036 - Part 9: Add one FFI which return None transform. r=emilio
This FFI is used by Servo_AnimationValue_GetTransform(), which needs to
handle and return none transform properly.

MozReview-Commit-ID: 49cFXE2BIbm

--HG--
extra : rebase_source : 9def5e92dc6c0b60c2fb412228a50d7e2f5eb722
2017-05-19 16:09:45 +08:00
Boris Chiou 1e2c865691 Bug 1334036 - Part 5: Implement FFI for finding properties overriding animations. r=birtles,emilio
We need to traverse rule tree to get the important rules, so we will not
override them if they have animations running on compositor.

MozReview-Commit-ID: 67NO2nIcUfq

--HG--
extra : rebase_source : 24a4ea4ca10e00f409d94c81acacb3db72248b3f
2017-05-19 15:58:47 +08:00
Ravi Shankar 22e28d36ee Bug 1363664 - Add bindings for StyleGridTemplate and nsTArray<nsString>; r=heycam
MozReview-Commit-ID: AsVxzu4SUu9

--HG--
extra : rebase_source : e8650549bd6adb80fde898474e06a3f851982fdb
2017-05-18 23:26:21 +05:30
cku 5e40c4609b Bug 1310885 - Part 11. (gecko) Clean up unused things. r=heycam
MozReview-Commit-ID: CxHbNyVNSz8

--HG--
extra : rebase_source : c9b3600e31023d79736f4df871ed741c37b1647f
extra : intermediate-source : d650a2abb555fb2bed3d832bc8f007ec7909c99e
extra : source : 33e2a248ed4da28bba3b0e4b745e3d894c68ed4d
2017-04-28 19:47:04 +08:00
Xidorn Quan 3cf4744214 Bug 1328319 part 8 - Make stylo use counter-style for list-style-type and counter functions. r=heycam,SimonSapin
MozReview-Commit-ID: AUU3AbwOpPs

--HG--
extra : rebase_source : 0c59d9182506361558320c90ebce763456a1be52
2017-05-15 14:36:43 +10:00
Xidorn Quan a27d9254df Bug 1328319 part 5 - Add bindings for list and pair list value of nsCSSValue. r=manishearth
MozReview-Commit-ID: KO0UCkrlxBi

--HG--
extra : rebase_source : 9725485a38d32caf1fcd6b1420c9d05b1da0ca2e
2017-05-15 14:20:52 +10:00
Xidorn Quan 25a2a50c79 Bug 1328319 part 4 - Add binding for setting pair value of nsCSSValue. r=manishearth
MozReview-Commit-ID: 2bAH90Mh4GP

--HG--
extra : rebase_source : 1830ed73cf319932b63b55533e61755d3362e116
2017-05-09 22:36:03 +10:00
Xidorn Quan aa48508a9a Bug 1328319 part 3 - Add support for auto value in nsCSSValue sugar. r=manishearth
MozReview-Commit-ID: 9QQ9fdU0all

--HG--
extra : rebase_source : acd0ae6193ae9b8ec43068be19e4d05a39b587c4
2017-05-15 14:14:59 +10:00
Xidorn Quan 2723728359 Bug 1328319 part 2 - Add basic integration of @counter-style. r=heycam
MozReview-Commit-ID: 68CcxyWuINu

--HG--
extra : rebase_source : 2772c4ab938daf61e4a14fa952b24ecd4220de6b
2017-05-15 14:18:44 +10:00
Emilio Cobos Álvarez 0fb016f0f2 Bug 1364412: Expose pseudo-element flags, and properly reject pseudos in non-UA sheets. r=bholley
MozReview-Commit-ID: KYC1ywfI7Lg
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>

--HG--
extra : rebase_source : 924c2fb9b20da5e243faa3ed527c35103b50c742
2017-05-15 16:19:24 +02: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
Fernando Jimenez Moreno 727a9d6d27 Bug 1350175 - Part 3: Set source position for the different rules. r=SimonSapin,xidorn
MozReview-Commit-ID: 6AGNOLqoNHx

--HG--
extra : rebase_source : 476d440c18e98e3fa690fd064bf42483e63ae057
2017-05-15 14:02:13 +02:00
Sebastian Hengst 484d2b7f51 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: Jduo3F6TzgF
2017-05-14 18:04:29 +02:00
Hiroyuki Ikezoe cbcc8022b4 Bug 1354947 - Drop Gecko_AnimationAppendKeyframe. r=birtles
MozReview-Commit-ID: 9B9TjkJ5CxO

--HG--
extra : rebase_source : 1930b77481e1f3be46a2bf4750445e4f72292d15
2017-05-13 16:34:38 +09:00
Hiroyuki Ikezoe c115978360 Bug 1354947 - Fill in missing keyframe values. r=birtles
This is mostly a mimic of what we do in
GeckoCSSAnimationBuilder::FillInMissingKeyframeValues().

In Gecko we iterate over the properties just once because we can take the
index for both the synthesized start and end keyframe and easily look them up
as needed. However, in this patch we synthesize the start and end keyframes
separately and iterate over the properties twice because that's easier than
getting two indices and then later calling another FFI to dereference each of
them, and neater than getting back two pointers

MozReview-Commit-ID: 1e0R9AKzgaG

--HG--
extra : rebase_source : a37c406480c2d0ce2b8c4d4ad804622cac2083fa
2017-05-13 16:34:38 +09:00
Hiroyuki Ikezoe 8fd511dac1 Bug 1354947 - Merge keyframe values at the same offset and of the same timing function. r=birtles
MozReview-Commit-ID: 4BTYAGjFb3V

--HG--
extra : rebase_source : 6c49d3bf381b71ce8e9a161e50c3f357356e551c
2017-05-13 16:34:38 +09:00
cku 4877f8d094 Bug 1310885 - Part 3. (gecko) Create a new API to receive cached ImageValue from stylo.
This patch implement several things:
1. Implement a new constructor for nsStyleImageRequest to receive an existing
   ImageValue from the caller.
2. Implement Gecko_ImageValue_Create to allow stylo to create a gecko::ImageValue
   object.
3. Implement Gecko_SetXXXXImageValue to allow stylo to pass a created ImageValue
   back to gecko.

MozReview-Commit-ID: 1SbW5w8FSV2

--HG--
extra : source : 63777ecf4c7138a0ce5847753a41efcbfc8e2b20
extra : intermediate-source : dced488c119da7e3ae27c903c0dcc76593d8a06d
2017-05-02 16:20:01 +08:00
Julian Seward 83969e88eb Bug 1361258 - Add a jemalloc_thread_local_arena API with a binding for rust. r=glandium
The intent of the API is to allow threads to opt-in to use a separate
mozjemalloc arena.

This indroduces a dummy shell with no actual implementation.
2017-05-12 18:08:08 +09:00
Phil Ringnalda 0b5026dbf2 Backed out 3 changesets (bug 1310885) for heap write hazard failures
Backed out changeset 77352010d8e8 (bug 1310885)
Backed out changeset 9245a2fbb974 (bug 1310885)
Backed out changeset 7c2db290c4b6 (bug 1310885)

MozReview-Commit-ID: 7JWuxt9QDO0
2017-05-11 23:03:31 -07:00
cku bbbef1e5fb Bug 1310885 - Part 3. (gecko) Create a new API to receive cached ImageValue from stylo. r=heycam
This patch implement several things:
1. Implement a new constructor for nsStyleImageRequest to receive an existing
   ImageValue from the caller.
2. Implement Gecko_ImageValue_Create to allow stylo to create a gecko::ImageValue
   object.
3. Implement Gecko_SetXXXXImageValue to allow stylo to pass a created ImageValue
   back to gecko.

MozReview-Commit-ID: 1SbW5w8FSV2

--HG--
extra : rebase_source : f3ce46922ded8414dabb70ef0e58177f48c4bb14
extra : intermediate-source : c146e6dcac12ed597e785dbf4f3d9c1ad323023e
extra : source : 63777ecf4c7138a0ce5847753a41efcbfc8e2b20
2017-05-02 16:20:01 +08: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
Wes Kocher c7918207d5 Backed out changeset feea2db3ddbe (bug 1363664) at developer's request a=backout
MozReview-Commit-ID: 83nv6jxNwoL
2017-05-10 09:51:38 -07:00
Ravi Shankar bacca6ee5c Bug 1363664 - Add bindings for StyleGridTemplate and nsTArray<nsString>; r=heycam
MozReview-Commit-ID: AsVxzu4SUu9

--HG--
extra : rebase_source : 55f6b62e574aba07c21ac0d4041de6a15a4c3f41
2017-05-10 17:51:39 +05:30
Wes Kocher e2902f93a3 Merge inbound to m-c a=merge
MozReview-Commit-ID: Fp2oBAcru51
2017-05-09 14:34:34 -07:00
Fernando Jimenez Moreno 6b3f90e5b4 Bug 1355408 - Part 1: Support @-moz-document rule in stylo. r=xidorn
MozReview-Commit-ID: BMoA7tb7ixj

--HG--
extra : rebase_source : 1329b4c008b4ee3e2623a496c8ef82f610d6e3ce
2017-04-18 18:59:43 +02:00
cku 2f9aebf9b0 Bug 1310885 - Part 1. (gecko) Export RefPtr<ImageValue> from gecko to stylo.
MozReview-Commit-ID: BK5TXhl8jjP

--HG--
extra : source : ebc098ac4add22c0696937f52d14d9a4ac085bae
2017-04-28 21:38:27 +08:00
Xidorn Quan aa5784a8cf Bug 1362302 part 2 - Fix stylo issue after changing counter style names to nsIAtom. r=manishearth
Only counter() and counters() functions are affected so far, since
list-style-type hasn't been hooked with counter-style yet.

MozReview-Commit-ID: EAuT3KvPpNY

--HG--
extra : rebase_source : ed561f7f644d638af6d8bcb57182946f5ee1a7f2
2017-05-05 21:56:57 +10:00
Manish Goregaokar 08fe0e004f Bug 1358634 - Handle fallback to default variable font in case of nonexistant generic ; r=heycam
MozReview-Commit-ID: GHUfkmJNgqG
2017-05-05 12:26:00 -07:00
Anthony Ramine a2e7b85307 Bug 1361985 - Add Servo bindings for GridTemplateAreasValue. r=Manishearth
MozReview-Commit-ID: fi5j076kwH

--HG--
extra : rebase_source : 380b1a60a5385d762ee2f73bb089aaefb86c0c53
2017-05-04 12:24:01 +02:00
KuoE0 6107d7ca3c Bug 1356104 - (Part 1) The implementation inn Gecko of the FFI function `Gecko_GetAppUnitsPerPhysicalInch`. r=xidorn
MozReview-Commit-ID: IVmmpQIw0JG

--HG--
extra : rebase_source : cc994caaff5143a888e02605ef991424bbf37e8d
2017-04-25 16:29:46 +08:00
Wes Kocher dec0a5e74d Backed out changeset 404075957700 (bug 1362843) for stylo build bustage a=backout CLOSED TREE
MozReview-Commit-ID: FVWtqRDNjjU
2017-05-08 14:48:04 -07:00
Ravi Shankar a89898688c Bug 1362843 - Add bindings for StyleGridTemplate and nsTArray<nsString>; r=heycam,xidorn
MozReview-Commit-ID: DYpihGT5ngd

--HG--
extra : rebase_source : 135ca9dfd3cbd581546cd93a51582158e0493fff
2017-05-08 14:16:32 +05:30
Nazım Can Altınova 3614d47845 Bug 1360659 - stylo: Support other unit types in computed angle r=emilio
MozReview-Commit-ID: 7pwoXpHAxlz

--HG--
extra : rebase_source : 4bbb6fcb542ac61415f734dca6e0a4abbf034b1c
2017-04-28 18:33:00 +03:00
Hiroyuki Ikezoe d8fafebff7 Bug 1360776 - Pass AnimationValueMap raw pointer instead of Arc to Gecko_GetAnimationRule(). r=emilio
MozReview-Commit-ID: 5o8NuJolG2R

--HG--
extra : rebase_source : 13d732112dfe5614a83657c7bf7703944050c0f4
2017-05-01 18:45:41 +09:00
Emilio Cobos Álvarez d77548d239 Bug 1331047: Implement the new traversal semantics for stylo. r=bholley,hiro
MozReview-Commit-ID: 4BXx9JpGZKX
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-04-27 17:06:11 +02:00
Brian Birtles f8eabbbd4d Bug 1355348 - Add FFI for getting SMIL override styles; r=heycam
MozReview-Commit-ID: 7grK3meDOZD

--HG--
extra : rebase_source : 2abaf2f99b5850f3b1a07c667e9801c8dc14b30b
2017-04-27 11:09:55 +09:00
Boris Chiou afec853085 Bug 1357357 - Part 1: Add one FFI to set unsupported transition property. r=emilio
We need an FFI, Gecko_StyleTransition_SetUnsupportedProperty, to set the
mProperty and mUnknownProperty of StyleTransition. In Servo, we put
non-animatable, custom, and unrecognized property together, so this FFI
should look up the nsCSSPropertyID of the input string, and then store the
value and the unknown property string (if any) back to StyleTransition.

MozReview-Commit-ID: 4iZNKXNSrzj

--HG--
extra : rebase_source : 088daa620133418afdc6b1c97b6e90ceb7cf3b75
2017-04-26 17:41:45 +08:00
Jeremy Chen 3e5064f08f Bug 1348173 - stylo: combined gecko side patch for -moz-border-*-colors support. r=heycam
MozReview-Commit-ID: 53gWkWKJNmV

--HG--
extra : rebase_source : 5bd1ddaf954533094c77a3ca5bdf9f3c3441056f
2017-04-25 14:50:44 +08:00
Iris Hsiao 28a432c0ec Backed out changeset 9c7c061b959f (bug 1348173) for hazard busted 2017-04-25 14:24:10 +08:00
Hiroyuki Ikezoe e788bc7b46 Bug 1358965 - Drop unnecessary static_cast. r=birtles
MozReview-Commit-ID: 1V1ISqv2uo1

--HG--
extra : rebase_source : 7ca59d60d577c076ad58411e3a05d7d3dec460ed
2017-04-25 12:24:51 +09:00
Jeremy Chen 9cd2c96926 Bug 1348173 - stylo: combined gecko side patch for -moz-border-*-colors support. r=heycam
1. add binding functions for -moz-border-*-colors support.

  In Gecko, we use double pointers to nsBorderColors to store -moz-border-*-colors.
  The computed values of -moz-border-*-colors are set by couple member functions.

  To pass the computed value from Servo to Gecko, we need support for these member
  functions as well. So, I'm adding some binding functions in this patch. The
  actual use of these bindings to pass/store the computed values is separated
  in the following patch, which should be a pure Servo change. See servo PR:
  https://github.com/servo/servo/pull/16586.

2. update test expectations for -moz-border-*-colors support.

  Note that with the support of -moz-border-*-colors, 165 mochitests and 17 reftests
  could be fixed.

MozReview-Commit-ID: KDbp8C6Aoqd

--HG--
extra : rebase_source : 7d9675d9ece091ea6957dcae7d28c39066e69035
2017-04-24 18:23:52 +08:00
Manish Goregaokar 9511e12b7f Bug 1349417 - Part 2: stylo: Add basic system font support, use for font-size and font-family; r=xidorn
MozReview-Commit-ID: 4ZMR83GkAZN
2017-04-21 15:40:44 -07:00
Carsten "Tomcat" Book 1f45312241 Backed out changeset 98094a8c0d46 (bug 1349417) 2017-04-19 08:31:50 +02:00
Manish Goregaokar 57e9997915 Bug 1349417 - Part 2: stylo: Add basic system font support, use for font-size and font-family; r=xidorn
MozReview-Commit-ID: 4ZMR83GkAZN
2017-04-18 21:36:45 -07:00
Iris Hsiao 2f57ea5bb4 Backed out 3 changesets (bug 1349417) for build bustage
Backed out changeset e6a9aaf8c102 (bug 1349417)
Backed out changeset fbdddabe4c8d (bug 1349417)
Backed out changeset c1ead1f0ab71 (bug 1349417)
2017-04-19 11:03:13 +08:00
Manish Goregaokar 7e8d2f0775 Bug 1349417 - Part 2: stylo: Add basic system font support, use for font-size and font-family; r=xidorn
MozReview-Commit-ID: 4ZMR83GkAZN
2017-04-18 19:31:00 -07:00
Boris Chiou f074c41907 Bug 1341372 - Part 3: Add FFIs for Triggering transitions. r=birtles,heycam,hiro
We add these FFIs for retrieving the existing transitions, so we can
reduce the false alarms of triggering transitions from Servo:
1. Gecko_ElementTransitions_Length
2. Gecko_ElementTransitions_PropertyAt
3. Gecko_ElementTransitions_EndValueAt

MozReview-Commit-ID: 9eLd8fxmNd9

--HG--
extra : rebase_source : 0ea23dd7f48dbdc1f31a83244ab1dfaf1b20a321
2017-04-17 14:29:31 +08:00
Boris Chiou 5ebfbed872 Bug 1341372 - Part 2: Add one FFI for TElement::has_css_transitions. r=heycam
Add one FFI, Gecko_ElementHasCSSTransitions, to check if there is any
transition in CSSTransitionCollection. This will be used to check if we need
to update transition and if we should compute the after-change style.

MozReview-Commit-ID: 7xP4SdxNp7g

--HG--
extra : rebase_source : dbc4941151835c2f1c3596a6baaef77b2198890c
2017-04-17 14:24:33 +08:00
Emilio Cobos Álvarez 269304d78d Bug 1356074: Implement keyword-valued media queries. r=heycam
MozReview-Commit-ID: 1oskYLM11us
2017-04-14 13:00:23 +08:00
Nazım Can Altınova 23976af4ac Bug 1355003 - stylo: Change some binding names to generalize them r=Manishearth
MozReview-Commit-ID: 5O0CevHWbUA
2017-04-13 10:32:40 +08:00
Emilio Cobos Álvarez ac4f44ca96 Bug 1325878: Don't use nsMediaList for loading imports. r=xidorn
MozReview-Commit-ID: HR23bqZcmcA
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-04-13 00:30:06 +08:00
Boris Chiou a553e2ec4c Bug 1343753 - Part 8: Rename and add new methods in nsTransitionManager. r=birtles
Rename UpdateTransitions as DoUpdateTransitions, and add a public
method, UpdateTransitions for stylo.

MozReview-Commit-ID: 7UiGzFsGZC4

--HG--
extra : rebase_source : a1e6a1efda9fc324ba50e5a17c122d6daf1b5b01
2017-04-12 16:33:44 +08:00
Jeremy Chen 492da78abe Bug 1341758 - add image-orientation related binding functions. r=emilio
For image-orientation property, we use methods of nsStyleImageOrientation
struct to create/set its computed value. Adding these binding functions
could let us reuse these methods for transferring computed values from Servo
side to Gecko.

The actual changes for the calling these binding functions to do the glue things
for Stylo is in a separate following patch, which should be pure Servo changes.

MozReview-Commit-ID: 9MuICVgdxNw

--HG--
extra : rebase_source : e1fbcc3445b7a1d1deb18d204f4b8f60d7356b08
2017-04-11 16:32:20 +08:00
Nazım Can Altınova bfd17d61d4 Bug 1341761 - stylo: Add -moz-element support. r=xidorn
MozReview-Commit-ID: I9gxAoFJH9C
2017-04-09 17:02:35 +03:00
Manish Goregaokar 308b6ea838 Bug 1341724 - Part 2: stylo: Add bindings for fetching font metrics from Gecko; r=heycam
MozReview-Commit-ID: BkPNq22ruwU
2017-04-10 17:06:14 +08:00
Manish Goregaokar 42199474b9 Bug 1351200 - Part 3: stylo: Bypass cache when fetching font size prefs from Stylo; r=emilio
MozReview-Commit-ID: 7WBduQ6lBTC
2017-04-10 09:18:00 +08:00
Phil Ringnalda 98df36e955 Backed out 3 changesets (bug 1351200) for Windows and static-analysis build bustage
CLOSED TREE

Backed out changeset 1cce9249b4a2 (bug 1351200)
Backed out changeset 792fb55377f5 (bug 1351200)
Backed out changeset 767bee78574c (bug 1351200)
2017-04-09 08:24:54 -07:00
Manish Goregaokar 8bfdb295a6 Bug 1351200 - Part 3: stylo: Bypass cache when fetching font size prefs from Stylo; r=emilio
MozReview-Commit-ID: 7WBduQ6lBTC

--HG--
extra : rebase_source : f3bee21a7d105cad96231aa5bec5660cdbface06
2017-04-04 11:11:27 -07:00
Ravi Shankar 83ad365ff7 Bug 1354775 - Gecko_CopyStyleGridTemplateValues function for Servo-side copying; r=bholley,heycam
MozReview-Commit-ID: 4Hz82MWZlB0
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-04-09 17:42:20 +08:00
Wes Kocher b689c79de1 Backed out changeset 17650db2f478 (bug 1354775) for stylo bustage at developer's request a=backout 2017-04-08 23:52:25 -07:00
Ravi Shankar 1d70fcbd3c Bug 1354775 - Gecko_CopyStyleGridTemplateValues function for Servo-side copying; r=bholley,heycam
MozReview-Commit-ID: 4Hz82MWZlB0

--HG--
extra : rebase_source : 962b60f9a67a157395f0f11aadfc95bad4a1d554
2017-04-08 12:47:34 +05:30
Nathan Froyd c430f999dd Bug 1322656 - add servo bindings for profiler thread registration; r=xidorn
We need these to be able to register parallel traversal threads with the
profiler.
2017-04-07 10:44:41 -04:00
Bobby Holley 04137c02ea Bug 1354358 - Assert main thread in NS_IMPL_FFI_REFCOUNTING. r=xidorn
MozReview-Commit-ID: 4J7yuJ8Thn0
2017-04-06 19:22:01 -07: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
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 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
Manish Goregaokar b67b0cb1ef Bug 1341714 - Part 4: stylo: Add support for xml:lang; r=heycam
MozReview-Commit-ID: E0GpyPKES3k

--HG--
extra : rebase_source : 0395305db946b4b54427fa9a19f2c3796123e6f5
2017-03-26 13:53:34 -07:00
Manish Goregaokar a2be776eb5 Bug 1341714 - Part 2: stylo: Add support for <table> color quirk ; r=heycam
MozReview-Commit-ID: 56IKARwfbhw

--HG--
extra : rebase_source : af58d14da2e1c329ce2ace2b9cacf79b9adf0319
2017-03-26 13:53:34 -07:00
Xidorn Quan 4f6e257d03 Bug 1352025 part 1 - Use a UrlExtraData type alias to unify url handling logic. r=manishearth
MozReview-Commit-ID: 6gZHGQWbpAW

--HG--
extra : rebase_source : 0780021a0e5ef14b380ec247418c1c709056e792
2017-03-31 12:03:45 +11:00
Xidorn Quan e0f34c4221 Bug 1352763 part 2 - Pass borrowed child stylesheet to Gecko for loading rather than the import rule. r=emilio
This is necessary because if we pass in the import rule, we would need
to invoke Servo_ImportRule_GetSheet to get the child sheet. However,
Servo_ImportRule_GetSheet tries to lock the global rwlock with read
access, while Servo_CssRules_InsertRule has already locked the same
rwlock with write access for the CSSOM case.

Since the import rule itself is never needed in the code path, it is
easier to just pass in the child stylesheet.

MozReview-Commit-ID: 4njNyGniPIm

--HG--
extra : rebase_source : ad88929713fdc5a581addc044094fa8130125121
2017-04-03 16:18:49 +10:00
Xidorn Quan e3e4554871 Bug 1351957 - Create URLExtraData for holding base uri, referrer, and principal. r=heycam
MozReview-Commit-ID: 1wqTb3kvvWh

--HG--
extra : rebase_source : cae3dba21c916ab0f52056bd9db215249b650cd3
2017-03-30 18:54:48 +11:00
Manish Goregaokar d52216a79d Bug 1341648 - stylo: Include content rules from HTMLTableCellElement::WalkContentStyleRules ; r=bz
This also removes the TABLE_ATTRS_DIRTY optimization. Constructing nsMappedAttributes isn't really expensive and we do it all the time anyway.

MozReview-Commit-ID: 2krt1nFUzgl

--HG--
extra : rebase_source : 18d400aed6f427e5efc503b87b6ee2d9af74f3f5
2017-03-26 13:53:34 -07:00
Nazım Can Altınova e31083ac08 Bug 1351262 - Serialize unquoted font-family without quote r=manishearth
MozReview-Commit-ID: LY554sZxZyb

--HG--
extra : rebase_source : acfaafcee91db6775e033beff6fd94487aefa0a6
2017-03-30 21:15:57 +03:00
Xidorn Quan 12e077cda8 Bug 1345696 part 4 - Add function for sugar of nsCSSValue. r=manishearth
MozReview-Commit-ID: 9go3QDIXLgH

--HG--
extra : rebase_source : e656489567d9ab04d9abb07f5bbaea5d46480fb4
2017-03-28 11:52:14 +11:00
Xidorn Quan ee9e8c445d Bug 1345696 part 3 - Add FFI for nsCSSFontFaceRule. r=manishearth
MozReview-Commit-ID: GV1CWwFihw7

--HG--
extra : rebase_source : d1c56248f23a2b7513bff37b891ba67ce73da20e
2017-03-24 14:42:18 +11:00
Emilio Cobos Álvarez 3ed9e13ba8 Bug 1350140: stylo: Implement all the remaining state pseudo-classes. r=heycam
Also implements :link, :visited, and :any-link more efficiently, and stops
matching :-moz-read-only in everything that is not read-write, which is kind of
dumb, and probably creates some artifacts.

MozReview-Commit-ID: 6BQqi7nAWdT

--HG--
extra : rebase_source : 39dc6b481b3a92942dc3732990d8b9040d8e6d84
2017-03-24 00:45:07 +01: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
Hiroyuki Ikezoe ea9ccbbab2 Bug 1350754 - Add an FFI to check that a given (pseudo-) element has any type of animations or not. r=birtles,heycam
If an element has any type of animations in match_elements(), we need to call
UpdateEffectProperties() to update KeyframeEffectReadOnly::mProperties.

MozReview-Commit-ID: 1CDhwoM2llE

--HG--
extra : rebase_source : f2c476d579019079702b01fec375f75b4594dee9
2017-03-27 19:42:59 +09:00
Nazım Can Altınova f0404cbd9f Bug 1341763 - stylo: Add support for -moz-image-rect value r=manishearth
MozReview-Commit-ID: CjjX6SI3sWX

--HG--
extra : rebase_source : be56e929d5ed9b0253ae5777ca60e6c73a403222
2017-03-25 21:48:47 +03:00
Manish Goregaokar 9116206487 Bug 1341775 - Part 1: stylo: Calculate font-size keywords based on base size; r=heycam
MozReview-Commit-ID: Ff6kt8RLChI

--HG--
extra : rebase_source : 1d52cc24a4756ec4ef649bbe814eec5919dc206d
2017-03-17 19:48:20 -07:00
Bobby Holley 701a45ad75 Bug 1347435 - Don't resolve URLs at parse time for Stylo. r=emilio
It's a bit unfortunate the use separate implementations of SpecifiedUrl for Servo
and Gecko, but they're different enough at this point that I don't think it really
makes sense to try to share everything. Splitting them out has some nice
simplifications as well.

I recognize that there's still some potential correctness issues for Servo using
the resolved URI in various places where the original URI may be the right thing,
but I've got too much on my plate to look into that for now.

MozReview-Commit-ID: BeDu93TQ4Ow
2017-03-22 20:17:51 -07:00
Matt Brubeck 11b50c02a4 Bug 1337068 - stylo: :empty, :-moz-first-node, :-moz-last-node, and :-moz-only-whitespace. r=emilio
MozReview-Commit-ID: 5wEk8OQAFSP

--HG--
extra : rebase_source : fb395492e2e6551d3a9203d2dc87fbbb6c699682
extra : intermediate-source : ddffbd2d62ea066d1151c7127365c597c54aad01
extra : source : 1d34ee0e479f0b1f9f2662e08f73a54a736152f2
2017-03-22 09:18:34 -07:00
Nazım Can Altınova cc7bc8e08d Bug 1342139 - Implement gecko bindings for will-change r=xidorn
MozReview-Commit-ID: KNhVz9vjXUl

--HG--
extra : rebase_source : 20f5d2ec6c151e2d3024bcd11b5ca920158f5a93
2017-03-19 15:36:16 +03: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
Nazım Can Altınova 70ea60c038 Bug 1348873 - Change ServoType to uint64_t instead of uint16_t in EventStates r=emilio
MozReview-Commit-ID: GDP6XaL96ez

--HG--
extra : rebase_source : 6aa38ac64b3706961709b27d31903dc24405ee57
2017-03-20 18:54:54 +03:00
Hiroyuki Ikezoe 3b9f585232 Bug 1340958 - Put computed values into AnimationValueMap instead of hashtable in gecko. r=heycam
Before this patch, we store each computed values in a hashtable,
nsRefPtrHashtable<nsUint32HashKey, RawServoAnimationValue>, for all
KeyframeEffectReadOnly on an element, and convert the ServoAnimationValues of
the hashtable into an nsTArray<ServoAnimationValue*> and then convert
the ServoAnimationValues of the nsTArray into PropertyDeclarationBlock
in rust.  This way was really inefficient.
In this patch, we store the computed values into AnimationValueMap and
convert all AnimationValue in the map into PropertyDeclarationBlock
after EffectCompositor::GetAnimationRule.

MozReview-Commit-ID: EJ2Kl65fVeF

--HG--
extra : rebase_source : e30a9d440dc9855e21b94501b07a3501d31bc345
2017-03-17 13:23:21 +09:00
Manish Goregaokar 12b518aef0 Bug 1340696 - stylo: Support system colors; r=heycam
MozReview-Commit-ID: HUfTdcMRoEx

--HG--
extra : rebase_source : 85af717eb521a2c790d3ec7a20c46dd318e4761f
2017-03-15 14:49:35 -07:00
Manish Goregaokar 75a5e5853d Bug 1296477 - Part 3: stylo: Support counter-increment and counter-reset; r=heycam
MozReview-Commit-ID: DnSd8xAkidM

--HG--
extra : rebase_source : 34038cee5a99c3dac64abd9c2bed38ab49aa1461
2017-03-12 21:11:52 -07:00
Manish Goregaokar 8b8d456955 Bug 1296477 - Part 2: stylo: Implement remaining `content` values; r=heycam
MozReview-Commit-ID: 9fLM5bdR8hr

--HG--
extra : rebase_source : f1397129408e7e9763733c026855a99321b09656
2017-03-11 22:40:54 -08:00
Manish Goregaokar 471d940ebc Bug 1296477 - Part 1: stylo: Use ServoBundledURI everywhere else, fix from_ffi to handle the error case; r=heycam
MozReview-Commit-ID: DHNKLm3y5Gv

--HG--
extra : rebase_source : c5780ddc22169d9c908559c2eb94ca827d481e0b
2017-03-12 21:08:29 -07:00
Hiroyuki Ikezoe 2eb4e20a24 Bug 1341985 - Call UpdateAnimations even if the element has no computed values. r=birtles,heycam
MozReview-Commit-ID: 2dgAF7WOWxr

--HG--
extra : rebase_source : 8c2378d8d45484f206b4c890e89271fc95691ac3
2017-03-10 11:53:19 +09:00
Hiroyuki Ikezoe 5bfe316f81 Bug 1341985 - Skip update_animations if we have no running animations and the element becomes display:none. r=heycam
MozReview-Commit-ID: Ig81NKtXB85

--HG--
extra : rebase_source : 6d6d3f4794b83f5bc2b45bf2b6684f8c80064b32
2017-03-10 11:53:19 +09:00
Hiroyuki Ikezoe 96240dbfc8 Bug 1341985 - Update CSS animations in a SequentialTask. r=heycam
We create the SequentialTask only if:

* We have no old computed values and we have animation name style in the new
  computed values.
* Any animation properties is changed.
* display property is changed from 'none' and we have animation name style.
* display property is changed to 'none'.

In a subsequent patch we skip the SequentialTask if we have no running
animations and the display propery is changed to 'none'.

MozReview-Commit-ID: JRSZznufOS2

--HG--
extra : rebase_source : 566026c21c6357f77df55e3bd588835f5fd6c3d4
2017-03-10 11:53:19 +09:00
Hiroyuki Ikezoe 65b2567898 Bug 1341985 - Implement Gecko_StyleAnimationsEquals for checking nsStyleAutoArray<StyleAnimation> equality in servo side. r=heycam
Later we update CSS animations if this function returns false.

MozReview-Commit-ID: 27FsYQ40gSv

--HG--
extra : rebase_source : a043282de6c8a50ed53a92de98ecf93eb042f188
2017-03-10 11:53:17 +09:00
Manish Goregaokar 07fc7c5b25 Bug 1329093 - Part 1: stylo: Handle SVG presentation attributes; r=bz
MozReview-Commit-ID: 9cymo3c9HIn
2017-03-09 17:46:21 -08:00
Hiroyuki Ikezoe fe8cb62b44 Bug 1343751 - ensure_len() for nsStyleAutoArray<StyleTransition>. r=emilio
MozReview-Commit-ID: 2xCExdpldWQ

--HG--
extra : rebase_source : e327b4d2267899f30f361ccbfdc6fb63b04f66f4
2017-03-03 08:35:33 +09:00
Nazım Can Altınova ded05dd047 Bug 1340728 - stylo: add constructors for @font-face descriptors r=manishearth,SimonSapin
MozReview-Commit-ID: BL3uxlE1TmU

--HG--
extra : rebase_source : b2289af62d02e0cc1d3f84bb21077cd35d36c56b
extra : source : 8622f2e9ec9597e56e406aaff1856275b6d62db5
2017-02-18 02:15:55 +03:00
cku cfc6e5755f Bug 1336905 - Part 1. Remove StyleShapeSource's template argument. r=heycam,TYLin
MozReview-Commit-ID: FHTwGyXHsce

--HG--
extra : rebase_source : c043e4790bc2c84e4f3735a95c8ef0d9aa268986
extra : source : fb3c04effbd191767b1ff3e46c3c2d416ac8ee37
2017-02-21 23:26:17 +08:00