OLD | NEW |
1 // Copyright 2011 The Chromium Authors. All rights reserved. | 1 // Copyright 2011 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 | 6 |
7 #if USE(ACCELERATED_COMPOSITING) | 7 #if USE(ACCELERATED_COMPOSITING) |
8 | 8 |
9 #include "CCDamageTracker.h" | 9 #include "CCDamageTracker.h" |
10 | 10 |
11 #include "CCLayerImpl.h" | 11 #include "CCLayerImpl.h" |
12 #include "CCLayerTreeHostCommon.h" | 12 #include "CCLayerTreeHostCommon.h" |
13 #include "CCMathUtil.h" | 13 #include "CCMathUtil.h" |
14 #include "CCRenderSurface.h" | 14 #include "CCRenderSurface.h" |
15 #include <public/WebFilterOperations.h> | 15 #include <public/WebFilterOperations.h> |
16 | 16 |
17 using WebKit::WebTransformationMatrix; | 17 using WebKit::WebTransformationMatrix; |
18 | 18 |
19 namespace cc { | 19 namespace cc { |
20 | 20 |
21 scoped_ptr<CCDamageTracker> CCDamageTracker::create() | 21 scoped_ptr<CCDamageTracker> CCDamageTracker::create() |
22 { | 22 { |
23 return scoped_ptr<CCDamageTracker>(new CCDamageTracker()); | 23 return make_scoped_ptr(new CCDamageTracker()); |
24 } | 24 } |
25 | 25 |
26 CCDamageTracker::CCDamageTracker() | 26 CCDamageTracker::CCDamageTracker() |
27 : m_forceFullDamageNextUpdate(false), | 27 : m_forceFullDamageNextUpdate(false), |
28 m_currentRectHistory(new RectMap), | 28 m_currentRectHistory(new RectMap), |
29 m_nextRectHistory(new RectMap) | 29 m_nextRectHistory(new RectMap) |
30 { | 30 { |
31 } | 31 } |
32 | 32 |
33 CCDamageTracker::~CCDamageTracker() | 33 CCDamageTracker::~CCDamageTracker() |
(...skipping 303 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
337 } | 337 } |
338 | 338 |
339 // If the layer has a background filter, this may cause pixels in our surfac
e to be expanded, so we will need to expand any damage | 339 // If the layer has a background filter, this may cause pixels in our surfac
e to be expanded, so we will need to expand any damage |
340 // at or below this layer. We expand the damage from this layer too, as we n
eed to readback those pixels from the surface with only | 340 // at or below this layer. We expand the damage from this layer too, as we n
eed to readback those pixels from the surface with only |
341 // the contents of layers below this one in them. This means we need to redr
aw any pixels in the surface being used for the blur in | 341 // the contents of layers below this one in them. This means we need to redr
aw any pixels in the surface being used for the blur in |
342 // this layer this frame. | 342 // this layer this frame. |
343 if (layer->backgroundFilters().hasFilterThatMovesPixels()) | 343 if (layer->backgroundFilters().hasFilterThatMovesPixels()) |
344 expandDamageRectInsideRectWithFilters(targetDamageRect, surfaceRectInTar
getSpace, layer->backgroundFilters()); | 344 expandDamageRectInsideRectWithFilters(targetDamageRect, surfaceRectInTar
getSpace, layer->backgroundFilters()); |
345 } | 345 } |
346 | 346 |
347 } // namespace cc | 347 } // namespace cc |
348 | 348 |
349 #endif // USE(ACCELERATED_COMPOSITING) | 349 #endif // USE(ACCELERATED_COMPOSITING) |
OLD | NEW |