Changeset 96467 in webkit


Ignore:
Timestamp:
Oct 1, 2011 7:21:48 PM (13 years ago)
Author:
vangelis@chromium.org
Message:

[chromium] Fixing draw matrix for composited layers. This
was a regression introduced by:
http://trac.webkit.org/changeset/96454

https://bugs.webkit.org/show_bug.cgi?id=69217

Reviewed by James Robinson.

Tests: compositor test now pass

  • platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:

(WebCore::CCTiledLayerImpl::draw):

  • platform/graphics/chromium/cc/CCTiledLayerImpl.h:
Location:
trunk/Source/WebCore
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r96465 r96467  
     12011-10-01  Vangelis Kokkevis  <vangelis@chromium.org>
     2
     3        [chromium] Fixing draw matrix for composited layers. This
     4        was a regression introduced by:
     5        http://trac.webkit.org/changeset/96454
     6
     7        https://bugs.webkit.org/show_bug.cgi?id=69217
     8
     9        Reviewed by James Robinson.
     10
     11        Tests: compositor test now pass
     12
     13        * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
     14        (WebCore::CCTiledLayerImpl::draw):
     15        * platform/graphics/chromium/cc/CCTiledLayerImpl.h:
     16
    1172011-10-01  Geoffrey Garen  <ggaren@apple.com>
    218
  • trunk/Source/WebCore/platform/graphics/chromium/cc/CCTiledLayerImpl.cpp

    r96454 r96467  
    118118        return;
    119119
    120     TransformationMatrix deviceMatrix = TransformationMatrix(layerRenderer->windowMatrix() * layerRenderer->projectionMatrix() * m_tilingTransform).to2dTransform();
     120    TransformationMatrix layerTransform = tilingTransform();
     121    TransformationMatrix deviceMatrix = TransformationMatrix(layerRenderer->windowMatrix() * layerRenderer->projectionMatrix() * layerTransform).to2dTransform();
    121122
    122123    // Don't draw any tiles when device matrix is not invertible.
     
    151152        if (useAA) {
    152153            const ProgramAA* program = layerRenderer->tilerProgramAA();
    153             drawTiles(layerRenderer, layerRect, m_tilingTransform, deviceMatrix, deviceRect, layerQuad, drawOpacity(), program, program->fragmentShader().fragmentTexTransformLocation(), program->fragmentShader().edgeLocation());
     154            drawTiles(layerRenderer, layerRect, layerTransform, deviceMatrix, deviceRect, layerQuad, drawOpacity(), program, program->fragmentShader().fragmentTexTransformLocation(), program->fragmentShader().edgeLocation());
    154155        } else {
    155156            const Program* program = layerRenderer->tilerProgram();
    156             drawTiles(layerRenderer, layerRect, m_tilingTransform, deviceMatrix, deviceRect, layerQuad, drawOpacity(), program, -1, -1);
     157            drawTiles(layerRenderer, layerRect, layerTransform, deviceMatrix, deviceRect, layerQuad, drawOpacity(), program, -1, -1);
    157158        }
    158159        break;
     
    160161        if (useAA) {
    161162            const ProgramSwizzleAA* program = layerRenderer->tilerProgramSwizzleAA();
    162             drawTiles(layerRenderer, layerRect, m_tilingTransform, deviceMatrix, deviceRect, layerQuad, drawOpacity(), program, program->fragmentShader().fragmentTexTransformLocation(), program->fragmentShader().edgeLocation());
     163            drawTiles(layerRenderer, layerRect, layerTransform, deviceMatrix, deviceRect, layerQuad, drawOpacity(), program, program->fragmentShader().fragmentTexTransformLocation(), program->fragmentShader().edgeLocation());
    163164        } else {
    164165            const ProgramSwizzle* program = layerRenderer->tilerProgramSwizzle();
    165             drawTiles(layerRenderer, layerRect, m_tilingTransform, deviceMatrix, deviceRect, layerQuad, drawOpacity(), program, -1, -1);
     166            drawTiles(layerRenderer, layerRect, layerTransform, deviceMatrix, deviceRect, layerQuad, drawOpacity(), program, -1, -1);
    166167        }
    167168        break;
  • trunk/Source/WebCore/platform/graphics/chromium/cc/CCTiledLayerImpl.h

    r96454 r96467  
    4949    virtual void dumpLayerProperties(TextStream&, int indent) const;
    5050
    51     void setTilingTransform(const TransformationMatrix& tilingTransform) { m_tilingTransform = tilingTransform; }
    5251    void setSkipsDraw(bool skipsDraw) { m_skipsDraw = skipsDraw; }
    5352    void setTextureOrientation(LayerTextureUpdater::Orientation textureOrientation) { m_textureOrientation = textureOrientation; }
     
    8281    void drawTiles(LayerRendererChromium*, const IntRect& contentRect, const TransformationMatrix& globalTransform, const TransformationMatrix& deviceTransform, const CCLayerQuad& deviceRect, const CCLayerQuad& contentQuad, float opacity, const T* program, int fragmentTexTransformLocation, int edgeLocation);
    8382
    84     TransformationMatrix m_tilingTransform;
    8583    bool m_skipsDraw;
    8684    LayerTextureUpdater::Orientation m_textureOrientation;
Note: See TracChangeset for help on using the changeset viewer.