Commit Graph

879 Commits

Author SHA1 Message Date
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
Marco Castelluccio
bacd0a5f80 Bug 1436413 - Remove inDOMView as it is no longer used. r=bz
--HG--
extra : rebase_source : 8eb8f07f99b9daf33a27b73dcc6fc92d3ef8f172
2018-02-07 15:46:30 +01:00
Xidorn Quan
4cf9aed667 Bug 1449400 part 5 - Remove StyleSetHandle. r=emilio
This patch basically does:
* remove StyleSetHandle and its corresponding files
* revisit #includes of related header files and change correspondingly
* change nsIPresShell::mStyleSet to be UniquePtr<ServoStyleSet>
* change the creating path of ServoStyleSet to pass UniquePtr
* change other mentions of StyleSetHandle to ServoStyleSet*
* remove AsServo() calls on ServoStyleSet

Some unfortunate bits:
* some methods of (Servo)StyleSet only accepts ServoStyleSheet while
  many places call into the methods with StyleSheet, so there are many
  ->AsServo() added to sheets

MozReview-Commit-ID: K4zYnuhOurA

--HG--
extra : rebase_source : 459e8efeb171adad089d94272e143e8c244bd279
extra : source : 65ba2f174fcf7dba4e59c00ee8908b1bd0820a48
2018-03-29 22:15:46 +11:00
Xidorn Quan
0cd2404617 Bug 1449089 part 5 - Remove nsCSSPseudoClasses.{h,cpp} and nsCSSPseudoClassList.h. r=emilio
MozReview-Commit-ID: 7KYFiQ5vUxg

--HG--
extra : rebase_source : 9f3a61b3cb240d2fdf23ccc056762c169eaf42e2
2018-03-28 09:41:04 +11:00
Xidorn Quan
8543cb7090 Bug 1449097 - Use Servo to implement GetStatesForPseudoClass function in InspectorUtils. r=emilio
MozReview-Commit-ID: 2tL5otfqCiw

--HG--
extra : rebase_source : fe9ddd2a840efb33f5c0d7f53c7c755a0929a8f9
2018-03-28 09:41:04 +11:00
Henri Sivonen
c387c722f6 Bug 1448590 - Avoid useless use of SIMD-accelerated Latin1 to UTF-16 conversion in layout. r=dbaron.
MozReview-Commit-ID: Inm13Jw2t31

--HG--
extra : rebase_source : a7a5f1b8a5e7973b3325b2de1fa534e533aff34d
2018-03-24 21:31:19 +02:00
Emilio Cobos Álvarez
2265ef0801 Bug 1448688: Remove RestyleTracker, ComputedStyle::AsServo, old style system element bits. r=xidorn
MozReview-Commit-ID: ALiOngGqozN
2018-03-26 09:38:07 +02:00
Jonathan Watt
384c345f21 Bug 1448294 - Clean up naming of 'styleContext' variables after the big nsStyleContext rename. r=emilio
Reviewers: emilio

Bug #: 1448294

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

MozReview-Commit-ID: KJq2i9nrg7y
2018-03-25 20:49:58 +02:00
Narcis Beleuzu
47581f78e2 Backed out 2 changesets (bug 1448294, bug 1448337) for wpt and reftest failures on /mathml
Backed out changeset 180051cfe357 (bug 1448294)
Backed out changeset c188176f3289 (bug 1448337)
2018-03-25 21:31:08 +03:00
Emilio Cobos Álvarez
0bd82de3a9 Bug 1448661: Remove unused CSS_PROPERTY_IS_ALIAS flag. r=jwatt
MozReview-Commit-ID: 10B4pi2Zwsx
2018-03-25 18:24:01 +02:00
Jonathan Watt
21bff4e120 Summary: Bug 1448294 - Clean up naming of 'styleContext' variables after the big nsStyleContext rename. r=emilio
Reviewers: emilio

Bug #: 1448294

Differential Revision: https://phabricator.services.mozilla.com/D796
2018-03-22 13:49:21 +00:00
Emilio Cobos Álvarez
e341b20ec4 Bug 1447483: Merge nsStyleContext and ServoStyleContext, rename to ComputedStyle. r=jwatt on a CLOSED TREE
MozReview-Commit-ID: JPopq0LudD
2018-03-22 20:06:24 +01:00
Emilio Cobos Álvarez
5dd797f154 Back out changeset b683bb3f22a1 (Bug 1447483) for not landing with all the files. r=me on a CLOSED TREE
This reverts commit 1808914126bb9f9e4a82d2c3d7ac961885fe7d62.

MozReview-Commit-ID: 5skESBseEvo
2018-03-22 20:05:22 +01:00
Emilio Cobos Álvarez
ca5ac79cca Bug 1447483: Merge nsStyleContext and ServoStyleContext, rename to ComputedStyle. r=jwatt
MozReview-Commit-ID: JPopq0LudD
2018-03-22 19:48:42 +01:00
Jonathan Watt
3ba6f4c5a2 Bug 1446763 - Convert InspectorUtils::CssPropertyIsShorthand to use Stylo. r=emilio
Summary: MozReview-Commit-ID: 5moH64qiKue

Reviewers: emilio

Bug #: 1446763

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

MozReview-Commit-ID: Gh2QFRsAYsq
2018-03-18 12:56:09 +00:00