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

893 Коммитов

Автор SHA1 Сообщение Дата
Emilio Cobos Álvarez 6c81e2e79c Bug 1479450: Convert GetStringValue to use Servo. r=xidorn
And remove gPropertyTable / kCSSRawProperties while at it.

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

MozReview-Commit-ID: 8U87BcBkrJF
2018-07-31 12:05:00 +02:00
Emilio Cobos Álvarez 2996813963 Bug 1479450: Implement nsCSSProps::LookupProperty using Rust. r=xidorn
Always assume allowed-for-all-content. There are a couple callers which weren't
doing that:

 * A unit test -> removed.

 * ComputeAnimationDistance: Used for testing (in transitions_per_property), and
   for the animation inspector. The animation inspector shouldn't show
   non-enabled properties. The transitions_per_property test already relies on
   getComputedStyle stuff which only uses eForAllContent.

 * GetCSSImageURLs: I added this API for the context menu page and such. It
   doesn't rely on non-enabled-everywhere properties, it was only using
   eInChrome because it was a ChromeOnly API, but it doesn't really need this.

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

MozReview-Commit-ID: 4VOi5Su3Bos
2018-07-31 12:00:15 +02:00
Andreea Pavel 8a01d542af Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2018-07-25 18:10:55 +03:00
Julian Descottes 6aa9e3336e Bug 1443923 - part4: Expose isCustomElementName to DevTools via InspectorUtils;r=emilio
MozReview-Commit-ID: GaHP1gOCwoB

--HG--
extra : rebase_source : ee275d6643300e09a92e79c3aa0b84a3b96d5581
2018-07-19 13:59:05 +02:00
Boris Zbarsky 75abc43e0d Bug 1476145 part 8. Stop using getInterface(nsIDOMWindowUtils) in various test code. r=kmag 2018-07-24 19:47:43 -04:00
Emilio Cobos Álvarez 933b132563 Bug 1475997: Improve missed rule mapping crash message. r=xidorn
MozReview-Commit-ID: IR2SYahrK5r
2018-07-17 16:24:00 +02:00
Andi-Bogdan Postelnicu 5e3e0d4498 Bug 1453795 - Layout - Initialize member fields in classes/ structures. r=dbaron 2018-07-12 09:42:14 +03:00
Cameron McCormack 48fe6dbe69 Bug 1472065 - Initialize mSheet and mParentRule in css::Rule's constructor. r=xidorn
MozReview-Commit-ID: JI3cMiJaH3x

--HG--
extra : rebase_source : 3f45a63c8817df9550c5c638ad5b978421fa051c
2018-06-29 12:56:09 +10:00
Jeff Gilbert 5b753da289 Bug 1470325 - s/FooBinding/Foo_Binding/g - r=qdot
MozReview-Commit-ID: JtTcLL5OPF0
2018-06-26 17:05:01 -07:00
Chris Peterson 2afd829d0f Bug 1469769 - Part 6: Replace non-failing NS_NOTREACHED with MOZ_ASSERT_UNREACHABLE. r=froydnj
This patch is an automatic replacement of s/NS_NOTREACHED/MOZ_ASSERT_UNREACHABLE/. Reindenting long lines and whitespace fixups follow in patch 6b.

MozReview-Commit-ID: 5UQVHElSpCr

--HG--
extra : rebase_source : 4c1b2fc32b269342f07639266b64941e2270e9c4
extra : source : 907543f6eae716f23a6de52b1ffb1c82908d158a
2018-06-17 22:43:11 -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 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 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
Xidorn Quan 76b6f154a2 Bug 1465628 part 2 - Add InspectorUtils API for getting property preferences. r=emilio
MozReview-Commit-ID: G3ZjnC4cTKD

--HG--
extra : rebase_source : c1795326b8ef0af46b624d07516edad032e95547
2018-05-31 14:11:01 +10:00
Dorel Luca 6780acc0ad Backed out 4 changesets (bug 1465628) for Eslint failure. CLOSED TREE
Backed out changeset 04f276eb2f0e (bug 1465628)
Backed out changeset e9cdff122793 (bug 1465628)
Backed out changeset 6832baa28e3f (bug 1465628)
Backed out changeset e5ac0c7a9fb4 (bug 1465628)
2018-06-05 04:00:30 +03:00
Xidorn Quan 360c0bf77a Bug 1465628 part 2 - Add InspectorUtils API for getting property preferences. r=emilio
MozReview-Commit-ID: G3ZjnC4cTKD

