Chromium Code Reviews| Index: cc/scheduler/scheduler.h |
| diff --git a/cc/scheduler/scheduler.h b/cc/scheduler/scheduler.h |
| index 7d577b0187ac334a9324f407990121a2f082eeb2..3f139c617839f2d33bca2de987d0dd748dc55532 100644 |
| --- a/cc/scheduler/scheduler.h |
| +++ b/cc/scheduler/scheduler.h |
| @@ -24,7 +24,8 @@ class Thread; |
| class SchedulerClient { |
| public: |
| - virtual void SetNeedsBeginImplFrame(bool enable) = 0; |
| + virtual void SetNeedsBeginFrame(bool enable) = 0; |
| + virtual void OnBeginImplFrame(const BeginFrameArgs& args) = 0; |
| virtual void ScheduledActionSendBeginMainFrame() = 0; |
| virtual DrawSwapReadbackResult ScheduledActionDrawAndSwapIfPossible() = 0; |
| virtual DrawSwapReadbackResult ScheduledActionDrawAndSwapForced() = 0; |
| @@ -110,7 +111,9 @@ class CC_EXPORT Scheduler { |
| base::TimeTicks LastBeginImplFrameTime(); |
| - void BeginImplFrame(const BeginFrameArgs& args); |
| + void BeginFrame(const BeginFrameArgs& args); |
| + void BeginRetroFrame(); |
| + void BeginImplFrame(); |
| void OnBeginImplFrameDeadline(); |
| void PollForAnticipatedDrawTriggers(); |
| @@ -130,7 +133,7 @@ class CC_EXPORT Scheduler { |
| base::TimeTicks AdjustedBeginImplFrameDeadline() const; |
| void ScheduleBeginImplFrameDeadline(base::TimeTicks deadline); |
| - void SetupNextBeginImplFrameIfNeeded(); |
| + void SetupNextBeginFrameIfNeeded(); |
| void ActivatePendingTree(); |
| void DrawAndSwapIfPossible(); |
| void DrawAndSwapForced(); |
| @@ -147,8 +150,13 @@ class CC_EXPORT Scheduler { |
| int layer_tree_host_id_; |
| scoped_refptr<base::SequencedTaskRunner> impl_task_runner_; |
| - bool last_set_needs_begin_impl_frame_; |
| - BeginFrameArgs last_begin_impl_frame_args_; |
| + bool last_set_needs_begin_frame_; |
| + bool begin_retro_frame_posted_; |
| + |
| + BeginFrameArgs begin_frame_args_; |
|
Sami
2014/04/01 13:09:10
It seems like we could do without this field and i
brianderson
2014/04/01 19:12:53
I liked the idea of having access to the original
brianderson
2014/04/02 04:15:57
I ended up getting rid of begin_frame_args_ like y
|
| + BeginFrameArgs begin_retro_frame_args_; |
| + BeginFrameArgs begin_impl_frame_args_; |
| + |
| base::CancelableClosure begin_impl_frame_deadline_closure_; |
| base::CancelableClosure poll_for_draw_triggers_closure_; |
| base::RepeatingTimer<Scheduler> advance_commit_state_timer_; |