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

406 Коммитов

Автор SHA1 Сообщение Дата
Emilio Cobos Álvarez 517256e365 Bug 1478391: Autogenerate StyleAppearance. r=jwatt
This builds on bug 1428676 and introduces StyleAppearance, which replaces the
NS_THEME_* constants.

Really sorry for the size of the patch.

There's a non-trivial change in the gtk theme, which I submitted separately as
bug 1478385.

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

MozReview-Commit-ID: DiSmMWK7Krp
2018-07-26 17:06:17 +02:00
Cameron McCormack 8d5efb0c93 Bug 1473450 - Remove angle values from image-orientation. r=emilio
MozReview-Commit-ID: FB74ILJM6Fm

--HG--
extra : rebase_source : 0902aff63e0db070d2fdda3568453975f752b988
2018-07-05 12:04:58 +10:00
Andreea Pavel 721e84c658 Backed out changeset 641b02da5961 (bug 1473450) for failing xpchsell and mochitest on a CLOSED TREE 2018-07-10 09:28:59 +03:00
Cameron McCormack e2ce31efc1 Bug 1473450 - Remove angle values from image-orientation. r=emilio
MozReview-Commit-ID: FB74ILJM6Fm

--HG--
extra : rebase_source : 8c13a67086aedad73a642b5125bbb44f48068f5d
2018-07-05 12:04:58 +10:00
Emilio Cobos Álvarez 38ff952014 Bug 1473225 - Serialize a few more lengths with Servo. r=xidorn
Differential Revision: https://phabricator.services.mozilla.com/D1934

--HG--
extra : moz-landing-system : lando
2018-07-04 06:42:38 +00:00
Emilio Cobos Álvarez 92952c788e Bug 1472551 - Serialize font properties using Servo. r=xidorn
Differential Revision: https://phabricator.services.mozilla.com/D1905

--HG--
extra : moz-landing-system : lando
2018-07-01 23:00:18 +00:00
Emilio Cobos Álvarez ed2763bea8 Bug 1472497 - Serialize list-style-type / list-style-image using Servo. r=xidorn
Differential Revision: https://phabricator.services.mozilla.com/D1903

--HG--
extra : moz-landing-system : lando
2018-07-01 00:44:26 +00:00
Emilio Cobos Álvarez f36a3eac08 Bug 1472443: Serialize content properties using Servo. r=xidorn
... and cleanup unused keywords / getters using the scripts in
layout/style/tools

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

MozReview-Commit-ID: BRUGcje7X0q
2018-06-30 17:14:12 +02:00
Xidorn Quan a01792b85b Bug 1471114 part 4 - Remove unused getter functions from nsComputedDOMStyle. r=emilio
This is done with the following script:
```python
#!/usr/bin/env python3

import re
import sys

from pathlib import Path

if len(sys.argv) != 2:
    print("Usage: {} objdir".format(sys.argv[0]))
    exit(1)

generated = Path(sys.argv[1]) / "layout" / "style"
generated = generated / "nsComputedDOMStyleGenerated.cpp"
RE_GENERATED = re.compile(r"DoGet\w+")
keeping = set()
with generated.open() as f:
    for line in f:
        m = RE_GENERATED.search(line)
        if m is not None:
            keeping.add(m.group(0))

HEADER = "layout/style/nsComputedDOMStyle.h"
SOURCE = "layout/style/nsComputedDOMStyle.cpp"

# We need to keep functions invoked by others
RE_DEF = re.compile(r"nsComputedDOMStyle::(DoGet\w+)\(\)")
RE_SRC = re.compile(r"\b(DoGet\w+)\(\)")
with open(SOURCE, "r") as f:
    for line in f:
        m = RE_DEF.search(line)
        if m is not None:
            continue
        m = RE_SRC.search(line)
        if m is not None:
            keeping.add(m.group(1))

removing = set()
remaining_lines = []
with open(HEADER, "r") as f:
    for line in f:
        m = RE_SRC.search(line)
        if m is not None:
            name = m.group(1)
            if name not in keeping:
                print("Removing " + name)
                removing.add(name)
                continue
        remaining_lines.append(line)

with open(HEADER, "w", newline="") as f:
    f.writelines(remaining_lines)

remaining_lines = []
is_removing = False
with open(SOURCE, "r") as f:
    for line in f:
        if is_removing:
            if line == "}\n":
                is_removing = False
            continue
        m = RE_DEF.search(line)
        if m is not None:
            name = m.group(1)
            if name in removing:
                remaining_lines.pop()
                if remaining_lines[-1] == "\n":
                    remaining_lines.pop()
                is_removing = True
                continue
        remaining_lines.append(line)

with open(SOURCE, "w", newline="") as f:
    f.writelines(remaining_lines)
```

