Index: base/message_loop/message_loop.h |
diff --git a/base/message_loop/message_loop.h b/base/message_loop/message_loop.h |
index 8e73d42b1e278dac9f68a58eeb1a01af84f6149e..7f991decdb7a87bbff7d868c63fc3e53f43eb1e6 100644 |
--- a/base/message_loop/message_loop.h |
+++ b/base/message_loop/message_loop.h |
@@ -171,6 +171,17 @@ class BASE_EXPORT MessageLoop : public MessagePump::Delegate { |
void AddNestingObserver(NestingObserver* observer); |
void RemoveNestingObserver(NestingObserver* observer); |
+ class BASE_EXPORT RecentTimeObserver { |
+ public: |
+ virtual void OnUpdateRecentTime(base::TimeTicks recent_time) = 0; |
+ |
+ protected: |
+ virtual ~RecentTimeObserver(); |
+ }; |
+ |
+ void AddRecentTimeObserver(RecentTimeObserver* observer); |
+ void RemoveRecentTimeObserver(RecentTimeObserver* observer); |
+ |
// NOTE: Deprecated; prefer task_runner() and the TaskRunner interfaces. |
// TODO(skyostil): Remove these functions (crbug.com/465354). |
// |
@@ -509,6 +520,8 @@ class BASE_EXPORT MessageLoop : public MessagePump::Delegate { |
ObserverList<NestingObserver> nesting_observers_; |
+ ObserverList<RecentTimeObserver> recent_time_observers_; |
+ |
// A recursion block that prevents accidentally running additional tasks when |
// insider a (accidentally induced?) nested message pump. |
bool nestable_tasks_allowed_; |