class DebugRectHistory;
class FrameRateCounter;
class HeadsUpDisplayLayerImpl;
+class LayerScrollOffsetDelegateProxy;
class LayerTreeDebugState;
class LayerTreeHostImpl;
class LayerTreeImpl;
}
virtual ~LayerTreeImpl();
+ void Shutdown();
+
// Methods called by the layer tree that pass-through or access LTHI.
// ---------------------------------------------------------------------------
const LayerTreeSettings& settings() const;
hud_layer_ = layer_impl;
}
- LayerImpl* RootScrollLayer() const;
- LayerImpl* RootContainerLayer() const;
+ LayerImpl* InnerViewportScrollLayer() const;
+ // This function may return NULL, it is the caller's responsibility to check.
+ LayerImpl* OuterViewportScrollLayer() const;
+ gfx::Vector2dF TotalScrollOffset() const;
+ gfx::Vector2dF TotalMaxScrollOffset() const;
+ gfx::Vector2dF TotalScrollDelta() const;
+
+ LayerImpl* InnerViewportContainerLayer() const;
LayerImpl* CurrentlyScrollingLayer() const;
void SetCurrentlyScrollingLayer(LayerImpl* layer);
void ClearCurrentlyScrollingLayer();
+ float VerticalAdjust(const LayerImpl* layer) const;
- void FindRootScrollLayer();
- void UpdateMaxScrollOffset();
void SetViewportLayersFromIds(int page_scale_layer_id,
int inner_viewport_scroll_layer_id,
int outer_viewport_scroll_layer_id);
void ClearViewportLayers();
+ LayerImpl* page_scale_layer() { return page_scale_layer_; }
void ApplySentScrollAndScaleDeltasFromAbortedCommit();
void ApplyScrollDeltasSinceBeginMainFrame();
void SetContentsTexturesPurged();
void ResetContentsTexturesPurged();
+ void SetRequiresHighResToDraw();
+ void ResetRequiresHighResToDraw();
+ bool RequiresHighResToDraw() const;
+
// Set on the active tree when the viewport size recently changed
// and the active tree's size is now out of date.
bool ViewportSizeInvalid() const;
void SetRootLayerScrollOffsetDelegate(
LayerScrollOffsetDelegate* root_layer_scroll_offset_delegate);
+ void UpdateScrollOffsetDelegate();
+ gfx::Vector2dF GetDelegatedScrollOffset(LayerImpl* layer);
// Call this function when you expect there to be a swap buffer.
// See swap_promise.h for how to use SwapPromise.
protected:
explicit LayerTreeImpl(LayerTreeHostImpl* layer_tree_host_impl);
- void UpdateSolidColorScrollbars();
-
- void UpdateRootScrollLayerSizeDelta();
-
LayerTreeHostImpl* layer_tree_host_impl_;
int source_frame_number_;
scoped_ptr<LayerImpl> root_layer_;
HeadsUpDisplayLayerImpl* hud_layer_;
- LayerImpl* root_scroll_layer_;
LayerImpl* currently_scrolling_layer_;
LayerScrollOffsetDelegate* root_layer_scroll_offset_delegate_;
+ scoped_ptr<LayerScrollOffsetDelegateProxy>
+ inner_viewport_scroll_delegate_proxy_;
+ scoped_ptr<LayerScrollOffsetDelegateProxy>
+ outer_viewport_scroll_delegate_proxy_;
SkColor background_color_;
bool has_transparent_background_;
LayerImplList render_surface_layer_list_;
bool contents_textures_purged_;
+ bool requires_high_res_to_draw_;
bool viewport_size_invalid_;
bool needs_update_draw_properties_;