Changeset 204790 in webkit


Ignore:
Timestamp:
Aug 23, 2016, 2:52:09 AM (9 years ago)
Author:
Carlos Garcia Campos
Message:

Merge r202022 - SVG elements don't blend correctly into HTML
https://bugs.webkit.org/show_bug.cgi?id=158718
<rdar://problem/26782004>

Reviewed by Antoine Quint.

Source/WebCore:

We were not creating any transparency layers for the root SVG nodes.
This is ok if the SVG is the root document, because it is the backdrop.
However, if it is inline SVG, it needs to apply the operation in
order to composite into the document.

Test: svg/css/mix-blend-mode-with-inline-svg.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::beginTransparencyLayers):

LayoutTests:

  • svg/css/mix-blend-mode-with-inline-svg-expected.html: Added.
  • svg/css/mix-blend-mode-with-inline-svg.html: Added.
Location:
releases/WebKitGTK/webkit-2.12
Files:
2 added
3 edited

Legend:

Unmodified
Added
Removed
  • releases/WebKitGTK/webkit-2.12/LayoutTests/ChangeLog

    r204789 r204790  
     12016-06-13  Dean Jackson  <dino@apple.com>
     2
     3        SVG elements don't blend correctly into HTML
     4        https://bugs.webkit.org/show_bug.cgi?id=158718
     5        <rdar://problem/26782004>
     6
     7        Reviewed by Antoine Quint.
     8
     9        * svg/css/mix-blend-mode-with-inline-svg-expected.html: Added.
     10        * svg/css/mix-blend-mode-with-inline-svg.html: Added.
     11
    1122016-06-09  Antoine Quint  <graouts@apple.com>
    213
  • releases/WebKitGTK/webkit-2.12/Source/WebCore/ChangeLog

    r204789 r204790  
     12016-06-13  Dean Jackson  <dino@apple.com>
     2
     3        SVG elements don't blend correctly into HTML
     4        https://bugs.webkit.org/show_bug.cgi?id=158718
     5        <rdar://problem/26782004>
     6
     7        Reviewed by Antoine Quint.
     8
     9        We were not creating any transparency layers for the root SVG nodes.
     10        This is ok if the SVG is the root document, because it is the backdrop.
     11        However, if it is inline SVG, it needs to apply the operation in
     12        order to composite into the document.
     13
     14        Test: svg/css/mix-blend-mode-with-inline-svg.html
     15
     16        * rendering/RenderLayer.cpp:
     17        (WebCore::RenderLayer::beginTransparencyLayers):
     18
    1192016-06-09  Antoine Quint  <graouts@apple.com>
    220
  • releases/WebKitGTK/webkit-2.12/Source/WebCore/rendering/RenderLayer.cpp

    r200027 r204790  
    18061806
    18071807#if ENABLE(CSS_COMPOSITING)
    1808         // RenderSVGRoot takes care of its blend mode.
    1809         if (!renderer().isSVGRoot() && hasBlendMode())
     1808        bool usesCompositeOperation = hasBlendMode() && !(renderer().isSVGRoot() && parent() && parent()->isRootLayer());
     1809        if (usesCompositeOperation)
    18101810            context.setCompositeOperation(context.compositeOperation(), blendMode());
    18111811#endif
     
    18141814
    18151815#if ENABLE(CSS_COMPOSITING)
    1816         if (!renderer().isSVGRoot() && hasBlendMode())
     1816        if (usesCompositeOperation)
    18171817            context.setCompositeOperation(context.compositeOperation(), BlendModeNormal);
    18181818#endif
Note: See TracChangeset for help on using the changeset viewer.