OLD | NEW |
1 // Copyright 2011 The Chromium Authors. All rights reserved. | 1 // Copyright 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 #ifndef CC_TREES_LAYER_TREE_HOST_IMPL_H_ | 5 #ifndef CC_TREES_LAYER_TREE_HOST_IMPL_H_ |
6 #define CC_TREES_LAYER_TREE_HOST_IMPL_H_ | 6 #define CC_TREES_LAYER_TREE_HOST_IMPL_H_ |
7 | 7 |
8 #include <list> | 8 #include <list> |
9 #include <set> | 9 #include <set> |
10 #include <string> | 10 #include <string> |
(...skipping 206 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
217 | 217 |
218 // Resets all of the trees to an empty state. | 218 // Resets all of the trees to an empty state. |
219 void ResetTreesForTesting(); | 219 void ResetTreesForTesting(); |
220 | 220 |
221 DrawMode GetDrawMode() const; | 221 DrawMode GetDrawMode() const; |
222 | 222 |
223 // Viewport size in draw space: this size is in physical pixels and is used | 223 // Viewport size in draw space: this size is in physical pixels and is used |
224 // for draw properties, tilings, quads and render passes. | 224 // for draw properties, tilings, quads and render passes. |
225 gfx::Size DrawViewportSize() const; | 225 gfx::Size DrawViewportSize() const; |
226 | 226 |
| 227 // Viewport rect in view space used for tiling prioritization. |
| 228 const gfx::Rect ViewportRectForTilePriority() const; |
| 229 |
227 // Viewport size for scrolling and fixed-position compensation. This value | 230 // Viewport size for scrolling and fixed-position compensation. This value |
228 // excludes the URL bar and non-overlay scrollbars and is in DIP (and | 231 // excludes the URL bar and non-overlay scrollbars and is in DIP (and |
229 // invariant relative to page scale). | 232 // invariant relative to page scale). |
230 gfx::SizeF UnscaledScrollableViewportSize() const; | 233 gfx::SizeF UnscaledScrollableViewportSize() const; |
231 float VerticalAdjust() const; | 234 float VerticalAdjust() const; |
232 | 235 |
233 // RendererClient implementation. | 236 // RendererClient implementation. |
234 virtual void SetFullRootLayerDamage() OVERRIDE; | 237 virtual void SetFullRootLayerDamage() OVERRIDE; |
235 virtual void RunOnDemandRasterTask(Task* on_demand_raster_task) OVERRIDE; | 238 virtual void RunOnDemandRasterTask(Task* on_demand_raster_task) OVERRIDE; |
236 | 239 |
(...skipping 12 matching lines...) Expand all Loading... |
249 base::TimeDelta delay) OVERRIDE; | 252 base::TimeDelta delay) OVERRIDE; |
250 virtual void SetNeedsScrollbarAnimationFrame() OVERRIDE; | 253 virtual void SetNeedsScrollbarAnimationFrame() OVERRIDE; |
251 | 254 |
252 // OutputSurfaceClient implementation. | 255 // OutputSurfaceClient implementation. |
253 virtual void DeferredInitialize() OVERRIDE; | 256 virtual void DeferredInitialize() OVERRIDE; |
254 virtual void ReleaseGL() OVERRIDE; | 257 virtual void ReleaseGL() OVERRIDE; |
255 virtual void CommitVSyncParameters(base::TimeTicks timebase, | 258 virtual void CommitVSyncParameters(base::TimeTicks timebase, |
256 base::TimeDelta interval) OVERRIDE; | 259 base::TimeDelta interval) OVERRIDE; |
257 virtual void SetNeedsRedrawRect(const gfx::Rect& rect) OVERRIDE; | 260 virtual void SetNeedsRedrawRect(const gfx::Rect& rect) OVERRIDE; |
258 virtual void BeginFrame(const BeginFrameArgs& args) OVERRIDE; | 261 virtual void BeginFrame(const BeginFrameArgs& args) OVERRIDE; |
| 262 |
259 virtual void SetExternalDrawConstraints( | 263 virtual void SetExternalDrawConstraints( |
260 const gfx::Transform& transform, | 264 const gfx::Transform& transform, |
261 const gfx::Rect& viewport, | 265 const gfx::Rect& viewport, |
262 const gfx::Rect& clip, | 266 const gfx::Rect& clip, |
| 267 const gfx::Rect& viewport_rect_for_tile_priority, |
| 268 const gfx::Transform& transform_for_tile_priority, |
263 bool resourceless_software_draw) OVERRIDE; | 269 bool resourceless_software_draw) OVERRIDE; |
264 virtual void DidLoseOutputSurface() OVERRIDE; | 270 virtual void DidLoseOutputSurface() OVERRIDE; |
265 virtual void DidSwapBuffers() OVERRIDE; | 271 virtual void DidSwapBuffers() OVERRIDE; |
266 virtual void DidSwapBuffersComplete() OVERRIDE; | 272 virtual void DidSwapBuffersComplete() OVERRIDE; |
267 virtual void ReclaimResources(const CompositorFrameAck* ack) OVERRIDE; | 273 virtual void ReclaimResources(const CompositorFrameAck* ack) OVERRIDE; |
268 virtual void SetMemoryPolicy(const ManagedMemoryPolicy& policy) OVERRIDE; | 274 virtual void SetMemoryPolicy(const ManagedMemoryPolicy& policy) OVERRIDE; |
269 virtual void SetTreeActivationCallback(const base::Closure& callback) | 275 virtual void SetTreeActivationCallback(const base::Closure& callback) |
270 OVERRIDE; | 276 OVERRIDE; |
271 | 277 |
272 // Called from LayerTreeImpl. | 278 // Called from LayerTreeImpl. |
(...skipping 388 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
661 // browser-side UI element, such as an on-screen-keyboard. This affects | 667 // browser-side UI element, such as an on-screen-keyboard. This affects |
662 // scrollable size since we want to still be able to scroll to the bottom of | 668 // scrollable size since we want to still be able to scroll to the bottom of |
663 // the page when the keyboard is up. | 669 // the page when the keyboard is up. |
664 float overdraw_bottom_height_; | 670 float overdraw_bottom_height_; |
665 | 671 |
666 // Optional top-level constraints that can be set by the OutputSurface. | 672 // Optional top-level constraints that can be set by the OutputSurface. |
667 // - external_transform_ applies a transform above the root layer | 673 // - external_transform_ applies a transform above the root layer |
668 // - external_viewport_ is used DrawProperties, tile management and | 674 // - external_viewport_ is used DrawProperties, tile management and |
669 // glViewport/window projection matrix. | 675 // glViewport/window projection matrix. |
670 // - external_clip_ specifies a top-level clip rect | 676 // - external_clip_ specifies a top-level clip rect |
| 677 // - viewport_rect_for_tile_priority_ is the rect in view space used for |
| 678 // tiling priority. |
671 gfx::Transform external_transform_; | 679 gfx::Transform external_transform_; |
672 gfx::Rect external_viewport_; | 680 gfx::Rect external_viewport_; |
673 gfx::Rect external_clip_; | 681 gfx::Rect external_clip_; |
| 682 gfx::Rect viewport_rect_for_tile_priority_; |
674 bool resourceless_software_draw_; | 683 bool resourceless_software_draw_; |
675 | 684 |
676 gfx::Rect viewport_damage_rect_; | 685 gfx::Rect viewport_damage_rect_; |
677 | 686 |
678 base::TimeTicks current_frame_timeticks_; | 687 base::TimeTicks current_frame_timeticks_; |
679 | 688 |
680 // Expected time between two begin impl frame calls. | 689 // Expected time between two begin impl frame calls. |
681 base::TimeDelta begin_impl_frame_interval_; | 690 base::TimeDelta begin_impl_frame_interval_; |
682 | 691 |
683 scoped_ptr<AnimationRegistrar> animation_registrar_; | 692 scoped_ptr<AnimationRegistrar> animation_registrar_; |
(...skipping 18 matching lines...) Expand all Loading... |
702 | 711 |
703 std::vector<PictureLayerImpl*> picture_layers_; | 712 std::vector<PictureLayerImpl*> picture_layers_; |
704 std::vector<PictureLayerImpl::Pair> picture_layer_pairs_; | 713 std::vector<PictureLayerImpl::Pair> picture_layer_pairs_; |
705 | 714 |
706 DISALLOW_COPY_AND_ASSIGN(LayerTreeHostImpl); | 715 DISALLOW_COPY_AND_ASSIGN(LayerTreeHostImpl); |
707 }; | 716 }; |
708 | 717 |
709 } // namespace cc | 718 } // namespace cc |
710 | 719 |
711 #endif // CC_TREES_LAYER_TREE_HOST_IMPL_H_ | 720 #endif // CC_TREES_LAYER_TREE_HOST_IMPL_H_ |
OLD | NEW |