MozReview-Commit-ID: ACewvZ9ztWp

--HG--
extra : source : 7f167f9affd954da907d1da307ebc82be4b85911
2018-06-27 15:34:29 +10:00
Xidorn Quan cd114ec151 Bug 1471114 part 3 - Drop the reference to getter functions we don't call. r=emilio
MozReview-Commit-ID: IbBayOwsjNX

--HG--
extra : source : 82ce1f7b7fd21c406cf61726c78de5f120028e35
2018-06-27 15:34:29 +10: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
Olli Pettay abf54817b9 Bug 1428246 - The attributeChangedCallback is fired twice for the *first* style attribute change, r=peterv
The idea with this patch is that style code will first call
InlineStyleDeclarationWillChange before style declaration has changed, and SetInlineStyleDeclaration once it has changed.

In order to be able to report old attribute value, InlineStyleDeclarationWillChange reads the value and also calls AttributeWillChange (so that DOMMutationObserser can grab the old value). Later SetInlineStyleDeclaration passes the old value to
SetAttrAndNotify so that mutation events and attributeChanged callbacks are handled correctly.

Because of performance, declaration can't be cloned for reading the old value. And that is why the recently-added callback is used to detect when declaration is about to change (bug 1466963 and followup bug 1468665).

To keep the expected existing behavior, even if declaration isn't changed, but just a new declaration was created (since there wasn't any), we need to still run all these
willchange/set calls. That is when the code has 'if (created)' checks.

Since there are several declaration implementation and only nsDOMCSSAttributeDeclaration needs the about-to-change callback, GetPropertyChangeClosure is the one to initialize the callback closure, and the struct which is then passes as data to the closure.

Apparently we lost mutation event testing on style attribute when the pref was added, so test_style_attr_listener.html is modified to test both pref values.

--HG--
extra : rebase_source : 9e605d43f22e650ac3912fbfb41abb8d5a2a0c8f
2018-06-26 12:54:00 +03:00
Dan Glastonbury 334258d77f Bug 1467621 - P1: nsCSSShadowItem - Change nscolor to StyleComplexColor. r=xidorn
MozReview-Commit-ID: moE2CI7fT8

--HG--
extra : rebase_source : 7b64beccbd4c499d93567d62b913257dfa53c9fe
2018-06-19 14:18:33 +10:00
Emilio Cobos Álvarez 5de0145c70 Bug 1467722: Make nsComputedDOMStyle store an actual Element. r=heycam
MozReview-Commit-ID: FdfXvPARilD
2018-06-19 11:47:40 +02:00
Emilio Cobos Álvarez 9bed821e90 Bug 1467722: Don't return null for getComputedStyle when there's no pres shell. r=heycam
We need to deal with this case regardless from getPropertyValue, and this causes
pain and webcompat issues.

MozReview-Commit-ID: Gbpzq0N4O2T
2018-06-19 11:47:16 +02:00
Emilio Cobos Álvarez 5545421406 Bug 1467536: Split GetPropertyValue from GetPropertyCSSValueWithoutWarning. r=xidorn
And remove the later.

MozReview-Commit-ID: BO3epOMe70w
2018-06-10 00:41:50 +02:00
Gurzau Raul 74ffb16a12 Backed out 4 changesets (bug 1467536) for permafailing on layout/style/test/test_bug418986-2.html. a=backout
Backed out changeset 4e1cee0e0a48 (bug 1467536)
Backed out changeset 697892c54d63 (bug 1467536)
Backed out changeset 13b38c2d3251 (bug 1467536)
Backed out changeset 086eaeb69efa (bug 1467536)
2018-06-09 10:45:08 +03:00
Emilio Cobos Álvarez 4b3dd55620 Bug 1467536: Split GetPropertyValue from GetPropertyCSSValueWithoutWarning. r=xidorn
And remove the later.

MozReview-Commit-ID: BO3epOMe70w
2018-06-08 14:18:06 +02:00
Peter Van der Beken 0dbc31467c Bug 1451973 - Split off process from non-process message managers. r=bz.
Process and non-process managers have different script loader interfaces
(ProcessScriptLoader/GlobalProcessScriptLoader vs FrameScriptLoader). The WebIDL
conversion used the same interface for some process and
non-process managers, but because of the different script loader interfaces they really
should be using separate interfaces.

