| // Copyright 2018 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| module ws.mojom; |
| |
| import "ui/gfx/geometry/mojo/geometry.mojom"; |
| |
| enum InjectedMouseButtonType { |
| kLeft, |
| kMiddle, |
| kRight, |
| }; |
| |
| // An interface offered by the window service which allows clients to inject |
| // events for remoting. This interfaces mirrors that of |
| // ui/events/SystemEventInjector. |
| interface RemotingEventInjector { |
| MoveCursorToLocationInPixels(gfx.mojom.PointF location); |
| |
| // If |down| is true, injects a mouse press, otherwise a mouse release. |
| InjectMousePressOrRelease(InjectedMouseButtonType button, bool down); |
| |
| InjectMouseWheelInPixels(int32 delta_x, int32 delta_y); |
| |
| // |native_key_code| corresponds to the native key-code from a dom-code. See |
| // DomCodeToNativeKeycode(). |
| InjectKeyEvent(int32 native_key_code, bool down, bool suppress_auto_repeat); |
| }; |