`eContextMenu` event may be fired from `widget`. Therefore, different from `ePointerClick` and `ePointerAuxClick`, they may cross the process boundary, may be handled by APZ and may be dispatched into the DOM after a delay. Therefore, this patch is complicated than the previous patch. This adds * New IPC message handlers for sending/receiving a `WidgetPointerEvent` * New `DelayedPointerEvent` class and templated `MouseInput::ToWidgetEvent` * `PresShell::EventHandler` handles `eContextMenu` as same as `WidgetMouseEvent` Differential Revision: https://phabricator.services.mozilla.com/D213003