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

Side by Side Diff: cc/layers/painted_scrollbar_layer.cc

Issue 609663003: cc: Remove use of PassAs() and constructor-casting with scoped_ptr. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: cc-passas: PassAs-presubmit-warning Created 6 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
« no previous file with comments | « cc/layers/nine_patch_layer_impl.cc ('k') | cc/layers/painted_scrollbar_layer_impl.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 "cc/layers/painted_scrollbar_layer.h" 5 #include "cc/layers/painted_scrollbar_layer.h"
6 6
7 #include "base/auto_reset.h" 7 #include "base/auto_reset.h"
8 #include "base/basictypes.h" 8 #include "base/basictypes.h"
9 #include "base/debug/trace_event.h" 9 #include "base/debug/trace_event.h"
10 #include "cc/layers/painted_scrollbar_layer_impl.h" 10 #include "cc/layers/painted_scrollbar_layer_impl.h"
11 #include "cc/resources/ui_resource_bitmap.h" 11 #include "cc/resources/ui_resource_bitmap.h"
12 #include "cc/trees/layer_tree_host.h" 12 #include "cc/trees/layer_tree_host.h"
13 #include "cc/trees/layer_tree_impl.h" 13 #include "cc/trees/layer_tree_impl.h"
14 #include "skia/ext/platform_canvas.h" 14 #include "skia/ext/platform_canvas.h"
15 #include "skia/ext/refptr.h" 15 #include "skia/ext/refptr.h"
16 #include "third_party/skia/include/core/SkBitmap.h" 16 #include "third_party/skia/include/core/SkBitmap.h"
17 #include "third_party/skia/include/core/SkCanvas.h" 17 #include "third_party/skia/include/core/SkCanvas.h"
18 #include "third_party/skia/include/core/SkSize.h" 18 #include "third_party/skia/include/core/SkSize.h"
19 #include "ui/gfx/skia_util.h" 19 #include "ui/gfx/skia_util.h"
20 20
21 namespace cc { 21 namespace cc {
22 22
23 scoped_ptr<LayerImpl> PaintedScrollbarLayer::CreateLayerImpl( 23 scoped_ptr<LayerImpl> PaintedScrollbarLayer::CreateLayerImpl(
24 LayerTreeImpl* tree_impl) { 24 LayerTreeImpl* tree_impl) {
25 return PaintedScrollbarLayerImpl::Create( 25 return PaintedScrollbarLayerImpl::Create(
26 tree_impl, id(), scrollbar_->Orientation()).PassAs<LayerImpl>(); 26 tree_impl, id(), scrollbar_->Orientation());
27 } 27 }
28 28
29 scoped_refptr<PaintedScrollbarLayer> PaintedScrollbarLayer::Create( 29 scoped_refptr<PaintedScrollbarLayer> PaintedScrollbarLayer::Create(
30 scoped_ptr<Scrollbar> scrollbar, 30 scoped_ptr<Scrollbar> scrollbar,
31 int scroll_layer_id) { 31 int scroll_layer_id) {
32 return make_scoped_refptr( 32 return make_scoped_refptr(
33 new PaintedScrollbarLayer(scrollbar.Pass(), scroll_layer_id)); 33 new PaintedScrollbarLayer(scrollbar.Pass(), scroll_layer_id));
34 } 34 }
35 35
36 PaintedScrollbarLayer::PaintedScrollbarLayer(scoped_ptr<Scrollbar> scrollbar, 36 PaintedScrollbarLayer::PaintedScrollbarLayer(scoped_ptr<Scrollbar> scrollbar,
(...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after
149 static_cast<PaintedScrollbarLayerImpl*>(layer); 149 static_cast<PaintedScrollbarLayerImpl*>(layer);
150 150
151 scrollbar_layer->SetScrollLayerAndClipLayerByIds(scroll_layer_id_, 151 scrollbar_layer->SetScrollLayerAndClipLayerByIds(scroll_layer_id_,
152 clip_layer_id_); 152 clip_layer_id_);
153 } 153 }
154 154
155 void PaintedScrollbarLayer::SetLayerTreeHost(LayerTreeHost* host) { 155 void PaintedScrollbarLayer::SetLayerTreeHost(LayerTreeHost* host) {
156 // When the LTH is set to null or has changed, then this layer should remove 156 // When the LTH is set to null or has changed, then this layer should remove
157 // all of its associated resources. 157 // all of its associated resources.
158 if (!host || host != layer_tree_host()) { 158 if (!host || host != layer_tree_host()) {
159 track_resource_.reset(); 159 track_resource_ = nullptr;
160 thumb_resource_.reset(); 160 thumb_resource_ = nullptr;
161 } 161 }
162 162
163 ContentsScalingLayer::SetLayerTreeHost(host); 163 ContentsScalingLayer::SetLayerTreeHost(host);
164 } 164 }
165 165
166 gfx::Rect PaintedScrollbarLayer::ScrollbarLayerRectToContentRect( 166 gfx::Rect PaintedScrollbarLayer::ScrollbarLayerRectToContentRect(
167 const gfx::Rect& layer_rect) const { 167 const gfx::Rect& layer_rect) const {
168 // Don't intersect with the bounds as in LayerRectToContentRect() because 168 // Don't intersect with the bounds as in LayerRectToContentRect() because
169 // layer_rect here might be in coordinates of the containing layer. 169 // layer_rect here might be in coordinates of the containing layer.
170 gfx::Rect expanded_rect = gfx::ScaleToEnclosingRect( 170 gfx::Rect expanded_rect = gfx::ScaleToEnclosingRect(
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
207 UpdateThumbAndTrackGeometry(); 207 UpdateThumbAndTrackGeometry();
208 208
209 gfx::Rect track_layer_rect = gfx::Rect(location_, bounds()); 209 gfx::Rect track_layer_rect = gfx::Rect(location_, bounds());
210 gfx::Rect scaled_track_rect = ScrollbarLayerRectToContentRect( 210 gfx::Rect scaled_track_rect = ScrollbarLayerRectToContentRect(
211 track_layer_rect); 211 track_layer_rect);
212 212
213 bool updated = false; 213 bool updated = false;
214 214
215 if (track_rect_.IsEmpty() || scaled_track_rect.IsEmpty()) { 215 if (track_rect_.IsEmpty() || scaled_track_rect.IsEmpty()) {
216 if (track_resource_) { 216 if (track_resource_) {
217 track_resource_.reset(); 217 track_resource_ = nullptr;
218 if (thumb_resource_) 218 thumb_resource_ = nullptr;
219 thumb_resource_.reset();
220 SetNeedsPushProperties(); 219 SetNeedsPushProperties();
221 updated = true; 220 updated = true;
222 } 221 }
223 return updated; 222 return updated;
224 } 223 }
225 224
226 if (!has_thumb_ && thumb_resource_) { 225 if (!has_thumb_ && thumb_resource_) {
227 thumb_resource_.reset(); 226 thumb_resource_ = nullptr;
228 SetNeedsPushProperties(); 227 SetNeedsPushProperties();
229 } 228 }
230 229
231 { 230 {
232 base::AutoReset<bool> ignore_set_needs_commit(&ignore_set_needs_commit_, 231 base::AutoReset<bool> ignore_set_needs_commit(&ignore_set_needs_commit_,
233 true); 232 true);
234 ContentsScalingLayer::Update(queue, occlusion); 233 ContentsScalingLayer::Update(queue, occlusion);
235 } 234 }
236 235
237 if (update_rect_.IsEmpty() && track_resource_) 236 if (update_rect_.IsEmpty() && track_resource_)
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
286 285
287 scrollbar_->PaintPart(&skcanvas, part, layer_rect); 286 scrollbar_->PaintPart(&skcanvas, part, layer_rect);
288 // Make sure that the pixels are no longer mutable to unavoid unnecessary 287 // Make sure that the pixels are no longer mutable to unavoid unnecessary
289 // allocation and copying. 288 // allocation and copying.
290 skbitmap.setImmutable(); 289 skbitmap.setImmutable();
291 290
292 return UIResourceBitmap(skbitmap); 291 return UIResourceBitmap(skbitmap);
293 } 292 }
294 293
295 } // namespace cc 294 } // namespace cc
OLDNEW
« no previous file with comments | « cc/layers/nine_patch_layer_impl.cc ('k') | cc/layers/painted_scrollbar_layer_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698