Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(812)

Unified Diff: content/browser/renderer_host/compositor_impl_android.h

Issue 285373008: Android: Decouple animate from vsync (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/renderer_host/compositor_impl_android.h
diff --git a/content/browser/renderer_host/compositor_impl_android.h b/content/browser/renderer_host/compositor_impl_android.h
index 91de0aee2a9b259b5d3acbad4988c8b3a202b93c..37c8768b05711fdd53f5715881bce6f247437174 100644
--- a/content/browser/renderer_host/compositor_impl_android.h
+++ b/content/browser/renderer_host/compositor_impl_android.h
@@ -104,12 +104,13 @@ class CONTENT_EXPORT CompositorImpl
scoped_ptr<cc::CopyOutputRequest> request) OVERRIDE;
virtual void OnVSync(base::TimeTicks frame_time,
base::TimeDelta vsync_period) OVERRIDE;
+ virtual void SetNeedsAnimate() OVERRIDE;
- void PostComposite(base::TimeDelta delay);
enum CompositingTrigger {
COMPOSITE_IMMEDIATELY,
- COMPOSITE_ON_VSYNC
+ COMPOSITE_EVENTUALLY,
};
+ void PostComposite(CompositingTrigger trigger);
void Composite(CompositingTrigger trigger);
cc::UIResourceId GenerateUIResourceFromUIResourceBitmap(
const cc::UIResourceBitmap& bitmap,
@@ -144,9 +145,14 @@ class CONTENT_EXPORT CompositorImpl
// explicit request.
bool needs_composite_;
- // When SetNeedsComposite() is getting called, we will try to schedule
- // regularly during vsync.
- bool should_composite_on_vsync_;
+ // Whether we need to update animations on the next composite.
+ bool needs_animate_;
+
+ // Whether we posted a task and are about to composite.
+ bool will_composite_immediately_;
+
+ // Whether we will composite during the next suitable deadline.
+ bool will_composite_eventually_;
// Whether we composited already in the current vsync interval.
bool did_composite_this_frame_;
@@ -156,6 +162,7 @@ class CONTENT_EXPORT CompositorImpl
unsigned int pending_swapbuffers_;
base::TimeDelta vsync_period_;
+ base::TimeTicks last_vsync_;
base::WeakPtrFactory<CompositorImpl> weak_factory_;

Powered by Google App Engine
This is Rietveld 408576698