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

275 Коммитов

Автор SHA1 Сообщение Дата
Cameron McCormack ef98f7b9be Bug 1498755 - Part 10: Move list of Servo Boxed types to a separate header file r=emilio
Depends on D8651

Differential Revision: https://phabricator.services.mozilla.com/D8652

--HG--
extra : moz-landing-system : lando
2018-10-14 00:06:05 +00:00
Cameron McCormack cb8e3bb881 Bug 1498755 - Part 5: Split ServoCell out into a separate header, rename it, and clean it up a bit r=emilio
Depends on D8646

Differential Revision: https://phabricator.services.mozilla.com/D8647

--HG--
extra : moz-landing-system : lando
2018-10-14 00:05:54 +00:00
Cameron McCormack ab29a5a596 Bug 1498755 - Part 2c: Allow ServoBindings.h and GeckoBindings.h to be used separately r=emilio
Depends on D8643

Differential Revision: https://phabricator.services.mozilla.com/D8644

--HG--
extra : moz-landing-system : lando
2018-10-14 00:05:48 +00:00
Karl Tomlinson 9545786556 Bug 1492014 add AudioWorkletImpl/PaintWorkletImpl subclasses r=baku
This will be useful for AudioWorklet-specific storage and behavior.

PaintWorkletImpl is in layout/style, because it will be referenced
from CSS.cpp in the same directory.

Depends on D6108

Differential Revision: https://phabricator.services.mozilla.com/D6109
2018-09-20 11:34:01 +00:00
Emilio Cobos Álvarez b4bba4d593 Bug 1494622 - Remove nsDOMCSSRect. r=xidorn
Differential Revision: https://phabricator.services.mozilla.com/D7070
2018-09-27 16:11:44 +02:00
Emilio Cobos Álvarez 864a303a8c Bug 1494622 - Remove nsDOMCSSRGBColor. r=xidorn
Differential Revision: https://phabricator.services.mozilla.com/D7068
2018-09-27 16:11:42 +02:00
Narcis Beleuzu bf9a9a6b50 Backed out 13 changesets (bug 1492014) for multiple failures. a=backout
Backed out changeset f629b66a235f (bug 1492014)
Backed out changeset 0a8510efbba3 (bug 1492014)
Backed out changeset 2798792623cf (bug 1492014)
Backed out changeset 8818f5ae0d13 (bug 1492014)
Backed out changeset 0c6b469c9618 (bug 1492014)
Backed out changeset d1654231ffb8 (bug 1492014)
Backed out changeset 5a3967f37d3f (bug 1492014)
Backed out changeset ac095c2fdd8b (bug 1492014)
Backed out changeset 4d1ba44e30ab (bug 1492014)
Backed out changeset e34938a11fab (bug 1492014)
Backed out changeset 3e142ea44140 (bug 1492014)
Backed out changeset b0f2fafdba8c (bug 1492014)
Backed out changeset d77330a1cbfa (bug 1492014)
2018-09-25 16:26:04 +03:00
Karl Tomlinson b4ae5484b7 Bug 1492014 add AudioWorkletImpl/PaintWorkletImpl subclasses r=baku
This will be useful for AudioWorklet-specific storage and behavior.

PaintWorkletImpl is in layout/style, because it will be referenced
from CSS.cpp in the same directory.

Depends on D6108

Differential Revision: https://phabricator.services.mozilla.com/D6109

--HG--
extra : moz-landing-system : lando
2018-09-20 11:34:01 +00:00
Brian Birtles f65cdf6190 Bug 1487195 - Add BUG_COMPONENT metadata for new "Core :: CSS Transitions and Animations" component; r=hiro
Differential Revision: https://phabricator.services.mozilla.com/D4742

