// 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); };