1 // Copyright 2014 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #include "third_party/blink/public/platform/scheduler/test/web_fake_thread_scheduler.h" 6 7 #include "base/single_thread_task_runner.h" 8 #include "base/threading/thread_task_runner_handle.h" 9 #include "build/build_config.h" 10 #include "third_party/blink/public/common/input/web_input_event_attribution.h" 11 #include "third_party/blink/renderer/platform/scheduler/public/thread.h" 12 #include "third_party/blink/renderer/platform/scheduler/test/web_fake_widget_scheduler.h" 13 14 namespace blink { 15 namespace scheduler { 16 17 WebFakeThreadScheduler::WebFakeThreadScheduler() = default; 18 19 WebFakeThreadScheduler::~WebFakeThreadScheduler() = default; 20 CreateMainThread()21std::unique_ptr<Thread> WebFakeThreadScheduler::CreateMainThread() { 22 return nullptr; 23 } 24 25 scoped_refptr<base::SingleThreadTaskRunner> DefaultTaskRunner()26WebFakeThreadScheduler::DefaultTaskRunner() { 27 return base::ThreadTaskRunnerHandle::Get(); 28 } 29 30 scoped_refptr<base::SingleThreadTaskRunner> CompositorTaskRunner()31WebFakeThreadScheduler::CompositorTaskRunner() { 32 return base::ThreadTaskRunnerHandle::Get(); 33 } 34 35 std::unique_ptr<WebAgentGroupScheduler> CreateAgentGroupScheduler()36WebFakeThreadScheduler::CreateAgentGroupScheduler() { 37 return nullptr; 38 } 39 40 std::unique_ptr<WebWidgetScheduler> CreateWidgetScheduler()41WebFakeThreadScheduler::CreateWidgetScheduler() { 42 return std::make_unique<WebFakeWidgetScheduler>(); 43 } 44 45 WebAgentGroupScheduler* GetCurrentAgentGroupScheduler()46WebFakeThreadScheduler::GetCurrentAgentGroupScheduler() { 47 return nullptr; 48 } 49 50 std::unique_ptr<WebRenderWidgetSchedulingState> NewRenderWidgetSchedulingState()51WebFakeThreadScheduler::NewRenderWidgetSchedulingState() { 52 return nullptr; 53 } 54 WillBeginFrame(const viz::BeginFrameArgs & args)55void WebFakeThreadScheduler::WillBeginFrame(const viz::BeginFrameArgs& args) {} 56 BeginFrameNotExpectedSoon()57void WebFakeThreadScheduler::BeginFrameNotExpectedSoon() {} 58 BeginMainFrameNotExpectedUntil(base::TimeTicks time)59void WebFakeThreadScheduler::BeginMainFrameNotExpectedUntil( 60 base::TimeTicks time) {} 61 DidCommitFrameToCompositor()62void WebFakeThreadScheduler::DidCommitFrameToCompositor() {} 63 DidHandleInputEventOnCompositorThread(const blink::WebInputEvent & web_input_event,InputEventState event_state)64void WebFakeThreadScheduler::DidHandleInputEventOnCompositorThread( 65 const blink::WebInputEvent& web_input_event, 66 InputEventState event_state) {} 67 WillPostInputEventToMainThread(WebInputEvent::Type web_input_event_type,const WebInputEventAttribution & attribution)68void WebFakeThreadScheduler::WillPostInputEventToMainThread( 69 WebInputEvent::Type web_input_event_type, 70 const WebInputEventAttribution& attribution) {} 71 WillHandleInputEventOnMainThread(WebInputEvent::Type web_input_event_type,const WebInputEventAttribution & attribution)72void WebFakeThreadScheduler::WillHandleInputEventOnMainThread( 73 WebInputEvent::Type web_input_event_type, 74 const WebInputEventAttribution& attribution) {} 75 DidHandleInputEventOnMainThread(const blink::WebInputEvent & web_input_event,WebInputEventResult result)76void WebFakeThreadScheduler::DidHandleInputEventOnMainThread( 77 const blink::WebInputEvent& web_input_event, 78 WebInputEventResult result) {} 79 DidAnimateForInputOnCompositorThread()80void WebFakeThreadScheduler::DidAnimateForInputOnCompositorThread() {} 81 DidScheduleBeginMainFrame()82void WebFakeThreadScheduler::DidScheduleBeginMainFrame() {} DidRunBeginMainFrame()83void WebFakeThreadScheduler::DidRunBeginMainFrame() {} 84 IsHighPriorityWorkAnticipated()85bool WebFakeThreadScheduler::IsHighPriorityWorkAnticipated() { 86 return false; 87 } 88 SetRendererHidden(bool hidden)89void WebFakeThreadScheduler::SetRendererHidden(bool hidden) {} 90 SetRendererBackgrounded(bool backgrounded)91void WebFakeThreadScheduler::SetRendererBackgrounded(bool backgrounded) {} 92 SetSchedulerKeepActive(bool keep_active)93void WebFakeThreadScheduler::SetSchedulerKeepActive(bool keep_active) {} 94 95 std::unique_ptr<WebFakeThreadScheduler::RendererPauseHandle> PauseRenderer()96WebFakeThreadScheduler::PauseRenderer() { 97 return nullptr; 98 } 99 100 #if defined(OS_ANDROID) PauseTimersForAndroidWebView()101void WebFakeThreadScheduler::PauseTimersForAndroidWebView() {} 102 ResumeTimersForAndroidWebView()103void WebFakeThreadScheduler::ResumeTimersForAndroidWebView() {} 104 #endif 105 Shutdown()106void WebFakeThreadScheduler::Shutdown() {} 107 SetTopLevelBlameContext(base::trace_event::BlameContext * blame_context)108void WebFakeThreadScheduler::SetTopLevelBlameContext( 109 base::trace_event::BlameContext* blame_context) {} 110 SetRendererProcessType(WebRendererProcessType type)111void WebFakeThreadScheduler::SetRendererProcessType( 112 WebRendererProcessType type) {} 113 OnMainFrameRequestedForInput()114void WebFakeThreadScheduler::OnMainFrameRequestedForInput() {} 115 116 } // namespace scheduler 117 } // namespace blink 118