diff options
author | rosca <rosca@adobe.com> | 2014-11-09 02:25:13 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2014-11-09 10:25:38 +0000 |
commit | 948d29d0425d45276a41d5f994e443938e6a9256 (patch) | |
tree | 2160f8fd570275a84dd4a3999d29ba4d1306b24f /cc/layers/layer_impl.h | |
parent | 18550cbbb68bb9df91fe04a42bb019421c3fd077 (diff) | |
download | chromium_src-948d29d0425d45276a41d5f994e443938e6a9256.zip chromium_src-948d29d0425d45276a41d5f994e443938e6a9256.tar.gz chromium_src-948d29d0425d45276a41d5f994e443938e6a9256.tar.bz2 |
Render surface's owning layer should not generate quads with blend mode.
The root layer of a subtree that is render to a separate surface
doesn't need to use a blend mode for its draw quads.
GL renderer currently uses the blend mode only in DrawRPDQ, so it
shouldn't be affected by this change.
Software renderer uses blend mode for all kind of layers, but this patch
should not change the output pixels, since blending layers are always
promoted to render surfaces, and the first layer drawing to a clean
render surface will not be affected by the blend mode.
BUG=314865
Review URL: https://codereview.chromium.org/699893003
Cr-Commit-Position: refs/heads/master@{#303402}
Diffstat (limited to 'cc/layers/layer_impl.h')
-rw-r--r-- | cc/layers/layer_impl.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/cc/layers/layer_impl.h b/cc/layers/layer_impl.h index 5fe679c..12f1dca 100644 --- a/cc/layers/layer_impl.h +++ b/cc/layers/layer_impl.h @@ -323,6 +323,9 @@ class CC_EXPORT LayerImpl : public LayerAnimationValueObserver, return draw_properties_.screen_space_transform; } float draw_opacity() const { return draw_properties_.opacity; } + SkXfermode::Mode draw_blend_mode() const { + return draw_properties_.blend_mode; + } bool draw_opacity_is_animating() const { return draw_properties_.opacity_is_animating; } |