1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 // Protocol for event messages.
9 option optimize_for = LITE_RUNTIME;
11 package remoting.protocol;
13 // Defines a keyboard event.
16 // The keyboard (Caps/Num) lock states.
18 LOCK_STATES_CAPSLOCK = 1;
19 LOCK_STATES_NUMLOCK = 2;
22 // The Windows Virtual Key code.
23 //optional int32 keycode = 1;
24 optional bool pressed = 2;
27 // The upper 16-bits are the USB Page (0x07 for key events).
28 // The lower 16-bits are the USB Usage ID (which identifies the actual key).
29 optional uint32 usb_keycode = 3;
31 // The keyboard lock states.
32 optional uint32 lock_states = 4 [default = 0];
35 // Defines a mouse event message on the event channel.
46 // Mouse position information.
50 // Mouse button event.
51 optional MouseButton button = 5;
52 optional bool button_down = 6;
54 // Mouse wheel information.
55 // These values encode the number of pixels and 'ticks' of movement that
56 // would result from the wheel event on the client system.
57 optional float wheel_delta_x = 7;
58 optional float wheel_delta_y = 8;
59 optional float wheel_ticks_x = 9;
60 optional float wheel_ticks_y = 10;
63 // Defines an event that sends clipboard data between peers.
64 message ClipboardEvent {
66 // The MIME type of the data being sent.
67 optional string mime_type = 1;
69 // The data being sent.
70 optional bytes data = 2;