Use per-frame task runners instead of per-thread task runners at pepper module

This CL is based on Alexander's CL: https://chromium-review.googlesource.com/c/chromium/src/+/1367329

Bug: 870606
Change-Id: I2ca696efeb203d7cb48c9f33034163c2d9c6277d
Reviewed-on: https://chromium-review.googlesource.com/c/1379607
Reviewed-by: Kentaro Hara <[email protected]>
Reviewed-by: Alexander Timin <[email protected]>
Reviewed-by: Bill Budge <[email protected]>
Commit-Queue: Hajime Hoshi <[email protected]>
Cr-Commit-Position: refs/heads/master@{#620986}
diff --git a/ppapi/proxy/proxy_channel.h b/ppapi/proxy/proxy_channel.h
index ca41f58..6987b39 100644
--- a/ppapi/proxy/proxy_channel.h
+++ b/ppapi/proxy/proxy_channel.h
@@ -124,10 +124,12 @@
   // You must call this function before anything else. Returns true on success.
   // The delegate pointer must outlive this class, ownership is not
   // transferred.
-  virtual bool InitWithChannel(Delegate* delegate,
-                               base::ProcessId peer_pid,
-                               const IPC::ChannelHandle& channel_handle,
-                               bool is_client);
+  virtual bool InitWithChannel(
+      Delegate* delegate,
+      base::ProcessId peer_pid,
+      const IPC::ChannelHandle& channel_handle,
+      bool is_client,
+      scoped_refptr<base::SingleThreadTaskRunner> task_runner);
 
   ProxyChannel::Delegate* delegate() const {
     return delegate_;