aboutsummaryrefslogtreecommitdiffstats
path: root/components/layout_thread/dom_wrapper.rs
Commit message (Collapse)AuthorAgeFilesLines
* Remove :-servo-case-sensitive-type-attr()Ian Moody2019-04-181-3/+0
| | | | | | | | No longer needed now that the case-sensitive flag for attributes selectors is supported. Update user-agent CSS sheet to use the standard flag. Fixes #23227
* Implement CDATASection interface and createCDATASection methodGeorge Roman2019-03-141-3/+6
|
* Update MPL license to https (part 4)Jan Andre Ikenmeyer2018-11-191-1/+1
|
* Reorder importsPyfisch2018-11-061-16/+24
|
* Format remaining filesPyfisch2018-11-061-6/+2
|
* Make layout use available image data before querying the image cache.Josh Matthews2018-10-121-0/+7
|
* Revert import style formatFernando Jiménez Moreno2018-10-081-4/+2
|
* layout: add media_data() to ServoThreadSafeLayoutNode implementationVíctor Manuel Jáquez Leal2018-10-081-2/+9
|
* Fix Servo build.Emilio Cobos Álvarez2018-09-181-2/+6
|
* Current-pixel-density tests passingpaavininanda2018-09-131-0/+5
|
* Auto merge of #21613 - pyfisch:layout_thread-fmt, r=Manishearthbors-servo2018-09-051-157/+211
|\ | | | | | | | | | | | | | | | | | | | | Rustfmt layout_thread crate Part of #21373. Checked all changes looks good. :tada: Manually removed two optional semicolons within unsafe so that it is formatted in one line. <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/21613) <!-- Reviewable:end -->
| * Rustfmt layout_thread cratePyfisch2018-09-051-157/+211
| |
* | Fix other parts of the Servo build.Emilio Cobos Álvarez2018-09-031-3/+3
|/
* Fix Servo build.Emilio Cobos Álvarez2018-08-081-19/+0
|
* layout: script: Fix build.Emilio Cobos Álvarez2018-06-231-1/+1
|
* style: Fix build after 1bc30a67320ce90f2e07988925a340b457f1a43a.Emilio Cobos Álvarez2018-04-171-0/+8
|
* style: Add infrastructure to match :host.Emilio Cobos Álvarez2018-03-141-0/+16
|
* style: Allow to share style across elements with similar XBL bindings.Emilio Cobos Álvarez2018-03-121-2/+2
|
* style: Separate the XBL and shadow dom styling bits.Emilio Cobos Álvarez2018-03-071-0/+8
| | | | | | Bug: 1441022 Reviewed-by: xidorn MozReview-Commit-ID: 2W0BmZ8wWXg
* style: Add also a containing_shadow API.Emilio Cobos Álvarez2018-03-031-0/+4
|
* style: Add bindings for ShadowRoot.Emilio Cobos Álvarez2018-03-031-6/+33
| | | | | | | This adds TShadowRoot to the `dom` module. Right now it barely adds uses of it, but this is a prerequisite to fix a bunch of Shadow DOM bugs and separate it from the XBL mess.
* style: Make Element::id not clone the attribute.Emilio Cobos Álvarez2018-02-241-3/+3
|
* style: Remove get_ prefix from get_state and get_id.Emilio Cobos Álvarez2018-02-241-2/+2
|
* selectors: Remove the get_ prefix from get_local_name and get_namespace.Emilio Cobos Álvarez2018-02-241-11/+11
|
* selectors: Never match ::slotted on <slot>s.Emilio Cobos Álvarez2018-01-271-0/+11
| | | | | This fixes the test from https://github.com/w3c/web-platform-tests/pull/9212 in Gecko.
* style: Use CascadeFlags for what they're for.Emilio Cobos Álvarez2018-01-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now that we have an Element around on cascade, we can stop using the cascade flags mechanism to pass various element-related state, like "is this element the root", or "should it use the item-based display fixup". That fixes handwaviness in the handling of those flags from style reparenting, and code duplication to handle tricky stuff like :visited. There are a number of other changes that are worth noticing: * skip_root_and_item_based_display_fixup is renamed to skip_item_display_fixup: TElement::is_root() already implies being the document element, which by definition is not native anonymous and not a pseudo-element. Thus, you never get fixed-up if your NAC or a pseudo, which is what the code tried to avoid, so the only fixup with a point is the item one, which is necessary. * The pseudo-element probing code was refactored to return early a Option::<CascadeInputs>::None, which is nicer than what it was doing. * The visited_links_enabled check has moved to selector-matching time. The rest of the checks aren't based on whether the element is a link, or are properly guarded by parent_style.visited_style().is_some() or visited_rules.is_some(). Thus you can transitively infer that no element will end up with a :visited style, not even from style reparenting. Anyway, the underlying reason why I want the element in StyleAdjuster is because we're going to implement an adjustment in there depending on the tag of the element (converting display: contents to display: none depending on the tag), so computing that information eagerly, including a hash lookup, wouldn't be nice.
* style: Derive debug for CascadeInputs.Emilio Cobos Álvarez2018-01-231-0/+2
| | | | It no longer has anything than rules.
* Replace NonZero<*{const,mut} _> with std::ptr::NonNullSimon Sapin2018-01-221-5/+5
|
* style: Track the visited-handling-mode on the MatchingContext.Emilio Cobos Álvarez2018-01-191-2/+0
| | | | | | | | | Instead of on the stack. This fixes bugs where we're not passing the value around correctly, like from ::-moz-any. This is a fix for https://bugzilla.mozilla.org/show_bug.cgi?id=1431539.
* layout: Remove type parameter from PseudoElementType.Emilio Cobos Álvarez2018-01-141-14/+12
| | | | Everyone uses () now.
* style: Remove unused optional display from PseudoElementType definition.Emilio Cobos Álvarez2018-01-141-7/+5
| | | | Everyone passes None now.
* style: Add invalidation support for ::slotted().Emilio Cobos Álvarez2018-01-091-0/+4
| | | | | | Bug: 1424607 Reviewed-by: heycam MozReview-Commit-ID: 8pIVUx27o7x
* style: Remove TNode::set_can_be_fragmented and TNode::can_be_fragmented.Emilio Cobos Álvarez2018-01-041-12/+0
| | | | | Replace them instead by a computed value flag, the same way as the IS_IN_DISPLAY_NONE_SUBTREE flag works.
* Revert #19666 since we do create NAC elements and expect them to be inline.Emilio Cobos Álvarez2017-12-311-0/+4
| | | | | | | | This reverts commit 1970e82b0d310128eabe8466d39d42cc20e7ae4b, reversing changes made to e882660ea694f9f12d9d2936012dbdf192f8aec8. The reparenting logic is still bogus, but I'll figure out how to deal with that in a bit.
* style: Simplify the skip item based display fixup adjustment.Emilio Cobos Álvarez2017-12-311-4/+0
| | | | | | | | | | | | | | | | | | In practice the only NAC that possibly inherits from a grid or flex container are pseudos. In Gecko, if the root element is an item container, custom anon content would also sometimes incorrectly inherit from that (see bug 1405635), but that's fixed in Stylo. We remove the IS_ROOT_ELEMENT blockification from the "skip display fixup" check, since the root element is never NAC or anything like that, so there's no need for the check. This also fixes some reparenting fishiness related to pseudo-elements. We were only skipping the fixup when reparenting anon boxes, not when reparenting normal element styles, nor when reparenting other pseudo styles which are not anon boxes.
* selectors: Simplify :visited by only using the "is inside link" information.Emilio Cobos Álvarez2017-12-081-3/+3
| | | | | | | | | | | | | | | | | | | Right now we go through a lot of hoops to see if we ever see a relevant link. However, that information is not needed: if the element is a link, we'll always need to compute its visited style because its its own relevant link. If the element inherits from a link, we need to also compute the visited style anyway. So the "has a relevant link been found" is pretty useless when we know what are we inheriting from. The branches at the beginning of matches_complex_selector_internal were affecting performance, and there are no good reasons to keep them. I've verified that this passes all the visited tests in mozilla central, and that the test-cases too-flaky to be landed still pass.
* style: Introduce TNode::is_in_document.Emilio Cobos Álvarez2017-11-041-1/+5
| | | | | MozReview-Commit-ID: BrhhoOghtUL Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
* Backed out changeset dbd300f4d75b for build bustage. r=backout on a CLOSED TREEGecko Backout2017-11-031-5/+1
| | | | Backs out https://github.com/servo/servo/pull/19108
* style: Introduce TNode::is_in_document.Emilio Cobos Álvarez2017-11-031-1/+5
| | | | MozReview-Commit-ID: BrhhoOghtUL
* Bump bitflags to 1.0 in every servo crateBastien Orivel2017-10-301-15/+13
|
* style: Introduce TDocument::is_html_element and TDocument::quirks_mode.Emilio Cobos Álvarez2017-10-261-3/+11
| | | | | This allows some code to read a bit nicer, and stop passing down quirks mode to querySelector / querySelectorAll.
* style: Add TNode::owner_doc.Emilio Cobos Álvarez2017-10-261-1/+9
|
* style: Introduce a TDocument trait.Emilio Cobos Álvarez2017-10-261-7/+12
| | | | This will be useful for querySelector optimizations.
* style: Remove PresentationalHintsSynthesizer.Emilio Cobos Álvarez2017-10-261-20/+14
| | | | This is not really an useful abstraction, and I never knew how to spell it.
* Backed out changeset e64e659c077d: servo PR #18809 and revendor for reftest ↵Gecko Backout2017-10-191-13/+15
| | | | | | failures, e.g. in layout/reftests/bugs/392435-1.html. r=backout on a CLOSED TREE Backs out https://github.com/servo/servo/pull/18809
* Auto merge of #18809 - Eijebong:bitflags, r=noxbors-servo2017-10-191-15/+13
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update bitflags to 1.0 in every servo crate It still needs dependencies update to remove all the other bitflags versions. - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes do not require tests because it's a dependency update <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/18809) <!-- Reviewable:end -->
| * Update bitflags to 1.0 in every servo crateBastien Orivel2017-10-191-15/+13
| | | | | | | | | | It still needs dependencies update to remove all the other bitflags versions.
* | style: Make MatchingContext generic over SelectorImpl.Emilio Cobos Álvarez2017-10-191-24/+28
|/ | | | | This will help Xidorn implement tree pseudos, and in general makes sense, allowing to put specific matching data in a selectors implementation.
* style: Remove unused TNode::is_in_doc.Emilio Cobos Álvarez2017-10-171-4/+0
| | | | Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
* style: Remove a few unused functions.Emilio Cobos Álvarez2017-10-171-5/+0
|