--HG--
rename : dom/base/ChromeMessageBroadcaster.cpp => dom/base/MessageBroadcaster.cpp
rename : dom/base/ChromeMessageBroadcaster.h => dom/base/MessageBroadcaster.h
rename : dom/base/ChromeMessageBroadcaster.cpp => dom/base/ParentProcessMessageManager.cpp
rename : dom/base/ChromeMessageBroadcaster.h => dom/base/ParentProcessMessageManager.h
rename : dom/base/ChromeMessageSender.cpp => dom/base/ProcessMessageManager.cpp
rename : dom/base/ChromeMessageSender.h => dom/base/ProcessMessageManager.h
extra : rebase_source : c9b0c543f9f367535919a6c6840e5ba038023112
extra : histedit_source : 7749f98e11e25423fcf414cc1f0415104343798a
2018-04-16 15:18:48 +02:00
Xidorn Quan 4c114dbee6 Bug 1460456 part 3 - Add scrollbar-{face,track}-color properties. r=heycam
MozReview-Commit-ID: ImNfHHfzRdM

--HG--
extra : rebase_source : 58caf9fff4ad62d4413de688ad115e89a5929ea6
2018-05-10 10:40:17 +10:00
bobslept 705b29c214 Bug 1459111 - Rename ServoCSSParsingEnvironment to ParsingEnvironment. r=emilio
MozReview-Commit-ID: Jl5aoarH0aU
2018-05-14 20:20:20 +02:00
Emilio Cobos Álvarez 5aab8db970 Bug 1408301: Remove getPropertyCSSValue. r=bz
It's been removed for a while on Nightly without any known regressions. This
gives us a full beta cycle of telemetry and two nightly cycles without the API
before shipping.

This only removes the API, followup work will replace serialization by Servo's,
and remove the remaining DOM interfaces.

MozReview-Commit-ID: 2m1taYg5xEr
2018-05-12 11:23:47 +02:00
Emilio Cobos Álvarez 825625678d Bug 1458928: Remove GetCSSParsingEnvironment. r=xidorn
MozReview-Commit-ID: KXGM7JiUZAt

--HG--
extra : rebase_source : 7a3223488e13ddd453298b8f74e9c07a12bf0044
2018-05-03 17:41:48 +02:00
Xidorn Quan f2ba299166 Bug 1448759 part 1 - Make KTableEntry an independent type. r=heycam
MozReview-Commit-ID: oZfJAigThN

--HG--
extra : rebase_source : 6a0efbf40fed8c9eaba7bb3af74d281b536677c8
2018-04-29 21:17:26 +10:00
Brad Werth ab7e20d492 Bug 1265342 Part 1: Add shape-margin to style system (Gecko bindings). r=xidorn
MozReview-Commit-ID: 3G0ZpWDrumg

--HG--
extra : rebase_source : da38e002a62212757adf276413aebbf58aa7d9b6
2018-02-07 17:27:04 -08:00
Narcis Beleuzu a07765b336 Backed out 20 changesets (bug 1265342) for mochitest-plain-headless failures on layout/style/test/test_first_letter_restrictions.html. CLOSED TREE
Backed out changeset 6c80ec2d0398 (bug 1265342)
Backed out changeset 62d571916086 (bug 1265342)
Backed out changeset fd247f38f8a7 (bug 1265342)
Backed out changeset 83aee3dafe4b (bug 1265342)
Backed out changeset 9b200122014e (bug 1265342)
Backed out changeset a90aa063b2fd (bug 1265342)
Backed out changeset 0791ff3d9194 (bug 1265342)
Backed out changeset 7109288f10b3 (bug 1265342)
Backed out changeset 048cce2fb99f (bug 1265342)
Backed out changeset c8e3dbc6c729 (bug 1265342)
Backed out changeset 09da0968333a (bug 1265342)
Backed out changeset d16f7ff85677 (bug 1265342)
Backed out changeset 53eb7f14463d (bug 1265342)
Backed out changeset 64fc631ef122 (bug 1265342)
Backed out changeset 332382c708e1 (bug 1265342)
Backed out changeset a8695981eec0 (bug 1265342)
Backed out changeset ce473fa5f1f4 (bug 1265342)
Backed out changeset 5ee470e75a53 (bug 1265342)
Backed out changeset 802aa95a52d9 (bug 1265342)
Backed out changeset 5da0c34c9600 (bug 1265342)
2018-04-24 22:31:15 +03:00
Brad Werth 1775ae9b01 Bug 1265342 Part 1: Add shape-margin to style system (Gecko bindings). r=xidorn
MozReview-Commit-ID: 3G0ZpWDrumg

