Commit Graph

6 Commits

Author SHA1 Message Date
Cameron McCormack
69a6f8f2c5 servo: Merge #14340 - implement StyleSheet.disabled (from heycam:sheet-disabled); r=Manishearth
<!-- Please describe your changes on the following line: -->

This implements the [CSSOM StyleSheet.disabled](https://drafts.csswg.org/cssom/#dom-stylesheet-disabled) IDL attribute.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: c1c3974fb2d8ca60f2837ccd7d2d3b345e440af8
2016-11-24 20:40:24 -08:00
Manish Goregaokar
79027e65d4 servo: Merge #14241 - CSSOM: Whole ton of things (from Manishearth:mut-cssom); r=SimonSapin
CSSOM is now starting to be useful!

Based on #14190. Only the <s>last commit</s> last two commits need review.

cc @xidorn . This doesn't change the style API, but adds useful methods.

part of #11420

This adds:
 - `insertRule()` and `deleteRule()` on `CSSStyleSheet`, `CSSGroupingRule`
 - `.style` getters on link and style elements
 - Keyframes-backed `CSSRules` and `CSSKeyframesRule.cssRules`
 - `CSSGroupingRule.cssRules`
 - `prefix` and `namespaceURI` attributes of `CSSNamespaceRule`
 - Fixups regarding parent stylesheets

r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: 996756687cd741ad0d30029022638bdcceecb563
2016-11-23 10:27:49 -08:00
Manish Goregaokar
67e62fc6bf servo: Merge #14190 - Immutable CSSOM (from Manishearth:cssom); r=SimonSapin
This PR is intended to add basic support for all CSSOM interfaces, with the ability to index `document.styleSheets` and css rule lists, and serializing individual css rules. Handling individual interface methods for CSSRule subclasses can probably be done with easy/medium bugs.

Mutation safety isn't dealt with here; if the css rule list is mutated the CSSOM will be in an inconsistent state. I intend to deal with this via zero sized tokens, see https://groups.google.com/forum/#!topic/mozilla.dev.servo/AnxJoVmtMXQ .  I'll handle that when I start making the CSSOM mutable. (Getting the immutable bit landed first opens this up for easy bugs)

This doesn't really change style aside from adding an extra arc in the CSS rule list as discussed in the linked thread. So far this same design can be used by stylo as well when the time comes.

f? @SimonSapin @emilio

cc @upsuper

part of #11420
Todo:

 - [x] Stubs for rest of the CSSRule subclasses
 - [x] <s>ToCSS impls for CSSRules.</s> May make into easy bugs and stub out in this PR https://github.com/servo/servo/issues/14195
 - [x] Cache CSSStyleSheet on the relevant node

Source-Repo: https://github.com/servo/servo
Source-Revision: afc60bee2809059b8b754a1c6d6d10c1d36326fb
2016-11-16 15:05:59 -06:00
Ms2ger
0e47523e7e servo: Merge #12353 - Implement [Exposed] (from Ms2ger:expose); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 6d59be17bedbf9a96915b854df8ae8a0cd371831
2016-07-12 04:35:53 -07:00
edunham
b5071d5903 servo: Merge #10723 - Remove some Emacs & Vim modelines (from edunham:modelines); r=Wafflespeanut
This might be a bad idea, especially on the webidl side. However, we started talking about the idea that modelines are a lint error (https://github.com/servo/servo/issues/10719), and these changes would be required before enabling a modeline lint.

If it bitrots, it's easy to recreate with
```
find * -type f -exec sed '/- Mode:/d' -i {} +
find * -type f -exec sed '/ vim:/d' -i {} +
git checkout -- python/tidy/servo_tidy/tidy.py
git checkout -- python/tidy/servo_tidy_tests/spec.webidl
git commit -a
```

Source-Repo: https://github.com/servo/servo
Source-Revision: dff217c2e3ff0b77eeebf62d36c2bf57c044cf14
2016-04-21 20:05:04 -07:00
Mohamed Albashir
d0fae49187 servo: Merge #10292 - Initial steps for CSSOM (from jdm:cssom); r=jdm
Squashed and rebased #10133.

Source-Repo: https://github.com/servo/servo
Source-Revision: f335586ff538004c708d836876b359704ebed86a
2016-04-01 03:59:08 +05:00