--HG--
extra : moz-landing-system : lando
2018-09-02 23:47:52 +00:00
Emilio Cobos Álvarez 583727a597 Bug 1478813 - Auto-generate ServoStyleConsts. r=xidorn,ted
Differential Revision: https://phabricator.services.mozilla.com/D2447
2018-08-17 19:48:23 +02:00
Cosmin Sabou a1dcf34f94 Backed out changeset 4b9dcf8f2e6c (bug 1478813) for build bustages because cbindgen is missing. CLOSED TREE 2018-08-17 20:24:06 +03:00
Emilio Cobos Álvarez 1e9ffcebe9 Bug 1478813 - Auto-generate ServoStyleConsts. r=xidorn,ted
Differential Revision: https://phabricator.services.mozilla.com/D2447
2018-08-17 19:02:34 +02:00
Emilio Cobos Álvarez f48df04e5b Bug 1478330: Generate StyleDisplay using cbindgen. r=heycam
We use the same setup WR uses, which is checking-in the files.

But I think it's much better than keeping the two things in sync manually :)

When you add a new value, you need to add it to the rust source, then run the
command, but since it doesn't need to build the style crate (it uses the Rust
AST, doesn't build) there's no problem.

Differential Revision: https://phabricator.services.mozilla.com/D2354

MozReview-Commit-ID: DnXkNAzP54H
2018-07-26 17:06:05 +02:00
shindli a007b2dc62 Backed out changeset 230ea1f373ff (bug 1478330) for Linting failure on a CLOSED TREE 2018-07-26 16:49:19 +03:00
Emilio Cobos Álvarez 42a2ddb5b9 Bug 1478330: Generate StyleDisplay using cbindgen. r=heycam
We use the same setup WR uses, which is checking-in the files.

But I think it's much better than keeping the two things in sync manually :)

When you add a new value, you need to add it to the rust source, then run the
command, but since it doesn't need to build the style crate (it uses the Rust
AST, doesn't build) there's no problem.

Differential Revision: https://phabricator.services.mozilla.com/D2354

MozReview-Commit-ID: DnXkNAzP54H
2018-07-26 15:35:24 +02:00
Emilio Cobos Álvarez 5bb3038c05 Bug 1475511: UrlMatchingFunction -> DocumentMatchingFunction. r=xidorn
MozReview-Commit-ID: HLcaVmehFW7
2018-07-21 23:02:12 +02:00
Xidorn Quan dca9867a8f Bug 1471114 part 2 - Generate ComputedStyleMap entry list from property data. r=emilio
This changes the order of properties returned from gCS. The old order
doesn't make much sense, and other browsers don't agree on an identical
order either, so it should be trivial to change it. Also the spec isn't
super clear / useful in this case.

Several -moz-prefixed properties are excluded from the list due to their
being internal. I suspect they are never accessible anyway, so probably
nothing gets changed by this.

MozReview-Commit-ID: 9LfangjpJ3P

--HG--
extra : source : 879a7265c35f51c5954d8a44ccd374a606ecba0e
2018-06-27 15:34:29 +10:00
Emilio Cobos Álvarez 47ebd819b3 Bug 1449806: Merge {Servo,Generic}SpecifiedValues into MappedDeclarations. r=xidorn
The idea would be that this header is only included in cpp files, thus it's ok
to include ServoBindings, etc.

MozReview-Commit-ID: EgQEsR0cZd4
2018-06-25 11:14:39 +02:00
Xidorn Quan 1f1e9d6d8f Bug 1418874 part 4 - Remove nsCSSScanner. r=emilio
MozReview-Commit-ID: 9sgOd243771

--HG--
extra : rebase_source : 2ade7be1065920d0fd1f5565bdfae799306a8110
2018-06-14 20:13:44 -07:00
Xidorn Quan 38a8db3cca Bug 1418874 part 3 - Remove CSSLexer and related stuff. r=emilio,tromey
MozReview-Commit-ID: 2DuHpc3HfmB

--HG--
extra : rebase_source : 9718a8fd7350e33c36fc2307caf49241050800c1
2018-06-14 18:12:02 -07:00
Nazım Can Altınova 92dbfe6a5d Bug 1451289 - Part 11: Merge ServoFontFeatureValuesRule and CSSFontFeatureValuesRule r=emilio
MozReview-Commit-ID: 9aXGCHdkZwp

