OLD | NEW |
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 #ifndef CC_LAYERS_PICTURE_LAYER_H_ | 5 #ifndef CC_LAYERS_PICTURE_LAYER_H_ |
6 #define CC_LAYERS_PICTURE_LAYER_H_ | 6 #define CC_LAYERS_PICTURE_LAYER_H_ |
7 | 7 |
8 #include "cc/base/invalidation_region.h" | 8 #include "cc/base/invalidation_region.h" |
9 #include "cc/debug/devtools_instrumentation.h" | 9 #include "cc/debug/devtools_instrumentation.h" |
10 #include "cc/debug/micro_benchmark_controller.h" | 10 #include "cc/debug/micro_benchmark_controller.h" |
(...skipping 15 matching lines...) Expand all Loading... |
26 void SetNearestNeighbor(bool nearest_neighbor); | 26 void SetNearestNeighbor(bool nearest_neighbor); |
27 | 27 |
28 // Layer interface. | 28 // Layer interface. |
29 scoped_ptr<LayerImpl> CreateLayerImpl(LayerTreeImpl* tree_impl) override; | 29 scoped_ptr<LayerImpl> CreateLayerImpl(LayerTreeImpl* tree_impl) override; |
30 void SetLayerTreeHost(LayerTreeHost* host) override; | 30 void SetLayerTreeHost(LayerTreeHost* host) override; |
31 void PushPropertiesTo(LayerImpl* layer) override; | 31 void PushPropertiesTo(LayerImpl* layer) override; |
32 void SetNeedsDisplayRect(const gfx::Rect& layer_rect) override; | 32 void SetNeedsDisplayRect(const gfx::Rect& layer_rect) override; |
33 bool Update(ResourceUpdateQueue* queue, | 33 bool Update(ResourceUpdateQueue* queue, |
34 const OcclusionTracker<Layer>* occlusion) override; | 34 const OcclusionTracker<Layer>* occlusion) override; |
35 void SetIsMask(bool is_mask) override; | 35 void SetIsMask(bool is_mask) override; |
36 bool SupportsLCDText() const override; | |
37 skia::RefPtr<SkPicture> GetPicture() const override; | 36 skia::RefPtr<SkPicture> GetPicture() const override; |
38 bool IsSuitableForGpuRasterization() const override; | 37 bool IsSuitableForGpuRasterization() const override; |
39 | 38 |
40 void RunMicroBenchmark(MicroBenchmark* benchmark) override; | 39 void RunMicroBenchmark(MicroBenchmark* benchmark) override; |
41 | 40 |
42 ContentLayerClient* client() { return client_; } | 41 ContentLayerClient* client() { return client_; } |
43 | 42 |
44 RecordingSource* GetRecordingSourceForTesting() { | 43 RecordingSource* GetRecordingSourceForTesting() { |
45 return recording_source_.get(); | 44 return recording_source_.get(); |
46 } | 45 } |
47 | 46 |
48 protected: | 47 protected: |
49 explicit PictureLayer(ContentLayerClient* client); | 48 explicit PictureLayer(ContentLayerClient* client); |
50 // Allow tests to inject a recording source. | 49 // Allow tests to inject a recording source. |
51 PictureLayer(ContentLayerClient* client, scoped_ptr<RecordingSource> source); | 50 PictureLayer(ContentLayerClient* client, scoped_ptr<RecordingSource> source); |
52 ~PictureLayer() override; | 51 ~PictureLayer() override; |
53 | 52 |
54 bool HasDrawableContent() const override; | 53 bool HasDrawableContent() const override; |
55 | 54 |
56 bool is_mask() const { return is_mask_; } | 55 bool is_mask() const { return is_mask_; } |
57 | 56 |
58 private: | 57 private: |
59 bool UpdateCanUseLCDText(); | |
60 | |
61 ContentLayerClient* client_; | 58 ContentLayerClient* client_; |
62 scoped_ptr<RecordingSource> recording_source_; | 59 scoped_ptr<RecordingSource> recording_source_; |
63 devtools_instrumentation:: | 60 devtools_instrumentation:: |
64 ScopedLayerObjectTracker instrumentation_object_tracker_; | 61 ScopedLayerObjectTracker instrumentation_object_tracker_; |
65 // Invalidation to use the next time update is called. | 62 // Invalidation to use the next time update is called. |
66 InvalidationRegion pending_invalidation_; | 63 InvalidationRegion pending_invalidation_; |
67 // Invalidation from the last time update was called. | 64 // Invalidation from the last time update was called. |
68 Region recording_invalidation_; | 65 Region recording_invalidation_; |
69 gfx::Rect last_updated_visible_content_rect_; | 66 gfx::Rect last_updated_visible_content_rect_; |
70 | 67 |
71 int update_source_frame_number_; | 68 int update_source_frame_number_; |
72 bool can_use_lcd_text_for_update_; | |
73 bool is_mask_; | 69 bool is_mask_; |
74 bool nearest_neighbor_; | 70 bool nearest_neighbor_; |
75 | 71 |
76 DISALLOW_COPY_AND_ASSIGN(PictureLayer); | 72 DISALLOW_COPY_AND_ASSIGN(PictureLayer); |
77 }; | 73 }; |
78 | 74 |
79 } // namespace cc | 75 } // namespace cc |
80 | 76 |
81 #endif // CC_LAYERS_PICTURE_LAYER_H_ | 77 #endif // CC_LAYERS_PICTURE_LAYER_H_ |
OLD | NEW |