Commit Graph

35 Commits

Author SHA1 Message Date
Brad Werth
10293e6ca2 Bug 1346256 Part 2: Define methods in ServoCSSRuleList to fill a hash of RawServoStyleRule to ServoStyleRule. r=heycam,xidorn
MozReview-Commit-ID: 4Swb9KwV0uO
2017-04-07 08:07:37 -07:00
J. Ryan Stinnett
2f336ddffd Bug 1345206 - Wire up bindings for @page rule. r=xidorn
Connect the Servo types and functions for working with @page rules to Gecko.

This also adjusts the Stylo test expectations to match the current state with
@page support.

MozReview-Commit-ID: 513d05m51wK
2017-03-30 21:25:22 -05:00
Xidorn Quan
bc7331dfe8 Bug 1352763 part 4 - Pass CSS loader to Servo for insertRule. r=emilio
MozReview-Commit-ID: 6yalz8D8BWc
2017-04-03 20:04:32 +10:00
Xidorn Quan
bf22378ea2 Bug 1352763 part 3 - Have ServoStyleSheet also implement nsICSSLoaderObserver. r=heycam
MozReview-Commit-ID: 1Z6jAmQ9CY6
2017-04-03 19:55:06 +10:00
Xidorn Quan
277ab4b1f9 Bug 1345696 part 6 - Fix cycle collection for font-face rule. r=heycam,mccr8
Having Servo's FontFaceRule owning Gecko's nsCSSFontFaceRule object opens an
untracked edge, because we generally don't track the reference through Servo
objects, so there is a chance that nsCSSFontFaceRule can form a undroppable
reference cycle.

This patch adds a workaround that we track @font-face rule twice in CSS rule
list. This is not perfect, but the idea is that, if someone wants to put some
reference on the @font-face rule, the rule itself and its parent list should
have been constructed in the CSSOM tree. If they are not there, we are
probably safe from cycle reference.

For @font-face rule, that assumption isn't strictly true. Script can still
get a font-face rule via layout inspector's nsIDOMFontFace::rule. If some
script puts an object which references the stylesheet of the rule or any of
its parent rule / rule list into font-face rule's expando, we would leak
again... But as far as that is an internal interface, we are probably safe?

