jwmcglynn / donner

Donner SVG, a modern C++20 SVG rendering library supporting the latest SVG2 and CSS3 standards
https://jwmcglynn.github.io/donner/
ISC License
13 stars 1 forks source link

Create MVP of <filter> effect sufficient for the Donner splash screen #162

Closed jwmcglynn closed 5 months ago

jwmcglynn commented 5 months ago

This makes progress towards #151, adding the following functionality:

This also refactors the component model, and introduces a separate System concept to separate the component data model from logic. Lots of doxygen documentation has also been added.

What filter support remains?

codecov[bot] commented 5 months ago

Codecov Report

Attention: Patch coverage is 76.26648% with 342 lines in your changes are missing coverage. Please review.

Project coverage is 87.53%. Comparing base (9952a68) to head (1df398c).

Files Patch % Lines
src/svg/components/shadow/shadow_tree_system.cc 56.73% 54 Missing and 7 partials :warning:
src/svg/properties/property_registry.cc 23.63% 38 Missing and 4 partials :warning:
src/svg/components/shape/shape_system.cc 82.58% 25 Missing and 10 partials :warning:
...rc/svg/svg_filter_primitive_standard_attributes.cc 12.82% 34 Missing :warning:
src/svg/xml/attribute_parser.cc 62.50% 20 Missing and 10 partials :warning:
src/svg/components/paint/paint_system.cc 84.43% 20 Missing and 6 partials :warning:
src/svg/components/filter/filter_effect.cc 0.00% 17 Missing :warning:
src/svg/renderer/renderer_skia.cc 82.25% 7 Missing and 4 partials :warning:
src/svg/components/rendering_context.cc 80.43% 7 Missing and 2 partials :warning:
src/svg/components/style/style_system.cc 81.63% 8 Missing and 1 partial :warning:
... and 21 more
Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #162 +/- ## ========================================== - Coverage 88.09% 87.53% -0.57% ========================================== Files 230 243 +13 Lines 17647 18167 +520 Branches 2002 2044 +42 ========================================== + Hits 15547 15902 +355 - Misses 1518 1667 +149 - Partials 582 598 +16 ``` | [Flag](https://app.codecov.io/gh/jwmcglynn/donner/pull/162/flags?src=pr&el=flags&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Jeff+McGlynn) | Coverage Δ | | |---|---|---| | [unittests](https://app.codecov.io/gh/jwmcglynn/donner/pull/162/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Jeff+McGlynn) | `87.52% <76.26%> (-0.58%)` | :arrow_down: | Flags with carried forward coverage won't be shown. [Click here](https://docs.codecov.io/docs/carryforward-flags?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Jeff+McGlynn#carryforward-flags-in-the-pull-request-comment) to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.