summaryrefslogtreecommitdiffstats
path: root/layout/svg
Commit message (Collapse)AuthorAgeLines
* Issue #1355 - Better way to create display items for column backgroundswin7-72020-04-14-24/+4
| | | | | | | | | | | | | | | | | | | | | | Part 1: Remove current table item, as it's never set. Part 2: Get rid of generic table painting code, and handle each class separately. Part 4: Hoist outline skipping into col(group) frame code. Part 5: Skip box-shadow for table column and column groups. Part 6: Store column and column group backgrounds separately, and then append them before the rest of the table contents. Part 7: Pass rects in display list coordinates to AppendBackgroundItemsToTop. Part 8: Create column and column group background display items as part of the cell's BuildDisplayList. Part 9: Used cached values instead of calling nsDisplayListBuilder::ToReferenceFrame when possible, since it can be expensive when the requested frame isn't the builder's current frame. Part 10: Make sure we build display items for table parts where only the normal position is visible, since we may need to create background items for ancestors at that position. Part 11: Create an AutoBuildingDisplayList when we create background items for table columns and column groups, so that we initialize the invalidation state correctly.
* Issue #438: Make the nsSVGOuterSVGAnonChildFrame a reference frame.wolfbeast2019-08-14-23/+33
| | | | | This causes transforms of the <svg> contents to be unaffected by scrolling / offset changes of the <svg> element.
* Issue #438: Check for non-rectilinear transformswolfbeast2019-08-14-0/+3
|
* Attach FrameProperties to each frame instead of using a shared hashtablewin7-72019-06-26-43/+38
| | | | Dispense the shared hashtable and instead attach the frame property list directly to nsIFrame.
* Add nullcheck in nsSVGUtils::PaintFrameWithEffectswolfbeast2019-04-06-3/+6
| | | | | | Some SVGs define a mask but an invalid mask frame. Check to make sure we have a `maskFrame` that isn't null before trying to use it. This resolves #1034
* Revert "add a nullptr check in nsSVGUtils::PaintFrameWithEffects"wolfbeast2019-04-06-1/+1
| | | | This reverts commit 00baf283622b47ad7926c6e62364854d3dfbc00a.
* add a nullptr check in nsSVGUtils::PaintFrameWithEffectsyami2019-04-03-1/+1
|
* Bug 1360343 - ensure maskSurface is not null before dereference, since it ↵cku2019-04-03-1/+2
| | | | | | | | | can be null because of OOM or gfx device reset. r=dvander MozReview-Commit-ID: HX2qsWLZpMg --HG-- extra : rebase_source : 046befc11151461a682842c31e2ce39247a5e1d8
* issue #908 - implement missing parts of CSS maskyami2019-02-02-182/+103
|
* Fix wrong SVG sizes with non-integer values for viewBox width/height.wolfbeast2018-09-14-4/+5
| | | | Includes a standalone reftest.
* Bug 1357432 (#750)Moonchild2018-09-05-17/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | * Part 1. Move IsLocalRefURL to nsContentUtils to reuse this function. (port-rewrite) `IsLocalRefURL` is originally designed to be used by URLValue only. Since we need this function in SVGUseElement::LookupHref too, move it to nsContentUtils as a util function. * Revert "Part 1. Move IsLocalRefURL to nsContentUtils to reuse this function. (port-rewrite)" This reverts commit 19f010c62022e269f99066a8d90e3522fe31adaf. * Part 1. Duplicate IsLocalRefURL to nsContentUtils to reuse this function. `IsLocalRefURL` is originally designed to be used by URLValue only. Since we need this function in SVGUseElement::LookupHref too, duplicate it to nsContentUtils as a util function. This is a duplication because CSSValue uses stringbuffers and not nsStrings. While Bug 1356060 - "Just use nsString in URLValueData" converts this use from stringbuffer to nsString, it builds on a bunch of vartype refactoring (nsString vs. nsAString, etc.) which is too much of a headache to deal with just to deduplicate this simple function. * Part 2. Implement nsSVGEffects::GetBaseURLForLocalRef to export local-ref-url-resolving logic. ResolveURLUsingLocalRef is designed to be internally used by nsSVGEffects::Get-{SVGEffect}-URI functions. Since we also need it in SVGUseElement::LookupHref, make it public in nsSVGEffects. * Part 3. Resolve local-ref in SVGUseElement::LookupHref by nsSVGEffects::GetBaseURLForLocalRef. * Part 4. Reftest for using local-ref as xlink:href value.
* Bug 1346501. Don't mark every image as visible when a frame is created for itjanekptacijarabaci2018-07-12-0/+12
|
* Bug 1448774. r=dholbert, a=RyanVMRobert Longson2018-04-19-2/+2
| | | | | | --HG-- extra : source : edfd9ffbd7208ef0a59f40a0d77d8dd53c905cb9 extra : intermediate-source : 3784b22ec536b08ce95201d73ae8806340c18b8c
* Bug 1443092 - Avoid calling SVGAnimatedEnumeration::AnimVal() from ↵Botond Ballo2018-04-19-2/+1
| | | | | | | | | | nsSVGUtils::GetBBox(). r=jwatt, a=RyanVM AnimVal() is a DOM getter, and it flushes animations, which we don't want in GetBBox() which is called from display list building cide and FrameLayerBuilder. MozReview-Commit-ID: DWgm7wAV7C0
* SVG - support radialGradient fr attributejanekptacijarabaci2018-03-12-2/+3
|
* Only create a single display transform for SVG frames with single child ↵wolfbeast2018-02-03-13/+36
| | | | | | transforms. This improves performance on repeated scaling of vectors.
* Add m-esr52 at 52.6.0Matt A. Tobin2018-02-02-0/+29133