Граф коммитов

31 Коммитов

Автор SHA1 Сообщение Дата
Emilio Cobos Álvarez bc989db245 Bug 1787623 - Make invalid and unsupported filters paint the unfiltered frame. r=botond
https://drafts.fxtf.org/filter-effects/#typedef-filter-url:

> A filter reference to a filter element. For example
> url(commonfilters.svg#filter). If the filter references a non-existent
> object or the referenced object is not a filter element, then the
> whole filter chain is ignored. No filter is applied to the object.

Differential Revision: https://phabricator.services.mozilla.com/D156074
2022-09-05 10:24:14 +00:00
criss 41e24fc43c Backed out changeset c3d6bd944022 (bug 1787623) for causing mochitest failures on test_filter_crossorigin.html . CLOSED TREE 2022-09-05 09:21:57 +03:00
Emilio Cobos Álvarez 8636e7bfbc Bug 1787623 - Make invalid and unsupported filters paint the unfiltered frame. r=botond
https://drafts.fxtf.org/filter-effects/#typedef-filter-url:

> A filter reference to a filter element. For example
> url(commonfilters.svg#filter). If the filter references a non-existent
> object or the referenced object is not a filter element, then the
> whole filter chain is ignored. No filter is applied to the object.

Differential Revision: https://phabricator.services.mozilla.com/D156074
2022-09-04 20:53:04 +00:00
Marian-Vasile Laza 5907792df1 Backed out changeset b134d587690d (bug 1787623) for causing reftest failures on filter-basic-01.svg. CLOSED TREE 2022-09-04 17:56:37 +03:00
Emilio Cobos Álvarez 07b3a81950 Bug 1787623 - Make invalid and unsupported filters paint the unfiltered frame. r=botond
https://drafts.fxtf.org/filter-effects/#typedef-filter-url:

> A filter reference to a filter element. For example
> url(commonfilters.svg#filter). If the filter references a non-existent
> object or the referenced object is not a filter element, then the
> whole filter chain is ignored. No filter is applied to the object.

Differential Revision: https://phabricator.services.mozilla.com/D156074
2022-09-04 07:43:56 +00:00
Emilio Cobos Álvarez bc6e066129 Bug 1778718 - Make filters on the root work when using fallback drawing. r=tnikkel
This code-path will be hit with the next patch.

Depends on D151473

Differential Revision: https://phabricator.services.mozilla.com/D151474
2022-07-12 09:46:01 +00:00
Razvan Cojocaru f0ceea18e4 Bug 1767127 - Change the types of FilterInstance::m[UserSpaceToFilter|FilterSpaceToUser]SpaceScale to MatrixScalesDouble. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D148138
2022-06-03 19:55:30 +00:00
Dan Robertson 47b6f96706 Bug 1676299 Part 4: Modify BaseMatrix::ScaleFactors() to return a ScaleFactors2D. r=botond
This changes BaseMatrix::ScaleFactors() to return a ScaleFactors2D instead of
a SizeTyped.

Depends on D145041

Differential Revision: https://phabricator.services.mozilla.com/D144666
2022-04-30 01:35:24 +00:00
Dan Robertson abf76f9787 Bug 1676299 Part 3: Limit early return from PaintFilteredFrame. r=botond
Only return early from PaintFilteredFrame if the scale matrix determinant will
be zero. This should only occur if either the height or width of the context
matrix scale factors are zero.

Depends on D144669

Differential Revision: https://phabricator.services.mozilla.com/D145041
2022-04-30 01:35:24 +00:00
Daniel Holbert 8e9c53a643 Bug 1754277: Fix non-unified build errors in layout/svg, and mark it as safe to build in non-unified mode. r=emilio
Below are the build errors fixed here.

layout/svg/SVGFEUnstyledLeafFrame.cpp:75:33: error: no type named 'SVGFEUnstyledElement' in namespace 'mozilla::dom'

* Fixed this by including SVGFilters.h (which defines this type).

layout/svg/SVGFEContainerFrame.cpp:83:12: error: unknown type name 'SVGFE'; did you mean 'dom::SVGFE'?
layout/svg/SVGFELeafFrame.cpp:80:12: error: unknown type name 'SVGFE'; did you mean 'dom::SVGFE'?

* Fixed these with a 'using' statement for the namespace.

layout/svg/SVGGFrame.cpp:34:32: error: unknown type name 'SVGElement'

* Fixed by including this type's header.

layout/svg/FilterInstance.cpp:873:9: error: use of undeclared identifier 'nsLayoutUtils'
layout/svg/SVGOuterSVGFrame.cpp:623:29: error: incomplete type 'nsLayoutUtils' named in nested name specifier
layout/svg/SVGUseFrame.cpp:84:5: error: use of undeclared identifier 'nsLayoutUtils
layout/svg/SVGViewportFrame.cpp:207:9: error: use of undeclared identifier 'nsLayoutUtils'

* Fixed these by including this header.

layout/svg/SVGOuterSVGFrame.cpp:88:20: error: unused function 'DependsOnIntrinsicSize' [-Werror,-Wunused-function]

* Fixed by removing the unused function.

layout/svg/SVGStopFrame.cpp:86:21: error: unknown type name 'SVGGradientFrame'

* Fixed this by including this header.

Differential Revision: https://phabricator.services.mozilla.com/D138187
2022-02-08 21:22:18 +00:00
Jeff Muizelaar ee53fc453d Bug 1711133. Draw nothing for unitialized filters. r=mstange
Currently we're falling back when hitting an uninitialized filter (e.g. a bad
url) and the fallback path just draws nothing. We can do that just as well by
drawing nothing ourselves.

Differential Revision: https://phabricator.services.mozilla.com/D130281
2021-11-15 19:05:14 +00:00
Nicolas Silva 8496ccf07d Bug 1726102 - Telemetry on WebRender filter fallback via UseCounter. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D122816
2021-08-30 15:54:46 +00:00
Matt Woodrow 6543cd468c Bug 1540737 - Allow filter painting to take a callback for painting children. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D114670
2021-05-19 01:11:30 +00:00
Csoregi Natalia 1f3f5df2ce Backed out 8 changesets (bug 1540737) for causing graphics crashes in Bug 1711718. a=backout
Backed out changeset 37628894ffd5 (bug 1540737)
Backed out changeset 4b5f53d5127b (bug 1540737)
Backed out changeset a73e041f1f1d (bug 1540737)
Backed out changeset 81f1a9d1a5e1 (bug 1540737)
Backed out changeset b3d0cc460b24 (bug 1540737)
Backed out changeset f929de495b87 (bug 1540737)
Backed out changeset 2f5b8369d061 (bug 1540737)
Backed out changeset b4c93d182ef4 (bug 1540737)
2021-05-18 19:06:20 +03:00
Matt Woodrow b6a2dc4721 Bug 1540737 - Allow filter painting to take a callback for painting children. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D114670
2021-05-17 23:53:42 +00:00
Simon Giesecke 971b645fe3 Bug 1660470 - Add missing include directives/forward declarations. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D87865
2020-11-23 16:21:38 +00:00
coderboncuk c8b12f5aa2 Bug 1676299 - Removed the xMajor parameter from BaseMatrix::ScaleFactors() r=botond
Differential Revision: https://phabricator.services.mozilla.com/D97449
2020-11-18 18:53:01 +00:00
longsonr dce2ec6840 Bug 1660347 - downscaling a filtered image in a pattern results in the image being incorrectly scaled r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D93710
2020-10-16 01:17:47 +00:00
Timothy Nikkel 69aaaddd9c Bug 1656711. Support hardware accelerated <feGaussianBlur> SVG filters if the x and y radius are not equal with webrender. r=gw
Pretty straight forward, mostly just plumbing stuff through.

Differential Revision: https://phabricator.services.mozilla.com/D85666
2020-08-25 07:26:21 +00:00
Brindusan Cristian dc4df79ab1 Backed out changeset 0da3036d0890 (bug 1656711) as requested by tnikkel on irc to test if it caused bug 1657558 or not. CLOSED TREE 2020-08-07 02:27:01 +03:00
Timothy Nikkel 78199a16a4 Bug 1656711. Support hardware accelerated <feGaussianBlur> SVG filters if the x and y radius are not equal with webrender. r=gw
Pretty straight forward, mostly just plumbing stuff through.

Differential Revision: https://phabricator.services.mozilla.com/D85666
2020-08-03 00:48:04 +00:00
Dorel Luca eb411c9e05 Backed out changeset fed45fbadc26 (bug 1656711) for webrender build bustage 2020-08-03 00:59:31 +03:00
Timothy Nikkel 9db06357a1 Bug 1656711. Support hardware accelerated <feGaussianBlur> SVG filters if the x and y radius are not equal with webrender. r=gw
Pretty straight forward, mostly just plumbing stuff through.

Differential Revision: https://phabricator.services.mozilla.com/D85666
2020-08-02 21:33:50 +00:00
Dorel Luca e210ecd37e Backed out changeset 26ff1a25028d (bug 1656711) for Webrender build bustages 2020-08-03 00:07:39 +03:00
Timothy Nikkel 9b76156d6b Bug 1656711. Support hardware accelerated <feGaussianBlur> SVG filters if the x and y radius are not equal with webrender. r=gw
Pretty straight forward, mostly just plumbing stuff through.

Differential Revision: https://phabricator.services.mozilla.com/D85666
2020-08-02 20:45:02 +00:00
Ting-Yu Lin fdc00547f6 Bug 1637130 - Rename visual overflow to ink overflow. r=dbaron
This patch is generated by:

```
# Rename the nsOverflowType enum.
rg -l "eVisualOverflow" layout/ gfx/ | xargs sed -i "s/eVisualOverflow/eInkOverflow/g"

# Rename and drop the "Get" prefix from various functions.
rg -l "GetVisualOverflowRect" layout/ gfx/ | xargs sed -i "s/GetVisualOverflowRect/InkOverflowRect/g"
rg -l "GetPreEffectsVisualOverflowRect" layout/ gfx/ | xargs sed -i "s/GetPreEffectsVisualOverflowRect/PreEffectsInkOverflowRect/g"
rg -l "GetVisualOverflowFromDeltas" layout/ gfx/ | xargs sed -i "s/GetVisualOverflowFromDeltas/InkOverflowFromDeltas/g"
rg -l "GetScrollableOverflowRect" layout/ gfx/ | xargs sed -i "s/GetScrollableOverflowRect/ScrollableOverflowRect/g"

# Rename, drop the "Get" prefix, and change the suffix "Area" to "Rect"
# (because they return nsRect) for the two methods in nsLineBox.
rg -l "GetVisualOverflowArea" layout/ gfx/ | xargs sed -i "s/GetVisualOverflowArea/InkOverflowRect/g"
rg -l "GetScrollableOverflowArea" layout/ gfx/ | xargs sed -i "s/GetScrollableOverflowArea/ScrollableOverflowRect/g"

# Rename rest of the functions and variables.
rg -l "VisualOverflow" layout/ gfx/ | xargs sed -i "s/VisualOverflow/InkOverflow/g"
rg -l "visual overflow" layout/ gfx/ | xargs sed -i "s/visual overflow/ink overflow/g"
rg -l "visualOverflow" layout/ gfx/ | xargs sed -i "s/visualOverflow/inkOverflow/g"
rg -l "visOverflow" layout/ gfx/ | xargs sed -i "s/visOverflow/inkOverflow/g"
rg -l "vis-overflow" layout/ gfx/ python/ | xargs sed -i "s/vis-overflow/ink-overflow/g"

./mach clang-format
```

Differential Revision: https://phabricator.services.mozilla.com/D84231
2020-07-20 20:17:36 +00:00
Simon Giesecke 96fb649d21 Bug 1652017 - Remove unnecessary includes for expensive nsIFrame.h. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D83111
2020-07-15 13:44:39 +00:00
Emilio Cobos Álvarez 47efbc8aa8 Bug 1652819 - Don't assume that all filtered frames have an associated DOM node. r=mstange
This is not true for pages, which I want to add a filter to in
bug 1631449.

Differential Revision: https://phabricator.services.mozilla.com/D83544
2020-07-14 18:08:23 +00:00
longsonr 875f5e88ac Bug 1259861 - Move everything else into the mozilla namespace in layout/svg r=dholbert
Also: adjust include paths to be consistent for usages of various SVG headers,
and remove unused SVG includes (mostly for "utils" classes),
and drop stray "ns" from already-renamed SVG classes in various code comments.

Differential Revision: https://phabricator.services.mozilla.com/D83140
2020-07-11 02:20:20 +00:00
longsonr cc4f307539 Bug 1651404 - Move nsSVGDisplayableFrame and nsISVGSVGFrame to the mozilla namespace r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D82945
2020-07-09 18:34:54 +00:00
longsonr c6379dd48c Bug 1649177 - Move SVG filter classes to the mozilla namespace r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D81555
2020-06-30 18:11:50 +00:00