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

Unified Diff: cc/scheduler/scheduler.h

Issue 1425973003: cc: Don't attempt main thread synchronization if it is slow. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase; change names; use enum class Created 5 years, 1 month 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
« no previous file with comments | « no previous file | cc/scheduler/scheduler.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/scheduler/scheduler.h
diff --git a/cc/scheduler/scheduler.h b/cc/scheduler/scheduler.h
index 6f8ba1ef1423617f627374fd5e1615d939a98759..ac0b15f3e77e9fc98dc9b7d69362dfe13c81d04f 100644
--- a/cc/scheduler/scheduler.h
+++ b/cc/scheduler/scheduler.h
@@ -20,6 +20,7 @@
#include "cc/scheduler/draw_result.h"
#include "cc/scheduler/scheduler_settings.h"
#include "cc/scheduler/scheduler_state_machine.h"
+#include "cc/tiles/tile_priority.h"
namespace base {
namespace trace_event {
@@ -98,7 +99,8 @@ class CC_EXPORT Scheduler : public BeginFrameObserverBase {
void DidSwapBuffers();
void DidSwapBuffersComplete();
- void SetImplLatencyTakesPriority(bool impl_latency_takes_priority);
+ void SetTreePrioritiesAndScrollState(TreePriority tree_priority,
+ ScrollHandlerState scroll_handler_state);
void NotifyReadyToCommit();
void BeginMainFrameAborted(CommitEarlyOutReason reason);
@@ -125,7 +127,7 @@ class CC_EXPORT Scheduler : public BeginFrameObserverBase {
return !begin_impl_frame_deadline_task_.IsCancelled();
}
bool ImplLatencyTakesPriority() const {
- return state_machine_.impl_latency_takes_priority();
+ return state_machine_.ImplLatencyTakesPriority();
}
// Pass in a main_thread_start_time of base::TimeTicks() if it is not
@@ -200,9 +202,13 @@ class CC_EXPORT Scheduler : public BeginFrameObserverBase {
void DrawAndSwapForced();
void ProcessScheduledActions();
void UpdateCompositorTimingHistoryRecordingEnabled();
- bool ShouldRecoverMainLatency(const BeginFrameArgs& args) const;
- bool ShouldRecoverImplLatency(const BeginFrameArgs& args) const;
- bool CanCommitAndActivateBeforeDeadline(const BeginFrameArgs& args) const;
+ bool ShouldRecoverMainLatency(const BeginFrameArgs& args,
+ bool can_activate_before_deadline) const;
+ bool ShouldRecoverImplLatency(const BeginFrameArgs& args,
+ bool can_activate_before_deadline) const;
+ bool CanBeginMainFrameAndActivateBeforeDeadline(
+ const BeginFrameArgs& args,
+ base::TimeDelta bmf_to_activate_estimate) const;
void AdvanceCommitStateIfPossible();
bool IsBeginMainFrameSentOrStarted() const;
void BeginRetroFrame();
« no previous file with comments | « no previous file | cc/scheduler/scheduler.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698