Changeset 166967 in webkit


Ignore:
Timestamp:
Apr 8, 2014, 3:27:37 PM (12 years ago)
Author:
cavalcantii@gmail.com
Message:

[SVG] Fix CSS transform handling when zoomed
https://bugs.webkit.org/show_bug.cgi?id=125836

Reviewed by Tim Horton.

Source/WebCore:

Tests: svg/zoom/page/zoom-css-transforms-expected.svg

svg/zoom/page/zoom-css-transforms.svg

Adjusts CSS transforms when used in SVG to account for unexpected
translation scale. Backport from Chromium #174910.

  • svg/SVGGraphicsElement.cpp:

(WebCore::SVGGraphicsElement::animatedLocalTransform):

LayoutTests:

Adjusts CSS transforms when used in SVG to account for unexpected
translation scale. Backport from Chromium #174910.

  • svg/zoom/page/zoom-css-transforms-expected.svg: Added.
  • svg/zoom/page/zoom-css-transforms.svg: Added.
Location:
trunk
Files:
2 added
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r166966 r166967  
     12014-04-08  Adenilson Cavalcanti  <cavalcantii@gmail.com>
     2
     3        [SVG] Fix CSS transform handling when zoomed
     4        https://bugs.webkit.org/show_bug.cgi?id=125836
     5
     6        Reviewed by Tim Horton.
     7
     8        Adjusts CSS transforms when used in SVG to account for unexpected
     9        translation scale. Backport from Chromium #174910.
     10
     11        * svg/zoom/page/zoom-css-transforms-expected.svg: Added.
     12        * svg/zoom/page/zoom-css-transforms.svg: Added.
     13
    1142014-04-08  Hans Muller  <hmuller@adobe.com>
    215
  • trunk/Source/WebCore/ChangeLog

    r166966 r166967  
     12014-04-08  Adenilson Cavalcanti  <cavalcantii@gmail.com>
     2
     3        [SVG] Fix CSS transform handling when zoomed
     4        https://bugs.webkit.org/show_bug.cgi?id=125836
     5
     6        Reviewed by Tim Horton.
     7
     8        Tests: svg/zoom/page/zoom-css-transforms-expected.svg
     9               svg/zoom/page/zoom-css-transforms.svg
     10
     11        Adjusts CSS transforms when used in SVG to account for unexpected
     12        translation scale. Backport from Chromium #174910.
     13
     14        * svg/SVGGraphicsElement.cpp:
     15        (WebCore::SVGGraphicsElement::animatedLocalTransform):
     16
    1172014-04-08  Hans Muller  <hmuller@adobe.com>
    218
  • trunk/Source/WebCore/svg/SVGGraphicsElement.cpp

    r165607 r166967  
    7676        // Flatten any 3D transform.
    7777        matrix = transform.toAffineTransform();
     78        // CSS bakes the zoom factor into lengths, including translation components.
     79        // In order to align CSS & SVG transforms, we need to invert this operation.
     80        float zoom = style->effectiveZoom();
     81        if (zoom != 1) {
     82            matrix.setE(matrix.e() / zoom);
     83            matrix.setF(matrix.f() / zoom);
     84        }
     85
    7886    } else
    7987        transform().concatenate(matrix);
Note: See TracChangeset for help on using the changeset viewer.