Introduce API for embedders to dispatch events to embedded client |
|||||
Issue descriptionissue 621078 tracks allowing an embedder to receive events targeted to an embedded client. However, the embedder (e.g. chrome-browser) may want to then dispatch the events to the embedded client (chrome-renderer). mus should provide a mechanism for doing this.
,
Jun 23 2016
Some in-progress work for this at https://codereview.chromium.org/2089183003 One interesting issue that has come up is that the embedder does not know the window-id for the embedded client. So an event targeted at the embed-root that goes to the embedder, and then is dispatched to the embedded client, cannot be dispatched correctly in the embedded client, since the window-id it doesn't have a window with the id it received from the embedder.
,
Oct 4 2016
,
Feb 26 2018
,
Feb 26 2018
,
Aug 14
I believe we will want this, but we don't need it anytime soon. |
|||||
►
Sign in to add a comment |
|||||
Comment 1 by sadrul@chromium.org
, Jun 17 2016One approach for doing this: mus sends a request for an EventHandler to the renderer (or any embedded client whose embedder requested to intercept events), and send the other end of it to the browser (i.e. the embedder). The browser can then use it to send events to the renderer. Something like: interface InputEventHandler { OnWindowInputEvent(window_id, event) => (bool handled); }; interface WindowTreeClient { ... RequestInputEventHandler(InputEventHandler& handler); }; interface WindowTree { ... Embed(window_id, WindowTreeClient, flags) => (bool success, InputEventHandler? handler); };