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

Unified Diff: components/scheduler/renderer/web_view_scheduler_impl.h

Issue 1652083002: Prepare for per-webview virtual time (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebased Created 4 years, 11 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: components/scheduler/renderer/web_view_scheduler_impl.h
diff --git a/components/scheduler/renderer/web_view_scheduler_impl.h b/components/scheduler/renderer/web_view_scheduler_impl.h
index caed57ed8c5a8eb16ef2a3313e776248531f3bca..9d26caf70546a97f23fc70dabf89452ceb838b0e 100644
--- a/components/scheduler/renderer/web_view_scheduler_impl.h
+++ b/components/scheduler/renderer/web_view_scheduler_impl.h
@@ -10,6 +10,7 @@
#include "base/macros.h"
#include "base/memory/scoped_ptr.h"
+#include "components/scheduler/base/task_queue.h"
#include "components/scheduler/scheduler_export.h"
#include "third_party/WebKit/public/platform/WebViewScheduler.h"
@@ -23,6 +24,7 @@ class WebView;
namespace scheduler {
+class AutoAdvancingVirtualTimeDomain;
class RendererSchedulerImpl;
class WebFrameSchedulerImpl;
@@ -39,6 +41,11 @@ class SCHEDULER_EXPORT WebViewSchedulerImpl : public blink::WebViewScheduler {
blink::WebPassOwnPtr<blink::WebFrameScheduler> createFrameScheduler()
override;
+ // TODO(alexclarke): Expose in blink::WebViewScheduler.
+ void enableVirtualTime();
+ void setAllowVirtualTimeToAdvance(
+ bool allow_virtual_time_to_advance);
+
// Virtual for testing.
virtual void AddConsoleWarning(const std::string& message);
@@ -49,11 +56,20 @@ class SCHEDULER_EXPORT WebViewSchedulerImpl : public blink::WebViewScheduler {
void Unregister(WebFrameSchedulerImpl* frame_scheduler);
+ AutoAdvancingVirtualTimeDomain* virtual_time_domain() const {
+ return virtual_time_domain_.get();
+ }
+
+ TaskQueue::PumpPolicy GetVirtualTimePumpPolicy() const;
+
std::set<WebFrameSchedulerImpl*> frame_schedulers_;
+ scoped_ptr<AutoAdvancingVirtualTimeDomain> virtual_time_domain_;
+ TaskQueue::PumpPolicy virtual_time_pump_policy_;
blink::WebView* web_view_;
RendererSchedulerImpl* renderer_scheduler_;
bool page_visible_;
bool disable_background_timer_throttling_;
+ bool allow_virtual_time_to_advance_;
DISALLOW_COPY_AND_ASSIGN(WebViewSchedulerImpl);
};
« no previous file with comments | « components/scheduler/renderer/web_frame_scheduler_impl.cc ('k') | components/scheduler/renderer/web_view_scheduler_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698