--HG--
extra : rebase_source : 0ee64b119305664202ee63072638a97523e9f24e
2018-02-07 17:27:04 -08:00
Mats Palmgren 8e30369644 Bug 1398482 part 2 - [css-grid][css-flexbox][css-multicol] Add 'row-gap' and 'gap' properties; make 'grid-[column|row]-gap' and 'grid-gap' alias the respective unprefixed properties (Gecko part). r=dholbert 2018-04-24 01:52:51 +02:00
Emilio Cobos Álvarez 0c83a344be Bug 1443950: Go back to using getComposedDoc for the computed style by default. r=bz
Now that NODE_FORCE_XBL_BINDINGS is gone, the only reason OwnerDoc() was added
in bug 1432490 is also gone.

Let's go back to using the composed doc, at least until the CSSWG decides on
what's the computed style of something that's not in[1].

[1]: https://github.com/w3c/csswg-drafts/issues/1548

MozReview-Commit-ID: EV1c46kkUva

--HG--
extra : rebase_source : 3cd036519b90b42cb920d8f854d530c8ced6ea9c
2018-03-28 03:25:47 +02:00
Jonathan Watt 82ebebe276 Bug 1448714 - Fix up comments referring to 'style context' after the rename of nsStyleContext. r=emilio 2018-03-23 13:49:21 +00:00
Xidorn Quan 051a0fc278 Bug 1448526 part 2 - Make nsStyleStructList.h not generated. r=emilio
nsStyleStructList.h was initially made generated in bug 873368 to avoid
manually maintaining boilerplate for if-dispatch, while the if-dispatch
was replaced by jump table in bug 1171842, so the boilerplate went away.

However, in bug 1122781 (before bug 1171842), boilerplate for dependency
check, so it still needs to be generated.

The dependency table is removed in the previous patch, so we no longer
have any boilerplate in the style struct list, and thus it doesn't need
to be generated anymore.

MozReview-Commit-ID: GkbJZ98ojbE

--HG--
extra : rebase_source : a148b97c051bb6c88846cf6ba617c4edef70ca24
extra : source : f1c7d19cde195fb90ac2627d16ed69d020de01b9
2018-03-26 20:09:17 +11:00
Emilio Cobos Álvarez 87edb889e1 Bug 1448665: Simplify the unanimated style setup in nsComputedDOMStyle. r=xidorn
We never create nsComputedDOMStyle objects with an unanimated computed style, so
this can be much simpler.

MozReview-Commit-ID: 2NyBoErxRtV
2018-03-26 09:43:58 +02:00
Emilio Cobos Álvarez 2a15760bcd Bug 1448663: Remove unused field to please the static analysis and reopen the CLOSED TREE. r=me
Pending bug 1448665 for further cleanup.

MozReview-Commit-ID: 4YHjh3t0i7a
2018-03-25 18:46:58 +02: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
Emilio Cobos Álvarez 2738470e2b Bug 474655: Add a deprecation warning + use counter to GetPropertyCSSValue. r=bholley
The use counter comes built-in with the DeprecatedOperationList stuff.

MozReview-Commit-ID: 9Opag1NMp32
2018-03-15 18:22:32 +01:00
Emilio Cobos Álvarez 6400343bb7 Bug 1424963: Add ChromeOnly CSSStyleDeclaration::GetCSSImageURLs. r=bz
MozReview-Commit-ID: CISe5jaQbIQ
2018-03-14 11:07:41 +01:00
Emilio Cobos Álvarez 41e05df804 Bug 1443483: FlushTarget doesn't really make sense. r=xidorn
Summary:
FlushTarget wants to decide whether we should flush the parent document or all
of them. However, the only point of flushing parent documents is that media
query changes could affect the document we really want to flush.

That's completely pointless if we actually don't flush the subdocument, so just
skip doing that. This case is already checked (see the DocumentNeedsRestyle
stuff, which is also somewhat poorly named, which walks up the document chain).

Reviewers: xidorn

Bug #: 1443483

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

