blob: 7a276c1c08059d2a7e184361a9a1ec673987b847 [file] [log] [blame]
// 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);
};