| 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 #include "cc/scrollbar_layer.h" | 5 #include "cc/scrollbar_layer.h" |
| 6 | 6 |
| 7 #include "base/basictypes.h" | 7 #include "base/basictypes.h" |
| 8 #include "base/debug/trace_event.h" | 8 #include "base/debug/trace_event.h" |
| 9 #include "cc/caching_bitmap_content_layer_updater.h" | 9 #include "cc/caching_bitmap_content_layer_updater.h" |
| 10 #include "cc/layer_painter.h" | 10 #include "cc/layer_painter.h" |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 54 ScrollbarLayer::~ScrollbarLayer() {} | 54 ScrollbarLayer::~ScrollbarLayer() {} |
| 55 | 55 |
| 56 void ScrollbarLayer::SetScrollLayerId(int id) { | 56 void ScrollbarLayer::SetScrollLayerId(int id) { |
| 57 if (id == scroll_layer_id_) | 57 if (id == scroll_layer_id_) |
| 58 return; | 58 return; |
| 59 | 59 |
| 60 scroll_layer_id_ = id; | 60 scroll_layer_id_ = id; |
| 61 SetNeedsFullTreeSync(); | 61 SetNeedsFullTreeSync(); |
| 62 } | 62 } |
| 63 | 63 |
| 64 bool ScrollbarLayer::OpacityCanAnimateOnImplThread() const { |
| 65 return scrollbar_->isOverlay(); |
| 66 } |
| 67 |
| 64 WebKit::WebScrollbar::Orientation ScrollbarLayer::Orientation() const { | 68 WebKit::WebScrollbar::Orientation ScrollbarLayer::Orientation() const { |
| 65 return scrollbar_->orientation(); | 69 return scrollbar_->orientation(); |
| 66 } | 70 } |
| 67 | 71 |
| 68 int ScrollbarLayer::MaxTextureSize() { | 72 int ScrollbarLayer::MaxTextureSize() { |
| 69 DCHECK(layer_tree_host()); | 73 DCHECK(layer_tree_host()); |
| 70 return layer_tree_host()->GetRendererCapabilities().max_texture_size; | 74 return layer_tree_host()->GetRendererCapabilities().max_texture_size; |
| 71 } | 75 } |
| 72 | 76 |
| 73 float ScrollbarLayer::ClampScaleToMaxTextureSize(float scale) { | 77 float ScrollbarLayer::ClampScaleToMaxTextureSize(float scale) { |
| (...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 122 scrollbar_layer->set_fore_track_resource_id( | 126 scrollbar_layer->set_fore_track_resource_id( |
| 123 fore_track_->texture()->resourceId()); | 127 fore_track_->texture()->resourceId()); |
| 124 } else { | 128 } else { |
| 125 scrollbar_layer->set_fore_track_resource_id(0); | 129 scrollbar_layer->set_fore_track_resource_id(0); |
| 126 } | 130 } |
| 127 | 131 |
| 128 if (thumb_ && thumb_->texture()->haveBackingTexture()) | 132 if (thumb_ && thumb_->texture()->haveBackingTexture()) |
| 129 scrollbar_layer->set_thumb_resource_id(thumb_->texture()->resourceId()); | 133 scrollbar_layer->set_thumb_resource_id(thumb_->texture()->resourceId()); |
| 130 else | 134 else |
| 131 scrollbar_layer->set_thumb_resource_id(0); | 135 scrollbar_layer->set_thumb_resource_id(0); |
| 136 |
| 137 // Pinch zoom scrollbarLayerImpl does not get its scroll_layer_id_ |
| 138 // set in LayerImpl, so we need to push it here. |
| 139 if (scroll_layer_id_ == Layer::PINCH_ZOOM_ROOT_SCROLL_LAYER_ID) |
| 140 scrollbar_layer->set_scroll_layer_id(scroll_layer_id_); |
| 132 } | 141 } |
| 133 | 142 |
| 134 ScrollbarLayer* ScrollbarLayer::ToScrollbarLayer() { | 143 ScrollbarLayer* ScrollbarLayer::ToScrollbarLayer() { |
| 135 return this; | 144 return this; |
| 136 } | 145 } |
| 137 | 146 |
| 138 class ScrollbarBackgroundPainter : public LayerPainter { | 147 class ScrollbarBackgroundPainter : public LayerPainter { |
| 139 public: | 148 public: |
| 140 static scoped_ptr<ScrollbarBackgroundPainter> Create( | 149 static scoped_ptr<ScrollbarBackgroundPainter> Create( |
| 141 WebKit::WebScrollbar* scrollbar, | 150 WebKit::WebScrollbar* scrollbar, |
| (...skipping 281 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 423 thumb_.get(), | 432 thumb_.get(), |
| 424 origin_thumb_rect, | 433 origin_thumb_rect, |
| 425 queue, | 434 queue, |
| 426 stats); | 435 stats); |
| 427 } | 436 } |
| 428 | 437 |
| 429 dirty_rect_ = gfx::RectF(); | 438 dirty_rect_ = gfx::RectF(); |
| 430 } | 439 } |
| 431 | 440 |
| 432 } // namespace cc | 441 } // namespace cc |
| OLD | NEW |