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

Side by Side Diff: cc/test/fake_display_list_raster_source.cc

Issue 1362663002: cc: Remove PicturePile and PicturePileImpl. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 3 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
OLDNEW
(Empty)
1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "cc/test/fake_display_list_raster_source.h"
6
7 #include <limits>
8
9 #include "base/synchronization/waitable_event.h"
10 #include "cc/test/fake_display_list_recording_source.h"
11 #include "testing/gtest/include/gtest/gtest.h"
12 #include "ui/gfx/geometry/size.h"
13
14 namespace cc {
15
16 scoped_refptr<FakeDisplayListRasterSource>
17 FakeDisplayListRasterSource::CreateInfiniteFilled() {
18 gfx::Size size(std::numeric_limits<int>::max() / 10,
19 std::numeric_limits<int>::max() / 10);
20 return CreateFilled(size);
21 }
22
23 scoped_refptr<FakeDisplayListRasterSource>
24 FakeDisplayListRasterSource::CreateFilled(const gfx::Size& size) {
25 auto recording_source =
26 FakeDisplayListRecordingSource::CreateFilledRecordingSource(size);
27
28 SkPaint red_paint;
29 red_paint.setColor(SK_ColorRED);
30 recording_source->add_draw_rect_with_paint(gfx::Rect(size), red_paint);
31
32 gfx::Size smaller_size(size.width() - 10, size.height() - 10);
33 SkPaint green_paint;
34 green_paint.setColor(SK_ColorGREEN);
35 recording_source->add_draw_rect_with_paint(gfx::Rect(smaller_size),
36 green_paint);
37
38 recording_source->Rerecord();
39
40 return make_scoped_refptr(
41 new FakeDisplayListRasterSource(recording_source.get(), false));
42 }
43
44 scoped_refptr<FakeDisplayListRasterSource>
45 FakeDisplayListRasterSource::CreateFilledLCD(const gfx::Size& size) {
46 auto recording_source =
47 FakeDisplayListRecordingSource::CreateFilledRecordingSource(size);
48
49 SkPaint red_paint;
50 red_paint.setColor(SK_ColorRED);
51 recording_source->add_draw_rect_with_paint(gfx::Rect(size), red_paint);
52
53 gfx::Size smaller_size(size.width() - 10, size.height() - 10);
54 SkPaint green_paint;
55 green_paint.setColor(SK_ColorGREEN);
56 recording_source->add_draw_rect_with_paint(gfx::Rect(smaller_size),
57 green_paint);
58
59 recording_source->Rerecord();
60
61 return make_scoped_refptr(
62 new FakeDisplayListRasterSource(recording_source.get(), true));
63 }
64
65 scoped_refptr<FakeDisplayListRasterSource>
66 FakeDisplayListRasterSource::CreateFilledSolidColor(const gfx::Size& size) {
67 auto recording_source =
68 FakeDisplayListRecordingSource::CreateFilledRecordingSource(size);
69
70 SkPaint red_paint;
71 red_paint.setColor(SK_ColorRED);
72 recording_source->add_draw_rect_with_paint(gfx::Rect(size), red_paint);
73 recording_source->Rerecord();
74 auto raster_source = make_scoped_refptr(
75 new FakeDisplayListRasterSource(recording_source.get(), false));
76 if (!raster_source->IsSolidColor())
77 ADD_FAILURE() << "Not solid color!";
78 return raster_source;
79 }
80
81 scoped_refptr<FakeDisplayListRasterSource>
82 FakeDisplayListRasterSource::CreatePartiallyFilled(
83 const gfx::Size& size,
84 const gfx::Rect& recorded_viewport) {
85 auto recording_source = FakeDisplayListRecordingSource::CreateRecordingSource(
danakj 2015/09/22 21:52:15 could we perhaps DCHECK that like DCHECK_IMPLIES(
vmpstr 2015/09/22 22:57:49 Done.
86 recorded_viewport, size);
87
88 SkPaint red_paint;
89 red_paint.setColor(SK_ColorRED);
90 recording_source->add_draw_rect_with_paint(gfx::Rect(size), red_paint);
91
92 gfx::Size smaller_size(size.width() - 10, size.height() - 10);
93 SkPaint green_paint;
94 green_paint.setColor(SK_ColorGREEN);
95 recording_source->add_draw_rect_with_paint(gfx::Rect(smaller_size),
96 green_paint);
97
98 recording_source->Rerecord();
99 recording_source->SetRecordedViewport(recorded_viewport);
100
101 return make_scoped_refptr(
102 new FakeDisplayListRasterSource(recording_source.get(), false));
103 }
104
105 scoped_refptr<FakeDisplayListRasterSource>
106 FakeDisplayListRasterSource::CreateEmpty(const gfx::Size& size) {
107 auto recording_source =
108 FakeDisplayListRecordingSource::CreateFilledRecordingSource(size);
109 return make_scoped_refptr(
110 new FakeDisplayListRasterSource(recording_source.get(), false));
111 }
112
113 scoped_refptr<FakeDisplayListRasterSource>
114 FakeDisplayListRasterSource::CreateFromRecordingSource(
115 const DisplayListRecordingSource* recording_source,
116 bool can_use_lcd) {
117 return make_scoped_refptr(
118 new FakeDisplayListRasterSource(recording_source, can_use_lcd));
119 }
120
121 scoped_refptr<FakeDisplayListRasterSource>
122 FakeDisplayListRasterSource::CreateFromRecordingSourceWithWaitable(
123 const DisplayListRecordingSource* recording_source,
124 bool can_use_lcd,
125 base::WaitableEvent* playback_allowed_event) {
126 return make_scoped_refptr(new FakeDisplayListRasterSource(
127 recording_source, can_use_lcd, playback_allowed_event));
128 }
129
130 FakeDisplayListRasterSource::FakeDisplayListRasterSource(
131 const DisplayListRecordingSource* recording_source,
132 bool can_use_lcd)
133 : DisplayListRasterSource(recording_source, can_use_lcd),
134 playback_allowed_event_(nullptr) {}
135
136 FakeDisplayListRasterSource::FakeDisplayListRasterSource(
137 const DisplayListRecordingSource* recording_source,
138 bool can_use_lcd,
139 base::WaitableEvent* playback_allowed_event)
140 : DisplayListRasterSource(recording_source, can_use_lcd),
141 playback_allowed_event_(playback_allowed_event) {}
142
143 FakeDisplayListRasterSource::FakeDisplayListRasterSource()
danakj 2015/09/22 21:52:15 do we need this constructor? it is not used?
vmpstr 2015/09/22 22:57:49 Removed.
144 : playback_allowed_event_(nullptr) {}
145
146 FakeDisplayListRasterSource::~FakeDisplayListRasterSource() {}
147
148 void FakeDisplayListRasterSource::PlaybackToCanvas(
149 SkCanvas* canvas,
150 const gfx::Rect& canvas_bitmap_rect,
151 const gfx::Rect& canvas_playback_rect,
152 float contents_scale) const {
153 if (playback_allowed_event_)
154 playback_allowed_event_->Wait();
155 DisplayListRasterSource::PlaybackToCanvas(
156 canvas, canvas_bitmap_rect, canvas_playback_rect, contents_scale);
157 }
158
159 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698