Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(134)

Side by Side Diff: cc/CCDrawQuad.cpp

Issue 10989028: cc: Remove WebCore dependecies from CCRenderPass and CCDrawQuad classes. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 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 "CCDrawQuad.h" 6 #include "CCDrawQuad.h"
7 7
8 #include "CCCheckerboardDrawQuad.h" 8 #include "CCCheckerboardDrawQuad.h"
9 #include "CCDebugBorderDrawQuad.h" 9 #include "CCDebugBorderDrawQuad.h"
10 #include "CCIOSurfaceDrawQuad.h" 10 #include "CCIOSurfaceDrawQuad.h"
11 #include "CCRenderPassDrawQuad.h" 11 #include "CCRenderPassDrawQuad.h"
12 #include "CCSolidColorDrawQuad.h" 12 #include "CCSolidColorDrawQuad.h"
13 #include "CCStreamVideoDrawQuad.h" 13 #include "CCStreamVideoDrawQuad.h"
14 #include "CCTextureDrawQuad.h" 14 #include "CCTextureDrawQuad.h"
15 #include "CCTileDrawQuad.h" 15 #include "CCTileDrawQuad.h"
16 #include "CCYUVVideoDrawQuad.h" 16 #include "CCYUVVideoDrawQuad.h"
17 #include "IntRect.h" 17 #include "IntRect.h"
18 18
19 namespace cc { 19 namespace cc {
20 20
21 CCDrawQuad::CCDrawQuad(const CCSharedQuadState* sharedQuadState, Material materi al, const IntRect& quadRect) 21 CCDrawQuad::CCDrawQuad(const CCSharedQuadState* sharedQuadState, Material materi al, const WebKit::WebRect& quadRect)
22 : m_sharedQuadState(sharedQuadState) 22 : m_sharedQuadState(sharedQuadState)
23 , m_sharedQuadStateId(sharedQuadState->id) 23 , m_sharedQuadStateId(sharedQuadState->id)
24 , m_material(material) 24 , m_material(material)
25 , m_quadRect(quadRect) 25 , m_quadRect(quadRect)
26 , m_quadVisibleRect(quadRect) 26 , m_quadVisibleRect(quadRect)
27 , m_quadOpaque(true) 27 , m_quadOpaque(true)
28 , m_needsBlending(false) 28 , m_needsBlending(false)
29 { 29 {
30 ASSERT(m_sharedQuadState); 30 ASSERT(m_sharedQuadState);
31 ASSERT(m_material != Invalid); 31 ASSERT(m_material != Invalid);
32 } 32 }
33 33
34 IntRect CCDrawQuad::opaqueRect() const 34 WebKit::WebRect CCDrawQuad::opaqueRect() const
35 { 35 {
36 if (opacity() != 1) 36 if (opacity() != 1)
37 return IntRect(); 37 return WebKit::WebRect();
38 if (m_sharedQuadState->opaque && m_quadOpaque) 38 if (m_sharedQuadState->opaque && m_quadOpaque)
39 return m_quadRect; 39 return m_quadRect;
40 return m_opaqueRect; 40 return m_opaqueRect;
41 } 41 }
42 42
43 void CCDrawQuad::setQuadVisibleRect(const IntRect& quadVisibleRect) 43 // FIXME: Move this back to the header file when we are no longer using WebRect.
44 bool CCDrawQuad::needsBlending() const
45 {
46 return m_needsBlending || !static_cast<IntRect>(opaqueRect()).contains(static_ cast<IntRect>(m_quadVisibleRect));
47 }
48
49 void CCDrawQuad::setQuadVisibleRect(const WebKit::WebRect& quadVisibleRect)
44 { 50 {
45 IntRect intersection = quadVisibleRect; 51 IntRect intersection = quadVisibleRect;
46 intersection.intersect(m_quadRect); 52 intersection.intersect(static_cast<IntRect>(m_quadRect));
47 m_quadVisibleRect = intersection; 53 m_quadVisibleRect = intersection;
48 } 54 }
49 55
50 unsigned CCDrawQuad::size() const 56 unsigned CCDrawQuad::size() const
51 { 57 {
52 switch (material()) { 58 switch (material()) {
53 case Checkerboard: 59 case Checkerboard:
54 return sizeof(CCCheckerboardDrawQuad); 60 return sizeof(CCCheckerboardDrawQuad);
55 case DebugBorder: 61 case DebugBorder:
56 return sizeof(CCDebugBorderDrawQuad); 62 return sizeof(CCDebugBorderDrawQuad);
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
91 return copyQuad.Pass(); 97 return copyQuad.Pass();
92 } 98 }
93 99
94 void CCDrawQuad::setSharedQuadState(const CCSharedQuadState* sharedQuadState) 100 void CCDrawQuad::setSharedQuadState(const CCSharedQuadState* sharedQuadState)
95 { 101 {
96 m_sharedQuadState = sharedQuadState; 102 m_sharedQuadState = sharedQuadState;
97 m_sharedQuadStateId = sharedQuadState->id; 103 m_sharedQuadStateId = sharedQuadState->id;
98 } 104 }
99 105
100 } 106 }
OLDNEW
« no previous file with comments | « cc/CCDrawQuad.h ('k') | cc/CCIOSurfaceDrawQuad.h » ('j') | cc/scoped_ptr_hash_map.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698