--HG--
extra : rebase_source : f354c915cd38168ba8be3cc11626bc3457b95aa4
2018-06-06 16:10:47 +02:00
Nazım Can Altınova 60852e7cad Bug 1451289 - Part 10: Merge ServoImportRule and CSSImportRule r=emilio
MozReview-Commit-ID: JvHNGoX4AUF

--HG--
extra : rebase_source : 3d30ee1278f035bd480c05ec0d8f35d4a31cf3c7
2018-06-06 15:31:33 +02:00
Nazım Can Altınova 57afced2fc Bug 1451289 - Part 9: Merge ServoDocumentRule and CSSMozDocumentRule r=emilio
MozReview-Commit-ID: BkMMXBWdsfz

--HG--
extra : rebase_source : e14b5907769f45bb109ed4db08b2b3b444eb9c9f
2018-06-05 17:16:51 +02:00
Nazım Can Altınova 96428ffd26 Bug 1451289 - Part 8: Merge ServoSupportsRule and CSSSupportsRule r=emilio
MozReview-Commit-ID: HX6NJNGJi0p

--HG--
extra : rebase_source : 02b885d8dc5eb7c0c31989ccc291973193220a59
2018-06-05 15:17:08 +02:00
Nazım Can Altınova 77fad93235 Bug 1451289 - Part 7: Merge ServoPageRule and CSSPageRule r=emilio
MozReview-Commit-ID: 5kqMLZWXFN5

--HG--
extra : rebase_source : 1ef8e31634b1be81c0df3c36bb56d13f7be9a9a2
2018-06-05 13:39:42 +02:00
Nazım Can Altınova 7849dbc1a0 Bug 1451289 - Part 6: Rename ServoCounterStyleRule to CSSCounterStyleRule r=emilio
MozReview-Commit-ID: 4T4FMJAp9WV

--HG--
rename : layout/style/ServoCounterStyleRule.cpp => layout/style/CSSCounterStyleRule.cpp
rename : layout/style/ServoCounterStyleRule.h => layout/style/CSSCounterStyleRule.h
extra : rebase_source : d007c517b93c7feef2a1afd0a6c9e77ff856dfc4
2018-06-05 02:07:25 +02:00
Nazım Can Altınova be5df6059a Bug 1451289 - Part 5: Rename ServoFontFaceRule to CSSFontFaceRule r=emilio
MozReview-Commit-ID: 9S7aW0373NL

--HG--
rename : layout/style/ServoFontFaceRule.cpp => layout/style/CSSFontFaceRule.cpp
rename : layout/style/ServoFontFaceRule.h => layout/style/CSSFontFaceRule.h
extra : rebase_source : 60bafd052315c4a9764c6ccc408868b0b840d504
2018-06-05 01:55:11 +02:00
Nazım Can Altınova 425f4c7a17 Bug 1451289 - Part 4: Rename ServoStyleRule to CSSStyleRule r=emilio
MozReview-Commit-ID: L0IH55XNdyE

--HG--
rename : layout/style/ServoStyleRule.cpp => layout/style/CSSStyleRule.cpp
rename : layout/style/ServoStyleRule.h => layout/style/CSSStyleRule.h
extra : rebase_source : 6c27605c579daf76393edf0d4677e0bfa7c9693d
2018-06-04 15:35:50 +02:00
Nazım Can Altınova 772ef770c8 Bug 1451289 - Part 3: Merge ServoMediaRule and CSSMediaRule r=emilio
MozReview-Commit-ID: I7vpKO4LFt4

--HG--
extra : rebase_source : fc3ff2abee2cdc5006da741e717a618b2d3a94ef
2018-06-04 14:14:47 +02:00
Nazım Can Altınova 92aa0e63d1 Bug 1451289 - Part 2: Merge ServoKeyframesRule and CSSKeyframesRule r=emilio
MozReview-Commit-ID: FVwVgQZ0B6Q

--HG--
extra : rebase_source : b10e638097a27e581f9c8b95ae8e21ec7b7ac175
2018-06-04 12:09:11 +02:00
Nazım Can Altınova 6cdcd1d100 Bug 1451289 - Part 1: Merge ServoNamespaceRule and css::CSSNamespaceRule r=emilio
MozReview-Commit-ID: D5kU7f0hluL

