Index: android_webview/browser/browser_view_renderer.h |
diff --git a/android_webview/browser/browser_view_renderer.h b/android_webview/browser/browser_view_renderer.h |
index 338b31d73e40698f4f36fd9533f78f141b3f7f6f..5d3ecc4e2bca61021c2e41013efe3a392609092c 100644 |
--- a/android_webview/browser/browser_view_renderer.h |
+++ b/android_webview/browser/browser_view_renderer.h |
@@ -7,6 +7,7 @@ |
#include "android_webview/browser/global_tile_manager.h" |
#include "android_webview/browser/global_tile_manager_client.h" |
+#include "android_webview/browser/parent_compositor_draw_constraints.h" |
#include "android_webview/browser/shared_renderer_state.h" |
#include "base/android/scoped_java_ref.h" |
#include "base/callback.h" |
@@ -140,12 +141,17 @@ class BrowserViewRenderer : public content::SynchronousCompositorClient, |
virtual void SetNumTiles(size_t num_tiles, |
bool effective_immediately) OVERRIDE; |
- private: |
- void SetTotalRootLayerScrollOffset(gfx::Vector2dF new_value_dip); |
// Checks the continuous invalidate and block invalidate state, and schedule |
// invalidates appropriately. If |force_invalidate| is true, then send a view |
// invalidate regardless of compositor expectation. |
void EnsureContinuousInvalidation(bool force_invalidate); |
+ |
+ // Post an invalidate if the parent draw constraints are stale and there is |
+ // no pending invalidate. |
+ void InvalidateOnceIfNeeded(); |
+ |
+ private: |
+ void SetTotalRootLayerScrollOffset(gfx::Vector2dF new_value_dip); |
bool OnDrawSoftware(jobject java_canvas); |
bool CompositeSW(SkCanvas* canvas); |
void DidComposite(); |
@@ -199,6 +205,10 @@ class BrowserViewRenderer : public content::SynchronousCompositorClient, |
gfx::Vector2d last_on_draw_scroll_offset_; |
gfx::Rect last_on_draw_global_visible_rect_; |
+ // The draw constraints from the parent compositor. These are only used for |
+ // tiling priority. |
+ ParentCompositorDrawConstraints parent_draw_constraints_; |
+ |
// When true, we should continuously invalidate and keep drawing, for example |
// to drive animation. This value is set by the compositor and should always |
// reflect the expectation of the compositor and not be reused for other |