In order to implement VSync Aligned Input on compositor we need to refactor the event passing path to be callback based.
We also need to changed the logic of |current_overscroll_params_| since the current intercepting logic only works for synchronized event handling.
So the planned steps are:
1. Move |DidOverscrollParams| from |content::| to |ui::|
2. Move |ScopedWebInputEvent| from |content::| to |ui::|
3. Change the path to callback-based. e.g. Passing |ScopedWebInputEvent| along |InputEventFilter|->|InputHandlerProxy| (as well as |CompositorMusConnection|->|InputHandlerProxy|), and pass back |ScopedWebInputEvent|+|DidOverscrollParams| in the callbacks.
Note:
We have to choose the callback-based implementation instead of making it an interface of the client. The reasons are:
1. |CompositorMusConnection| is not a client but also sending events to |InputHandlerManager|.
2. |CompositorMusConnection| is already callback-based, and it's hard to make it interop with interface-based implementation.
Comment 1 by bugdroid1@chromium.org
, Aug 16 2016