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
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
More improvements to come. In particular, this still iterates through Shadow DOM
in each_xbl_cascade_data, but that should be changed later. That allows to
cleanup a bunch of stuff and finally fix Shadow DOM cascade order.
We still rely on the binding parent to be setup properly in the shadow tree, but
that requirement can go away later (we can walk the containing shadow chain
instead).
This mostly focuses on removing the XBL binding from the Shadow host.
It'd be nice to do EnumerateShadowRoots faster. I think that should also be a
followup, if needed.
MozReview-Commit-ID: Jf2iGvLC5de
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
This fixes getCSSValuesForProperty for clip and clip-path.
Although clip is deprecated, it seemed harmless to fix it as well;
when it is removed this code will also be readily found and removed.
It wasn't clear to me if setting the keyword table for clip-path in
nsCSSPropList.h would be ok, so I added a special case in
InspectorUtils.
MozReview-Commit-ID: Ghawr17HjKk
This fixes InspectorUtils.getCSSValuesForProperty to return the
correct values for box-shadow and text-shadow. It also takes a small
step toward the goal of getting rid of
InspectorUtils.cpp:PropertySupportsVariant, in favor of having all
variants listed in nsCSSPropList.h.
MozReview-Commit-ID: Dwh5s0IvYTX
The "all" property in the devtools CSS database included all possible
property values; however only a few are truly appropriate. This patch
adds a special case for "all" to
InspectorUtils::GetCSSValuesForProperty to fix this.
MozReview-Commit-ID: HEnrvCJylHI