--HG--
extra : rebase_source : 1cf5eb1509b8d8c9e773b03bb73b0ee141ffb01c
2018-05-31 14:11:01 +10:00
Jonathan Kew ad2647f459 Bug 1463115 - Try to skip irrelevant (collapsed/trimmed) whitespace when collecting used font faces for devtools inspector. r=jwatt 2018-05-24 14:44:09 +01:00
Jonathan Kew d4b7d95206 Bug 1464400 - Keep track of CSS generics when resolving to actual font families and faces, and expose as a new CSSGeneric attribute on InspectorFontFace. r=jwatt 2018-05-25 14:07:57 +01:00
Jonathan Kew 6e425cf382 Backed out changeset 36687c035662 (bug 1463115) for frequent mochitest failures on Linux-debug 2018-06-01 18:03:13 +01:00
Brindusan Cristian 2c5b7db570 Backed out changeset f8dbb1d2d07c (bug 1464400) for mochitest failures on test_font_whitelist.html. CLOSED TREE 2018-06-01 19:07:24 +03:00
Jonathan Kew 0cc7412d4f Bug 1464400 - Keep track of CSS generics when resolving to actual font families and faces, and expose as a new CSSGeneric attribute on InspectorFontFace. r=jwatt 2018-05-25 14:07:57 +01:00
Jonathan Kew ca7c5f1e17 Bug 1463115 - Try to skip irrelevant (collapsed/trimmed) whitespace when collecting used font faces for devtools inspector. r=jwatt 2018-05-24 14:44:09 +01:00
Emilio Cobos Álvarez aa934dea20 Bug 1465107: Remove isStyledByServo. r=xidorn
MozReview-Commit-ID: 8HWBH9kWyxV
2018-05-30 10:04:18 +02:00
Boris Zbarsky 54fad5efa0 Bug 1455676 part 7. Remove nsIDOMNode usage from layout/inspector/. r=qdot 2018-05-29 22:58:48 -04: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
Adrian Wielgosik f1457c6874 Bug 1460940 - Remove nsIDOMDocument uses in layout/. r=bz
MozReview-Commit-ID: KixJ5edlCjl

--HG--
extra : rebase_source : 677049bc7eb131dc86ed468eb8a6b06085f2c17d
2018-05-11 19:46:15 +02:00
Jonathan Kew 288d62fe84 Bug 1427660 - patch 1 - Make gfxTextRange::MatchType an enum class for stronger type checking (no functional change). r=lsalzman 2018-05-11 08:56:12 +01:00
Emilio Cobos Álvarez a5e7a3aec3 Bug 509958: Unprefix :-moz-selection. r=dbaron,xidorn
Our implementation is totally not what the spec says, but totally what other
UAs do, see https://github.com/w3c/csswg-drafts/issues/2474.

So given this is causing webcompat pain, I think we should be pragmatic and just
unprefix this.

We could keep serialization and getComputedStyle with ::selection working with a
bit more effort, like we do for :-moz-placeholder, but I'd prefer not doing at
least the serialization bit, and just alias in nsCSSPseudoElements
:-moz-selection to selection too.

MozReview-Commit-ID: 6lxctozRDqv
2018-05-10 17:19:25 +02:00
Emilio Cobos Álvarez c556ec7ad0 Bug 1457920: Remove ServoStyleSheet usage. r=xidorn
MozReview-Commit-ID: LIBkovuQ6MB
2018-05-02 04:13:26 +02:00
Emilio Cobos Álvarez bf64474d79 Bug 1457920: Remove StyleSheet::AsServo. r=xidorn
MozReview-Commit-ID: IkkJvUFHykk
2018-05-02 04:13:21 +02:00
Emilio Cobos Álvarez 2a42c4ed18 Bug 1457920: Merge ServoStyleSheet and StyleSheet. r=xidorn
These are the most minimal changes I could make. More cleanups incoming.

MozReview-Commit-ID: AdMOA1acQIH
2018-05-02 04:13:10 +02:00
Xidorn Quan 5050b395ae Bug 1434130 part 13 - Use Servo code to back GetCSSValuesForProperty. r=emilio,gl
This causes various changes to properties-db.js and also many devtools
tests get updated.

