| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 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 "ui/gfx/compositor/layer.h" | 5 #include "ui/gfx/compositor/layer.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 | 8 |
| 9 #include "base/logging.h" | 9 #include "base/logging.h" |
| 10 #include "base/memory/scoped_ptr.h" | 10 #include "base/memory/scoped_ptr.h" |
| (...skipping 394 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 405 // setting its canvas directly with SetCanvas(). | 405 // setting its canvas directly with SetCanvas(). |
| 406 if (!delegate_ || layer_updated_externally_) | 406 if (!delegate_ || layer_updated_externally_) |
| 407 return; | 407 return; |
| 408 gfx::Rect local_bounds = gfx::Rect(gfx::Point(), bounds_.size()); | 408 gfx::Rect local_bounds = gfx::Rect(gfx::Point(), bounds_.size()); |
| 409 gfx::Rect draw_rect = texture_.get() ? invalid_rect_.Intersect(local_bounds) : | 409 gfx::Rect draw_rect = texture_.get() ? invalid_rect_.Intersect(local_bounds) : |
| 410 local_bounds; | 410 local_bounds; |
| 411 if (draw_rect.IsEmpty()) { | 411 if (draw_rect.IsEmpty()) { |
| 412 invalid_rect_ = gfx::Rect(); | 412 invalid_rect_ = gfx::Rect(); |
| 413 return; | 413 return; |
| 414 } | 414 } |
| 415 scoped_ptr<gfx::Canvas> canvas(gfx::Canvas::CreateCanvas( | 415 scoped_ptr<gfx::Canvas> canvas(gfx::Canvas::CreateCanvas(draw_rect.size(), |
| 416 draw_rect.width(), draw_rect.height(), false)); | 416 false)); |
| 417 canvas->Translate(gfx::Point().Subtract(draw_rect.origin())); | 417 canvas->Translate(gfx::Point().Subtract(draw_rect.origin())); |
| 418 delegate_->OnPaintLayer(canvas.get()); | 418 delegate_->OnPaintLayer(canvas.get()); |
| 419 SetCanvas(*canvas->GetSkCanvas(), draw_rect.origin()); | 419 SetCanvas(*canvas->GetSkCanvas(), draw_rect.origin()); |
| 420 #endif | 420 #endif |
| 421 } | 421 } |
| 422 | 422 |
| 423 void Layer::SetNeedsToRecomputeHole() { | 423 void Layer::SetNeedsToRecomputeHole() { |
| 424 Layer* root_layer = this; | 424 Layer* root_layer = this; |
| 425 while (root_layer->parent_) | 425 while (root_layer->parent_) |
| 426 root_layer = root_layer->parent_; | 426 root_layer = root_layer->parent_; |
| (...skipping 257 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 684 #else | 684 #else |
| 685 unsigned int texture_id = 0; | 685 unsigned int texture_id = 0; |
| 686 #endif | 686 #endif |
| 687 web_layer_.to<WebKit::WebExternalTextureLayer>().setTextureId( | 687 web_layer_.to<WebKit::WebExternalTextureLayer>().setTextureId( |
| 688 should_draw ? texture_id : 0); | 688 should_draw ? texture_id : 0); |
| 689 } | 689 } |
| 690 } | 690 } |
| 691 #endif | 691 #endif |
| 692 | 692 |
| 693 } // namespace ui | 693 } // namespace ui |
| OLD | NEW |