--HG--
rename : layout/style/ServoNamespaceRule.cpp => layout/style/CSSNamespaceRule.cpp
extra : rebase_source : 9fd5cb862b6f606b056e935c75655415f40c9b64
2018-06-01 12:35:39 +02:00
Nazım Can Altınova 361380987c Bug 1464496 - Part 1: Merge ServoDeclarationBlock and DeclarationBlock r=emilio
MozReview-Commit-ID: By9fV70Oq0K

--HG--
extra : rebase_source : 837afe9c33b21d7db41ff19d3aaf6cf3e9eedbdf
2018-05-30 18:15:25 +02:00
Xidorn Quan 5896b33074 Bug 1461933 - Remove ServoBindings.h from ComputedStyleInline.h. r=emilio
For doing this, ServoComputedData is split into separate files, so that
files don't need to include ServoBindings.h just for accessing style
structs from ComputedStyles.

MozReview-Commit-ID: DPAd7PUUCl9

--HG--
extra : rebase_source : 7d6f739b7fb58a46e1624ba62e717412057ea9c1
2018-05-16 15:35:59 +10:00
Dan Glastonbury ee3d63760a Bug 1457810: Move CalcComplexColor to StyleComplexColor. r=xidorn
Move from nsStyleColor::CalcComplexColor to StyleComplexColor::CalcColor.

MozReview-Commit-ID: FkYovvPZLc8

--HG--
extra : rebase_source : 54f1966e0ef9258f20e954cd6250774008eca04c
2018-05-09 17:03:02 +10:00
Xidorn Quan bd99a99f09 Bug 1454591 part 2 - Refactor GenerateCSSPropsGenerated.py. r=heycam
This removes the extra template file and uses the script to generate
the whole nsCSSPropsGenerated.inc file directly, because it doesn't
seem to really make much sense to have them separate.

One behavior change to this refactor is that, the static assertions
no longer include aliases. Other parts of the generated data all ignore
aliases, so checking property id of aliases isn't really useful. It
makes the code simpler everywhere to just strip aliases from the list
at the very beginning.

MozReview-Commit-ID: BYYvnCOqJwC

--HG--
extra : rebase_source : d683f2dd54e38c6b580435568820c8bc3f52cd70
2018-05-04 14:37:41 +10:00
Emilio Cobos Álvarez 30faf7ea5d Bug 1457920: Remove ServoStyleSheet.{h,cpp}. r=xidorn
MozReview-Commit-ID: 1T39DoLUBZk
2018-05-02 04:13:28 +02:00
Xidorn Quan b50ebda124 Bug 1448759 part 5 - Remove nsCSSPropList.h and nsCSSPropAliasList.h. r=heycam
MozReview-Commit-ID: EKx2g7CmvqB

--HG--
extra : rebase_source : 11ba4920129e22bd6469b2e89cd6e738d2d921b5
2018-04-29 22:09:17 +10:00
Xidorn Quan 43eb5c8140 Bug 1456364 part 4 - Convert CSS_PROPERTY_* flags to a typed enum flags. r=emilio
MozReview-Commit-ID: 4mLPe5cH80N
2018-04-26 16:24:33 +02:00
Emilio Cobos Álvarez f8233b4454 Bug 1456471: Remove nsCSSParser.h. r=xidorn
MozReview-Commit-ID: 4qa7llzCXeR
2018-04-25 10:38:37 +02:00
Emilio Cobos Álvarez ec8bd0a587 Bug 1456471: Unify MediaList and ServoMediaList. r=xidorn
MozReview-Commit-ID: KFWxoohpGlb
2018-04-25 10:37:04 +02:00
Xidorn Quan 436522b308 Bug 1454831 followup - Fix bustage on a CLOSED TREE. 2018-04-19 21:08:09 +10:00
Xidorn Quan e723f6b291 Bug 1454831 - Generate nsCSSPropertyID.h from data file directly. r=emilio
MozReview-Commit-ID: CcX2uzgjWFo