There are two changes affect multiple tests:

* `calc` gets removed from everywhere. We never have it listed in all
  properties which deserve it, and doing so without much false positive
  (i.e. properties don't deserve but get it) can be pretty tricky.
  So they are just removed for now.

* The complete color keyword list is no longer included, and instead,
  "COLOR" is prepended to the list directly. We can probably remove
  the related code which replaces color keywords with "COLOR" from
  devtools. Note that, with stylo enabled, the list is already unrelated
  to what the parsing code uses. We should eventually re-enable the
  disabled test here after we can get the color list from cssparser
  in bug 1456715.

Other changes to properties-db.js seem to be valid, some of them also
affect tests:

* `{-webkit-,}align-{content,items,self}` get `first baseline`, `safe`,
  `unsafe`, and lose `left` and `right`.

* `{-moz-,-webkit-,}{animation,transition}{,-timing-function}` has a
  new `frame` keyword which is a function value in `<timing-function>`.

* `{background,{-webkit-,}mask}-position-x` lose `top` and `bottom`, and
  correspondingly `{background,{-webkit-,}mask}-position-y` lose `left`
  and `right`.  They don't deserve those values.

* `{background,{-webkit-,}mask}{,-size}` get `auto`.

* `border` shorthand loses `<image>` values as well as other keyword
  values for `border-image-*` subproperties, because they aren't parsed
  on the shorthand.

* `{-moz-,}border-image{,-width}` get `auto`.

* `-moz-context-properties` gets `none`.

* `cursor` get some -moz-prefixed values as well as `url`.

* `fill` and `stroke` get the color keywords.

* `{-webkit-,}filter` get the keywords and function names.

* `font` shorthand loses values from many of `font-variant-*` properties
  because they are not parsed there.

* `font-variant` and `font-variant-alternates` get function values of
  the longhand.

* `font-variant-{east-asian,ligatures,numeric}` get `normal`, and
  `font-variant-ligatures` in addition gets `none`.
  `font-{feature,variation}-settings` also get `normal`.

* `grid` and `grid-template-{areas,columns,rows}` get `none`.

* `grid`, `grid-template`, and `grid-template-{columns,rows}` get
  `auto`, `fit-content`, `minmax`, and `repeat`.

* `grid-auto-{columns,rows}` get `auto`, `fit-content` and `minmax`.

* `-moz-image-region` gets `auto` and `rect`.

* `{-webkit-,}justify-content` lose `baseline`, `last baseline`, and
  get `safe` and `unsafe`.

* `{justify,place}-items` get `first baseline`, `legacy`, `safe`,
  `unsafe` and lose `auto`.

* `{justify,place}-self` and `place-content` get `first baseline`,
  `safe`, and `unsafe`.

* `outline{,-style}` get `hidden`.

* `scroll-snap-coordinate` gets `none`, and `scroll-snap-points-{x,y}`
  gets `none` and `repeat`.

* `shape-outside`, `text-emphasis{,-style}` get all the keyword values
  and function names they deserve.

* `stroke-dasharray` gets `none`.

* `text-combine-upright` drops `digits` which we never implemented.

* `{-moz-,-webkit-,}transform` and `-moz-window-transform` get their
  transform function list. `accumulatematrix` and `interpolatematrix`
  aren't real CSS value but they have `#[css(function)]` specified.
  We should probably remove them at some point.

* `will-change` gets `auto`.

* All properties accept `<image>` value now gets -webkit-prefixed
  gradient function names, including
  * `background{,-image}`,
  * `{-moz-,-webkit-,}border-image{,-source}`, and
  * `{-webkit-,}mask{,-image}`.

MozReview-Commit-ID: E7Y0CFUFYgW

--HG--
extra : source : bab732c8c531cfca1bcd233f769c25bb2e373773
2018-04-29 09:03:31 +10:00
Boris Zbarsky 93af0eea13 Bug 1455674 part 14. Remove use of nsIDOMElement in layout. r=qdot 2018-04-26 23:37:33 -04: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
Xidorn Quan 9684819902 Bug 1456364 part 2 - Remove PropertyParseType. r=emilio
MozReview-Commit-ID: 3JDLVKJAlpv
2018-04-26 16:24:31 +02:00
Adrian Wielgosik b3c501adc4 Bug 1447389 - Remove nsIDOMNodeList. r=bz
MozReview-Commit-ID: 11szZP6dS6V

--HG--
extra : rebase_source : 9acfb352750e53d3b36684fa945a18e817c9b82e
2018-04-25 23:01:30 +02:00
Andreea Pavel a21531022b Merge mozilla-inbound to mozilla-central. a=merge
--HG--
rename : toolkit/components/extensions/test/xpcshell/test_ext_browserSettings.js => toolkit/components/extensions/test/xpcshell/test_ext_proxy_config.js
2018-04-26 09:04:59 +03:00
Xidorn Quan cd1312cc66 Bug 1455576 part 3 - Use Servo side data to back InspectorUtils::CssPropertySupportsType. r=emilio
The only difference in the final result is "all" shorthand, for which
the original result is wrong because "all" shorthand doesn't accept any
value other than the CSS-wide keywords.

MozReview-Commit-ID: BmT7kGwC0ZQ

--HG--
extra : rebase_source : 094d764007359cb928f4c31a3818448f254a4043
extra : source : 10d25cf7b4ff2b5615a638031f98dc6163708545
2018-04-26 09:01:02 +10:00
Xidorn Quan 7c40b966d3 Bug 1455576 part 1 - Shrink the list of CSS_TYPES in devtools to only those being used. r=tromey
It seems to me that only the remaining three types are actually used by
the devtools, so I remove other types to reduce the scope.

MozReview-Commit-ID: 5mm3nl9qOyQ

--HG--
extra : rebase_source : 3af817ced34fdd08df8d18e25d3834eb19a21652
extra : source : 452a68930d96300a0ac35f1a261f72a2fa04e513
2018-04-26 09:01:02 +10:00
Jonathan Kew 09db752ead Skip tests that don't work on current testing infrastructure because OS versions are too old for variation-font functionality. No bug, r=jmaher on a CLOSED TREE 2018-04-25 15:27:08 +01:00
Emilio Cobos Álvarez f8233b4454 Bug 1456471: Remove nsCSSParser.h. r=xidorn
MozReview-Commit-ID: 4qa7llzCXeR
2018-04-25 10:38:37 +02:00
Dorel Luca 65669dae30 Merge mozilla-inbound to mozilla-central. a=merge 2018-04-21 02:00:04 +03:00
Xidorn Quan 2fe625751b Bug 1448757 part 1 - Add more filters for InspectorUtils.getCSSPropertyNames. r=heycam
MozReview-Commit-ID: 4io5CRLE7op

--HG--
extra : rebase_source : bcb3fe53647ee3c0526decff7ad30ac7da0b11d6
2018-04-20 13:42:14 +10:00
Emilio Cobos Álvarez ec2824c99f Bug 1452143: Make InspectorUtils.getAllStyleSheets handle Shadow DOM, and also optionally not return UA / User sheets. r=bholley
We don't want to reparse over and over shared sheets, and that confused code
pretty heavily.

MozReview-Commit-ID: 7qkXoCoPNFW
2018-04-17 11:23:36 +02:00
Sebastian Hengst 0819f35e51 Backed out 4 changesets (bug 525063) on request from Andi. a=backout
Backed out changeset 516c4fb1e4b8 (bug 525063)
Backed out changeset 6ff8aaef2866 (bug 525063)
Backed out changeset bf13e4103150 (bug 525063)
Backed out changeset d7d2f08e051c (bug 525063)
2018-04-13 16:01:28 +03:00
Tristan Bourvon a3a77c0312 Bug 525063 - Initialize uninitialized class attributes in m-c. r=ehsan 2018-04-10 21:11:02 +02:00
Xidorn Quan 686d95c786 Bug 1453180 - Remove -x-system-font. r=emilio,heycam
We need to add the system font keywords separately in InspectorUtils so
that we don't regress values listed in inspector.

MozReview-Commit-ID: 7a8CKGeSn4K

--HG--
extra : rebase_source : 12a1fcd0294b42568d8da596639b2733ba57186e
2018-04-11 10:12:16 +10:00
Xidorn Quan abf64e1d80 Bug 1452534 part 1 - Use Servo code to check whether a property is inherited. r=emilio
MozReview-Commit-ID: GtJWDmPlsAq

--HG--
extra : rebase_source : 9f63a1cb2cfd50ff71fb6d393d5e8937d37ca937
2018-04-09 14:33:30 +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