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. 4 // 5 // Protocol for control messages. 6 7 syntax = "proto2"; 8 9 option optimize_for = LITE_RUNTIME; 10 11 package remoting.protocol; 12 13 message ClientResolution { 14 // Legacy width and height of the client in Density-Independent Pixels 15 optional int32 dips_width = 1; 16 optional int32 dips_height = 2; 17 18 // Width and height of the client in device pixels. 19 optional int32 width = 3; 20 optional int32 height = 4; 21 22 // Horizontal and vertical DPI of the screen. If either of these is zero or 23 // unset, the corresponding DPI should be assumed to be 96 (Windows' default) 24 optional int32 x_dpi = 5; 25 optional int32 y_dpi = 6; 26 } 27 28 message VideoControl { 29 // Enables the video channel if true, pauses if false. 30 optional bool enable = 1; 31 32 // Controls whether lossless encode and color translation are requested. 33 optional bool lossless_encode = 2; 34 optional bool lossless_color = 3; 35 } 36 37 message AudioControl { 38 // Enables the audio channel if true, pauses if false. 39 optional bool enable = 1; 40 } 41 42 message CursorShapeInfo { 43 // Width, height (in screen pixels) of the cursor. 44 optional int32 width = 1; 45 optional int32 height = 2; 46 47 // X,Y coordinates (relative to upper-left corner) of the cursor hotspot. 48 optional int32 hotspot_x = 3; 49 optional int32 hotspot_y = 4; 50 51 // Cursor pixmap data in 32-bit BGRA format. 52 optional bytes data = 5; 53 } 54 55 message Capabilities { 56 // List of capabilities supported by the sender (case sensitive, capabilities 57 // are separated by spaces). 58 optional string capabilities = 1; 59 } 60 61 message PairingRequest { 62 // Human-readable name of the client. 63 optional string client_name = 1; 64 } 65 66 message PairingResponse { 67 // Unique identifier for this client. 68 optional string client_id = 1; 69 70 // Shared secret for this client. 71 optional string shared_secret = 2; 72 } 73 74 message ExtensionMessage { 75 // The message type. This is used to dispatch the message to the correct 76 // recipient. 77 optional string type = 1; 78 79 // String-encoded message data. The client and host must agree on the encoding 80 // for each message type; different message types need not shared the same 81 // encoding. 82 optional string data = 2; 83 }