MozReview-Commit-ID: LiI7IrUBeqq
2018-03-07 01:09:46 +01:00
Jonathan Kew e1e7553c5f Bug 1435692 - patch 2 - Implement the font-optical-sizing property in the Gecko style system, to control whether optical size is automatically applied. r=jwatt
MozReview-Commit-ID: ClcWeX6Hsvm
2018-03-03 22:12:11 +01:00
Emilio Cobos Álvarez 7dffe29d8f Bug 1432490: Make nsComputedDOMStyle::GetStyleContext / GetStyleContextNoFlush not take a presShell. r=bz
Everyone calls them with the shell of the current composed document, and this
allows the multi-presShell stuff to just be in UpdateCurrentStyleSources /
DoGetStyleContextNoFlush.

The only reason we need to use OwnerDoc()->GetShell() instead of the composed
doc in GetStyleContext / GetStyleContextNoFlush is Element::GetBindingURL, which
does expect to get the binding URL for stuff outside of the composed doc (and
changing that gave me a useless browser).

That's technically a behavior change on the cases that used to pass nullptr, but
I think all callers are fine with that. I could also just add a special function
for that particular case, it may be worth it.

MozReview-Commit-ID: 2XlnkgdgDCK
2018-02-25 02:23:59 +01:00
Chris Peterson d09123f248 Bug 1436263 - Part 1: Replace `final override` virtual function specifiers with just `final`. r=froydnj
MozReview-Commit-ID: DE5HkIhsZ6D

--HG--
extra : rebase_source : 94831c1e13a840dd2ea0600f64bcf70c2bf938d9
extra : source : cf9283bf1b0bca3a6311c98e227329d451f80ecb
2018-02-05 22:46:57 -08:00
cku 9d27bbd0e6 Bug 1207734 - Part 5. Implement the getComputedStyle API for individual transform. r=birtles
MozReview-Commit-ID: 3w1kA6VCXsg
(grafted from ee81993c07a30fe5b8788d2ce6707967eb0a832a)

--HG--
extra : source : ee81993c07a30fe5b8788d2ce6707967eb0a832a
2017-12-19 14:33:09 +08:00
Boris Zbarsky 59d4896eb6 Bug 1428610 part 4. Move the nsCSSPropertyID overload of nsICSSDeclaration::SetPropertyValue to nsDOMCSSDeclaration. r=emilio
MozReview-Commit-ID: 8BzCHahJjwv
2018-01-30 14:48:26 -05:00
Boris Zbarsky 335a24f297 Bug 1428610 part 3. Move the nsCSSPropertyID overload of nsICSSDeclaration::GetPropertyValue down to nsDOMCSSDeclaration. r=emilio
MozReview-Commit-ID: FHrkptqa2hZ
2018-01-30 14:48:26 -05:00
Boris Zbarsky eb99a6d933 Bug 1428610 part 1. Devirtualize nsICSSDeclaration::GetDocGroup. r=emilio
MozReview-Commit-ID: 7OGRkYTjTSQ
2018-01-30 14:48:26 -05:00
Hiroyuki Ikezoe 4d9188d86d Bug 1433846 - Drop nsComputedDOMStyle::GetPresShellForContent(), use nsContentUtils::GetPresShellForContent(). r=xidorn
MozReview-Commit-ID: JcpEpqP32Yi

--HG--
extra : rebase_source : dc3649c882f7edd36f9dbc3463d186517b18bdc1
2018-01-29 14:19:25 +09:00
Emilio Cobos Álvarez a2c0cd700d Bug 1429723: Remove -moz-border-*-colors. r=xidorn
MozReview-Commit-ID: 3P6f7rFcDa6
2018-01-22 18:14:07 +01:00
Chris Peterson 37efe4d0e6 Bug 1428535 - Add missing override specifiers to overridden virtual functions. r=froydnj
MozReview-Commit-ID: DCPTnyBooIe

--HG--
extra : rebase_source : cfec2d96faeb11656d86d760a34e0a04cacddb13
extra : intermediate-source : 6176724d63788b0fe8caa3f91607c2d93dbaa7ec
extra : source : eebbb0600447f9b64aae3bcd47b4be66c02a51ea
2017-11-05 19:37:28 -08:00
Edgar Chen 5fedbb92b8 Bug 1422197 - Add fast path to get DocGroup in binding code for [CEReactions]; r=smaug
MozReview-Commit-ID: HgbFo9ddr0o

--HG--
extra : rebase_source : 04989782fc7c7ce79e0e65b3dc907c9e174a0809
2017-11-27 16:10:27 +08:00