| Index: content/renderer/render_thread_impl.cc
|
| diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc
|
| index b3ac9d9513a41317525fcd903218b69f21a6aa4d..e22f73c52522b1941a516ccc9434494e6819299a 100644
|
| --- a/content/renderer/render_thread_impl.cc
|
| +++ b/content/renderer/render_thread_impl.cc
|
| @@ -257,6 +257,7 @@ uint32_t g_next_compositor_frame_sink_id = 1;
|
| // An implementation of mojom::RenderMessageFilter which can be mocked out
|
| // for tests which may indirectly send messages over this interface.
|
| mojom::RenderMessageFilter* g_render_message_filter_for_testing;
|
| +mojom::RenderMessageFilterUI* g_render_message_filter_ui_for_testing;
|
|
|
| // Keep the global RenderThreadImpl in a TLS slot so it is impossible to access
|
| // incorrectly from the wrong thread.
|
| @@ -538,11 +539,25 @@ mojom::RenderMessageFilter* RenderThreadImpl::current_render_message_filter() {
|
| }
|
|
|
| // static
|
| +mojom::RenderMessageFilterUI*
|
| +RenderThreadImpl::current_render_message_filter_ui() {
|
| + if (g_render_message_filter_ui_for_testing)
|
| + return g_render_message_filter_ui_for_testing;
|
| + DCHECK(current());
|
| + return current()->render_message_filter_ui();
|
| +}
|
| +
|
| +// static
|
| void RenderThreadImpl::SetRenderMessageFilterForTesting(
|
| mojom::RenderMessageFilter* render_message_filter) {
|
| g_render_message_filter_for_testing = render_message_filter;
|
| }
|
|
|
| +void RenderThreadImpl::SetRenderMessageFilterUIForTesting(
|
| + mojom::RenderMessageFilterUI* render_message_filter_ui) {
|
| + g_render_message_filter_ui_for_testing = render_message_filter_ui;
|
| +}
|
| +
|
| // In single-process mode used for debugging, we don't pass a renderer client
|
| // ID via command line because RenderThreadImpl lives in the same process as
|
| // the browser
|
| @@ -2055,6 +2070,15 @@ mojom::RenderMessageFilter* RenderThreadImpl::render_message_filter() {
|
| return render_message_filter_.get();
|
| }
|
|
|
| +mojom::RenderMessageFilterUI* RenderThreadImpl::render_message_filter_ui() {
|
| + if (!render_message_filter_ui_) {
|
| + GetChannel()->GetRemoteAssociatedInterface(&render_message_filter_ui_);
|
| + }
|
| +
|
| + DCHECK(render_message_filter_ui_);
|
| + return render_message_filter_ui_.get();
|
| +}
|
| +
|
| gpu::GpuChannelHost* RenderThreadImpl::GetGpuChannel() {
|
| if (!gpu_channel_)
|
| return nullptr;
|
|
|