OLD | NEW |
---|---|
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "content/renderer/compositor_bindings/web_layer_impl.h" | 5 #include "content/renderer/compositor_bindings/web_layer_impl.h" |
6 | 6 |
7 #include <vector> | |
8 | |
7 #include "base/bind.h" | 9 #include "base/bind.h" |
8 #include "base/debug/trace_event_impl.h" | 10 #include "base/debug/trace_event_impl.h" |
9 #include "base/lazy_instance.h" | 11 #include "base/lazy_instance.h" |
10 #include "base/strings/string_util.h" | 12 #include "base/strings/string_util.h" |
11 #include "base/threading/thread_checker.h" | 13 #include "base/threading/thread_checker.h" |
12 #include "cc/animation/animation.h" | 14 #include "cc/animation/animation.h" |
13 #include "cc/base/region.h" | 15 #include "cc/base/region.h" |
14 #include "cc/base/switches.h" | 16 #include "cc/base/switches.h" |
15 #include "cc/layers/layer.h" | 17 #include "cc/layers/layer.h" |
16 #include "cc/layers/layer_position_constraint.h" | 18 #include "cc/layers/layer_position_constraint.h" |
(...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
176 | 178 |
177 void WebLayerImpl::setTransformOrigin(const blink::WebFloatPoint3D& point) { | 179 void WebLayerImpl::setTransformOrigin(const blink::WebFloatPoint3D& point) { |
178 gfx::Point3F gfx_point = point; | 180 gfx::Point3F gfx_point = point; |
179 layer_->SetTransformOrigin(gfx_point); | 181 layer_->SetTransformOrigin(gfx_point); |
180 } | 182 } |
181 | 183 |
182 blink::WebFloatPoint3D WebLayerImpl::transformOrigin() const { | 184 blink::WebFloatPoint3D WebLayerImpl::transformOrigin() const { |
183 return layer_->transform_origin(); | 185 return layer_->transform_origin(); |
184 } | 186 } |
185 | 187 |
186 void WebLayerImpl::setAnchorPoint(const blink::WebFloatPoint&) {} | 188 void WebLayerImpl::setAnchorPoint(const blink::WebFloatPoint& point) {} |
187 | 189 |
188 blink::WebFloatPoint WebLayerImpl::anchorPoint() const { | 190 blink::WebFloatPoint WebLayerImpl::anchorPoint() const { |
189 return blink::WebFloatPoint(); | 191 return blink::WebFloatPoint(); |
190 } | 192 } |
191 | 193 |
192 void WebLayerImpl::setAnchorPointZ(float) {} | 194 void WebLayerImpl::setAnchorPointZ(float z) {} |
193 | 195 |
194 float WebLayerImpl::anchorPointZ() const { | 196 float WebLayerImpl::anchorPointZ() const { |
195 return 0.f; | 197 return 0.f; |
196 }; | 198 } |
197 | 199 |
198 SkMatrix44 WebLayerImpl::transform() const { | 200 SkMatrix44 WebLayerImpl::transform() const { |
199 return layer_->transform().matrix(); | 201 return layer_->transform().matrix(); |
200 } | 202 } |
201 | 203 |
202 void WebLayerImpl::setDrawsContent(bool draws_content) { | 204 void WebLayerImpl::setDrawsContent(bool draws_content) { |
203 layer_->SetIsDrawable(draws_content); | 205 layer_->SetIsDrawable(draws_content); |
204 } | 206 } |
205 | 207 |
206 bool WebLayerImpl::drawsContent() const { | 208 bool WebLayerImpl::drawsContent() const { |
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
351 size_t i = 0; | 353 size_t i = 0; |
352 for (cc::Region::Iterator region_rects(layer_->non_fast_scrollable_region()); | 354 for (cc::Region::Iterator region_rects(layer_->non_fast_scrollable_region()); |
353 region_rects.has_rect(); | 355 region_rects.has_rect(); |
354 region_rects.next()) { | 356 region_rects.next()) { |
355 result[i] = region_rects.rect(); | 357 result[i] = region_rects.rect(); |
356 ++i; | 358 ++i; |
357 } | 359 } |
358 return result; | 360 return result; |
359 } | 361 } |
360 | 362 |
363 void WebLayerImpl::setDrawFrameRequestRects(const WebVector<std::pair<int64_t, | |
364 WebRect> >& rects) { | |
365 std::vector<std::pair<int64_t, gfx::Rect> > gfxRects(rects.size()); | |
366 for (size_t i = 0; i < rects.size(); ++i) { | |
367 gfx::Rect gfxRect(rects[i].second); | |
enne (OOO)
2014/07/22 20:44:26
style nit: This file should be in Chrome style, so
Mike B
2014/07/25 23:09:41
Done.
| |
368 gfxRects[i] = std::make_pair(rects[i].first, gfxRect); | |
369 } | |
370 layer_->SetDrawFrameRequestRects(gfxRects); | |
371 } | |
372 | |
373 WebVector<std::pair<int64_t, WebRect> > | |
374 WebLayerImpl::drawFrameRequestRects() const { | |
375 std::vector<std::pair<int64_t, gfx::Rect> > rects = | |
376 layer_->draw_frame_request_rects(); | |
377 size_t num_rects = rects.size(); | |
378 WebVector<std::pair<int64_t, WebRect> > result(num_rects); | |
379 for (size_t i = 0; i < num_rects; ++i) { | |
380 WebRect rect(rects[i].second); | |
381 result[i] = std::make_pair(rects[i].first, rect); | |
382 } | |
383 return result; | |
384 } | |
385 | |
361 void WebLayerImpl::setTouchEventHandlerRegion(const WebVector<WebRect>& rects) { | 386 void WebLayerImpl::setTouchEventHandlerRegion(const WebVector<WebRect>& rects) { |
362 cc::Region region; | 387 cc::Region region; |
363 for (size_t i = 0; i < rects.size(); ++i) | 388 for (size_t i = 0; i < rects.size(); ++i) |
364 region.Union(rects[i]); | 389 region.Union(rects[i]); |
365 layer_->SetTouchEventHandlerRegion(region); | 390 layer_->SetTouchEventHandlerRegion(region); |
366 } | 391 } |
367 | 392 |
368 WebVector<WebRect> WebLayerImpl::touchEventHandlerRegion() const { | 393 WebVector<WebRect> WebLayerImpl::touchEventHandlerRegion() const { |
369 size_t num_rects = 0; | 394 size_t num_rects = 0; |
370 for (cc::Region::Iterator region_rects(layer_->touch_event_handler_region()); | 395 for (cc::Region::Iterator region_rects(layer_->touch_event_handler_region()); |
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
479 if (parent) | 504 if (parent) |
480 clip_parent = static_cast<WebLayerImpl*>(parent)->layer(); | 505 clip_parent = static_cast<WebLayerImpl*>(parent)->layer(); |
481 layer_->SetClipParent(clip_parent); | 506 layer_->SetClipParent(clip_parent); |
482 } | 507 } |
483 | 508 |
484 Layer* WebLayerImpl::layer() const { | 509 Layer* WebLayerImpl::layer() const { |
485 return layer_.get(); | 510 return layer_.get(); |
486 } | 511 } |
487 | 512 |
488 } // namespace content | 513 } // namespace content |
489 | |
OLD | NEW |