--HG--
rename : layout/style/nsCSSPropertyID.h => layout/style/nsCSSPropertyID.h.in
extra : rebase_source : 441f22dbe019f6ebc879fd21c0dc3d0f6f9cb63a
2018-04-18 19:39:51 +10:00
Xidorn Quan a8cc0738f6 Bug 1452542 part 6 - Replace uses of PythonCSSProps.h with the data file generated from Servo. r=froydnj
Some content in Makefile.in is removed because after this change, the
scripts no longer invoke the preprocessor and thus don't have unknown
dependencies anymore outside what is provided in their inputs array.

The order of exports.PREFERENCES in properties-db changes because the
data file has shorthands placed after longhands. The only usage of it
is in test_css-properties-db.js which doesn't care about the order.

MozReview-Commit-ID: AMjzTRf2HYN

--HG--
extra : rebase_source : 7976e48e7c7bba467d77a34ab0d7709cde1ecdf4
2018-04-17 14:40:12 +10:00
Xidorn Quan 113e4d2010 Bug 1452542 part 5 - Generate property list from Servo data. r=emilio,froydnj
With this change, we first generate a data file ServoCSSPropList.py from
Servo data, and then use this data to generate ServoCSSPropList.h.

This change itself serves as a checkpoint with a runtime check that all
information generated from Servo side matches what we have in the Gecko
side. Following patches will start replacing uses of nsCSSPropList.h
with either the data file or the header file.

The reason that it generates data file rather than header directly is
that, many users of PythonCSSProps.h invokes C++ preprocessor manually
to extract data from nsCSSPropList.h without passing in search paths,
so it is non-trivial to replace the use of nsCSSPropList.h there with
a generated header. Generating a Python data file would hopefully
simplify those users rather than adding more complexity to them.

I also thought about generating JSON rather than plain Python file, but
JSON doesn't allow trailing comma in array, which makes it less pretty
to generate via mako template.

MozReview-Commit-ID: CwK2oL88r6F

--HG--
extra : rebase_source : aaf98cfd768740fdd6ac4961fc825d84adaf94a5
2018-04-16 14:08:20 +10:00
Andreea Pavel 1b610a02c9 Backed out 7 changesets (bug 1452542) for failing toolkit/content/tests/chrome/test_arrowpanel.xul on a CLOSED TREE
Backed out changeset f206acff283f (bug 1452542)
Backed out changeset be97e652391f (bug 1452542)
Backed out changeset 4d3a028edaed (bug 1452542)
Backed out changeset 5619bba37cdd (bug 1452542)
Backed out changeset e83a797bdc61 (bug 1452542)
Backed out changeset 255e2feff19f (bug 1452542)
Backed out changeset fac55b1a0706 (bug 1452542)
2018-04-18 20:10:35 +03:00
Xidorn Quan ddcc60ec27 Bug 1452542 part 6 - Replace uses of PythonCSSProps.h with the data file generated from Servo. r=froydnj
Some content in Makefile.in is removed because after this change, the
scripts no longer invoke the preprocessor and thus don't have unknown
dependencies anymore outside what is provided in their inputs array.

The order of exports.PREFERENCES in properties-db changes because the
data file has shorthands placed after longhands. The only usage of it
is in test_css-properties-db.js which doesn't care about the order.

MozReview-Commit-ID: AMjzTRf2HYN

--HG--
extra : rebase_source : f9db0659a81bea28b335806ac70e23dc0d36e493
2018-04-17 14:40:12 +10:00
Xidorn Quan 4eca80828d Bug 1452542 part 5 - Generate property list from Servo data. r=emilio,froydnj
With this change, we first generate a data file ServoCSSPropList.py from
Servo data, and then use this data to generate ServoCSSPropList.h.

This change itself serves as a checkpoint with a runtime check that all
information generated from Servo side matches what we have in the Gecko
side. Following patches will start replacing uses of nsCSSPropList.h
with either the data file or the header file.

The reason that it generates data file rather than header directly is
that, many users of PythonCSSProps.h invokes C++ preprocessor manually
to extract data from nsCSSPropList.h without passing in search paths,
so it is non-trivial to replace the use of nsCSSPropList.h there with
a generated header. Generating a Python data file would hopefully
simplify those users rather than adding more complexity to them.

