OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "config.h" | 5 #include "config.h" |
6 #include "platform/graphics/paint/CompositingDisplayItem.h" | 6 #include "platform/graphics/paint/CompositingDisplayItem.h" |
7 | 7 |
8 #include "platform/RuntimeEnabledFeatures.h" | 8 #include "platform/RuntimeEnabledFeatures.h" |
9 #include "platform/graphics/GraphicsContext.h" | 9 #include "platform/graphics/GraphicsContext.h" |
| 10 #include "platform/graphics/skia/SkiaUtils.h" |
10 #include "public/platform/WebDisplayItemList.h" | 11 #include "public/platform/WebDisplayItemList.h" |
11 | 12 |
12 namespace blink { | 13 namespace blink { |
13 | 14 |
14 void BeginCompositingDisplayItem::replay(GraphicsContext* context) | 15 void BeginCompositingDisplayItem::replay(GraphicsContext* context) |
15 { | 16 { |
16 context->setCompositeOperation(m_preCompositeOp, m_preBlendMode); | 17 context->setCompositeOperation(m_preCompositeOp, m_preBlendMode); |
17 context->beginLayer(m_opacity, m_preCompositeOp); | 18 context->beginLayer(m_opacity, WebCoreCompositeToSkiaComposite(m_preComposit
eOp, m_preBlendMode)); |
18 context->setCompositeOperation(m_postCompositeOp, WebBlendModeNormal); | 19 context->setCompositeOperation(m_postCompositeOp, WebBlendModeNormal); |
19 } | 20 } |
20 | 21 |
21 void BeginCompositingDisplayItem::appendToWebDisplayItemList(WebDisplayItemList*
list) const | 22 void BeginCompositingDisplayItem::appendToWebDisplayItemList(WebDisplayItemList*
list) const |
22 { | 23 { |
23 // FIXME: Change this to appendCompositingItem. | 24 // FIXME: Change this to appendCompositingItem. |
24 list->appendTransparencyItem(m_opacity, m_preBlendMode); | 25 list->appendTransparencyItem(m_opacity, m_preBlendMode); |
25 } | 26 } |
26 | 27 |
27 #ifndef NDEBUG | 28 #ifndef NDEBUG |
28 void BeginCompositingDisplayItem::dumpPropertiesAsDebugString(WTF::StringBuilder
& stringBuilder) const | 29 void BeginCompositingDisplayItem::dumpPropertiesAsDebugString(WTF::StringBuilder
& stringBuilder) const |
29 { | 30 { |
30 DisplayItem::dumpPropertiesAsDebugString(stringBuilder); | 31 DisplayItem::dumpPropertiesAsDebugString(stringBuilder); |
31 stringBuilder.append(WTF::String::format(", preCompositingOp: %d, preBlendMo
de: %d, opacity: %f, postCompositingOp: %d", m_preCompositeOp, m_preBlendMode, m
_opacity, m_postCompositeOp)); | 32 stringBuilder.append(WTF::String::format(", preCompositingOp: %d, preBlendMo
de: %d, opacity: %f, postCompositingOp: %d", m_preCompositeOp, m_preBlendMode, m
_opacity, m_postCompositeOp)); |
32 } | 33 } |
33 #endif | 34 #endif |
34 | 35 |
35 void EndCompositingDisplayItem::replay(GraphicsContext* context) | 36 void EndCompositingDisplayItem::replay(GraphicsContext* context) |
36 { | 37 { |
37 context->endLayer(); | 38 context->endLayer(); |
38 } | 39 } |
39 | 40 |
40 void EndCompositingDisplayItem::appendToWebDisplayItemList(WebDisplayItemList* l
ist) const | 41 void EndCompositingDisplayItem::appendToWebDisplayItemList(WebDisplayItemList* l
ist) const |
41 { | 42 { |
42 // FIXME: Change this to appendEndCompositingItem. | 43 // FIXME: Change this to appendEndCompositingItem. |
43 list->appendEndTransparencyItem(); | 44 list->appendEndTransparencyItem(); |
44 } | 45 } |
45 | 46 |
46 } // namespace blink | 47 } // namespace blink |
OLD | NEW |