| // Copyright (c) 2012 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. |
| |
| // Protocol for event messages. |
| |
| syntax = "proto2"; |
| |
| option optimize_for = LITE_RUNTIME; |
| |
| package remoting.protocol; |
| |
| // Defines a keyboard event. |
| message KeyEvent { |
| |
| // The keyboard (Caps/Num) lock states. |
| enum LockStates { |
| LOCK_STATES_CAPSLOCK = 1; |
| LOCK_STATES_NUMLOCK = 2; |
| } |
| |
| // True for key press events, and false for key release. |
| optional bool pressed = 2; |
| |
| // The USB key code. |
| // The upper 16-bits are the USB Page (0x07 for key events). |
| // The lower 16-bits are the USB Usage ID (which identifies the actual key). |
| optional uint32 usb_keycode = 3; |
| |
| // The keyboard lock states. |
| optional uint32 lock_states = 4 [default = 0]; |
| } |
| |
| // Text input event for input method different from physical keyboards, |
| // including software keyboard, gesture typing, voice input, etc. |
| message TextEvent { |
| // Unicode sequence for the event in UTF-8. |
| optional string text = 1; |
| } |
| |
| // Defines a mouse event message on the event channel. |
| message MouseEvent { |
| |
| enum MouseButton { |
| BUTTON_UNDEFINED = 0; |
| BUTTON_LEFT = 1; |
| BUTTON_MIDDLE = 2; |
| BUTTON_RIGHT = 3; |
| BUTTON_MAX = 4; |
| } |
| |
| // Mouse position information. |
| optional int32 x = 1; |
| optional int32 y = 2; |
| |
| // Mouse button event. |
| optional MouseButton button = 5; |
| optional bool button_down = 6; |
| |
| // Mouse wheel information. |
| // These values encode the number of pixels and 'ticks' of movement that |
| // would result from the wheel event on the client system. |
| optional float wheel_delta_x = 7; |
| optional float wheel_delta_y = 8; |
| optional float wheel_ticks_x = 9; |
| optional float wheel_ticks_y = 10; |
| |
| // Mouse movement information. Provided only when mouse lock is engaged. |
| optional int32 delta_x = 11; |
| optional int32 delta_y = 12; |
| } |
| |
| // Defines an event that sends clipboard data between peers. |
| message ClipboardEvent { |
| |
| // The MIME type of the data being sent. |
| optional string mime_type = 1; |
| |
| // The data being sent. |
| optional bytes data = 2; |
| } |