MozReview-Commit-ID: DDMJh3mxDCH
2017-03-28 16:11:44 +11:00
Xidorn Quan
1fafb4f93f Bug 1345696 part 5 - Support CSSOM access to @font-face rules. r=manishearth
MozReview-Commit-ID: Gm4Bm0zgsh3
2017-03-27 14:49:26 +11:00
Xidorn Quan
f184739faf Bug 1345698 part 5 - Add support of CSSNamespaceRule for stylo. r=heycam
MozReview-Commit-ID: Kl4Wd3eh9ll
2017-03-14 18:51:59 +11:00
Xidorn Quan
18287e1373 Bug 1345698 part 1 - Unify common code for implementing a rule type. r=heycam
MozReview-Commit-ID: ABwAq2HXrkC
2017-03-14 17:52:37 +11:00
Xidorn Quan
6306ca359d Bug 1315601 part 16 - Implement ServoMediaRule. r=heycam
MozReview-Commit-ID: GcDNr5Lv73m
2017-03-09 17:37:45 +11:00
Xidorn Quan
70ca7be4d6 Bug 1315601 part 10 - Make ServoCSSRuleList support being nested. r=heycam
MozReview-Commit-ID: 8IUGxkMZPMj
2017-03-09 20:53:34 +11:00
Xidorn Quan
d1c07475d3 Bug 1339301 - Downgrade unimplemented CSS rule from error to warning. r=heycam
MozReview-Commit-ID: 7brKkeCrbhZ
2017-02-14 12:19:54 +11:00
Xidorn Quan
b47e7c65ea Bug 1337637 - Release rule when deleting from ServoCSSRuleList. r=heycam
MozReview-Commit-ID: CrVNCTEJ7l6
2017-02-08 14:19:08 +11:00
Boris Zbarsky
2e97c18674 Bug 851892 part 9. Add a CSSRule Web IDL interface. r=peterv,heycam
Note that this explicitly drops CSSRule.UNKNOWN_RULE.
2017-01-13 10:41:03 -05:00
Boris Zbarsky
fcffc1fbb1 Bug 851892 part 8. Get rid of css::Rule::GetDOMRule. r=heycam 2017-01-13 10:41:03 -05:00
Boris Zbarsky
e152128ba1 Bug 851892 part 1. Make all CSS rules cycle-collected. r=heycam,smaug 2016-11-30 18:18:14 -05:00
Sebastian Hengst
f7032ba0ea Backed out changeset 9a4b96c10b23 (bug 851892) for build bustage. r=backout on a CLOSED TREE 2017-01-20 19:31:31 +01:00
Sebastian Hengst
4249f1e162 Backed out changeset 9ef39356f62c (bug 851892) 2017-01-20 19:30:32 +01:00
Sebastian Hengst
d3d6fbf9ca Backed out changeset b975a988fb33 (bug 851892) 2017-01-20 19:30:28 +01:00
Boris Zbarsky
ac65687b62 Bug 851892 part 9. Add a CSSRule Web IDL interface. r=peterv,heycam
Note that this explicitly drops CSSRule.UNKNOWN_RULE.
2017-01-13 10:41:03 -05:00
Boris Zbarsky
4bc1b026f0 Bug 851892 part 8. Get rid of css::Rule::GetDOMRule. r=heycam 2017-01-13 10:41:03 -05:00
Boris Zbarsky
7d2cf86b2f Bug 851892 part 1. Make all CSS rules cycle-collected. r=heycam,smaug 2016-11-30 18:18:14 -05:00
Phil Ringnalda
7646bbe020 Backed out 20 changesets (bug 851892) for load failures in Android crashtest-4
Backed out changeset b9c4115cdeac (bug 851892)
Backed out changeset 5f491bf49b85 (bug 851892)
Backed out changeset 9bf5bcb3e8c5 (bug 851892)
Backed out changeset a9cab46e8b45 (bug 851892)
Backed out changeset 73858e15c8c0 (bug 851892)
Backed out changeset a25638588b6b (bug 851892)
Backed out changeset d58e0e5069ef (bug 851892)
Backed out changeset d8da2a3d8f10 (bug 851892)
Backed out changeset a8da3c34983f (bug 851892)
Backed out changeset 29cf8acbd21e (bug 851892)
Backed out changeset c53cd7bdf8b3 (bug 851892)
Backed out changeset e841a2796375 (bug 851892)
Backed out changeset 2eab85b00159 (bug 851892)
Backed out changeset ca4b1fb9cae4 (bug 851892)
Backed out changeset 74c0ba66f108 (bug 851892)
Backed out changeset 719bb9f41e5b (bug 851892)
Backed out changeset d6aa4c6192df (bug 851892)
Backed out changeset dc81a167a75d (bug 851892)
Backed out changeset 65422477b3a5 (bug 851892)
Backed out changeset 3089dd379077 (bug 851892)
2017-01-15 11:50:10 -08:00
Boris Zbarsky
4dfbb97de9 Bug 851892 part 9. Add a CSSRule Web IDL interface. r=peterv,heycam
Note that this explicitly drops CSSRule.UNKNOWN_RULE.
2017-01-13 10:41:03 -05:00
Boris Zbarsky
7f8d92e598 Bug 851892 part 8. Get rid of css::Rule::GetDOMRule. r=heycam 2017-01-13 10:41:03 -05:00
Boris Zbarsky
83cfd06680 Bug 851892 part 1. Make all CSS rules cycle-collected. r=heycam 2016-11-30 18:18:14 -05:00
Boris Zbarsky
17194e597d Back out bug 851892 for Windows build bustage on CLOSED TREE 2017-01-13 11:47:22 -05:00
Boris Zbarsky
daf074968f Bug 851892 part 9. Add a CSSRule Web IDL interface. r=peterv,heycam
Note that this explicitly drops CSSRule.UNKNOWN_RULE.
2017-01-13 10:41:03 -05:00
Boris Zbarsky
f5cfc1f710 Bug 851892 part 8. Get rid of css::Rule::GetDOMRule. r=heycam 2017-01-13 10:41:03 -05:00
Boris Zbarsky
5865c43716 Bug 851892 part 1. Make all CSS rules cycle-collected. r=heycam 2016-11-30 18:18:14 -05:00
Xidorn Quan
9d088a292f Bug 1326167 - Hook ServoStyleSheet and ServoCSSRuleList into cycle collection. r=bz
MozReview-Commit-ID: 6n1rjB8aMqp
2017-01-06 15:14:28 +11:00
Xidorn Quan
5a65e372de Bug 1313293 followup - Fix small issue of ServoCSSRuleList::InsertRule.
MozReview-Commit-ID: GGN5mXQSp7f
2016-11-30 14:36:00 +11:00
Xidorn Quan
41fd53fd2c Bug 1313293 - Implement CSSStyleSheet.insertRule and deleteRule. r=heycam
MozReview-Commit-ID: DLHWrNqVH0D
2016-11-29 22:59:55 +11:00
Xidorn Quan
17e9e386cc Bug 1319994 - Use NS_ERROR for not-implemented CSS rules. r=heycam
MozReview-Commit-ID: 9E1ThQuqBf1
2016-11-24 16:28:28 +11:00
Xidorn Quan
ff2165b093 Bug 1307357 part 4 - Add impl class of CSSStyleRule for stylo. r=heycam,manishearth
MozReview-Commit-ID: CNrvA0HuuL6
2016-11-23 10:26:20 +11:00
Xidorn Quan
75d1331a59 Bug 1307357 part 3 - Implement CSSRuleList interface for stylo. r=heycam,manishearth
MozReview-Commit-ID: Ecnbj66yKOE
2016-11-23 10:26:20 +11:00