I also thought about generating JSON rather than plain Python file, but
JSON doesn't allow trailing comma in array, which makes it less pretty
to generate via mako template.

MozReview-Commit-ID: CwK2oL88r6F

--HG--
extra : rebase_source : 926cca8548d42ecb0dd364ea5c52a46a4973e819
2018-04-16 14:08:20 +10:00
Xidorn Quan 2186981cee Bug 1454299 - Remove ServoPropPrefList.h. r=emilio
MozReview-Commit-ID: 5wbFNahv4BW

--HG--
extra : rebase_source : 709d7e7ac2dabc6afa70c2441bb22a5544e69a4c
extra : source : 6521d2b9db63bed2386792ba33b45e083bdb6360
2018-04-16 18:59:23 +10:00
Xidorn Quan d7f3530f07 Bug 1449068 part 2 - Use Servo data to back @counter-style rule. r=emilio
This patch basically does:
* Add descriptor setters and generation count to CounterStyleRule in
  Servo. (This code is mostly based on the old code inside
  nsCSSCounterStyleRule for handling mutation.)
* Use RawServoCounterStyleRule in CounterStyleManager.
* Add ServoCounterStyleRule and remove nsCSSCounterStyleRule.

Test change:
* "fixed" was parsed as and thus serialized to "fixed 1", but Servo
  doesn't do so. It preserves whether the number presents. Either way
  is probably fine.

MozReview-Commit-ID: EtKTeu32isi

--HG--
extra : rebase_source : ec44f01c581003ce4b6ef69435a05de7f3da5469
2018-04-05 08:41:28 +10:00
Xidorn Quan 67fd806b66 Bug 1449087 part 2 - Use Servo data to back @font-face rule. r=emilio
This patch does the following things:
* Create a new class ServoFontFaceRule for CSSOM of @font-face rule
  which mostly follows how nsCSSFontFaceRule was implemented.
* Remove the old nsCSSFontFaceRule and binding code to create it.
* Have FontFace backed by Servo data via making mRule and mDescriptors
  of the class hold RawServoFontFaceRule like ServoFontFaceRule.

To keep this patch small, it effectively just delays the conversion
from Servo data to nsCSSValue from parsing to using. This may cause
worse performance if the font set is flushed repeatedly. Supposing we
don't flush font set very frequently, it may not be a big deal.

We may still want to remove the intermediate nsCSSValue conversion at
some point, and have everything converted to their final form directly
when used, but that can happen in followups.

There are some unfortunate bits from this change:
* We lose style sheet for logging in FontFaceSet. This is probably not
  all that worse, because we wouldn't have that before either if the
  page doesn't use CSSOM to visit it. But we should figure out some
  approach to fix it anyway.
* InspectorFontFace no longer shares the same rule object as CSSOM.
  This isn't really a problem if the @font-face rule isn't very mutable.
  Unless we want to make the rule returned from InspectorFontFace to be
  mutable (i.e. via inspector), not using the same object probably isn't
  too bad.

This patch switches the code we use to serialize stuff in FontFace and
CSSFontFaceRule, which leads to some failures in tests. Specifically,
the expected changes including:
* Value of font-family now can be serialized to identifier sequence like
  font-family property. The old code always serializes it to string,
  but it doesn't seem to have different requirement than the property.
  Blink can serialize to identifier as well.
* Family name inside local() is also changed to use the same way as
  family names elsewhere (i.e. can be identifier sequence). Blink has
  the same behavior as the old code, but I don't think it's a big deal.
* The order of descriptors serialized gets changed. I don't think it
  matters at all.
* Empty string as font-family via using string syntax is no longer
  considered invalid for FontFace. I don't find it is mentioned anywhere
  that it should be specifically treated invalid.


MozReview-Commit-ID: 32Fk3Fi9uTs

--HG--
extra : rebase_source : 6221ec8fc56de357b06dd27e770fb175348a2f77
2018-04-04 08:42:10 +10:00