2023-12-18 23:36:15 +01:00
|
|
|
syntax = "proto2";
|
|
|
|
|
2023-12-29 01:06:28 +01:00
|
|
|
package cursor;
|
2023-12-18 23:36:15 +01:00
|
|
|
|
2023-12-29 01:06:28 +01:00
|
|
|
import "user.proto";
|
2023-12-18 23:36:15 +01:00
|
|
|
|
|
|
|
// empty request
|
|
|
|
message MovedResponse {}
|
|
|
|
|
|
|
|
// a tuple indicating row and column
|
|
|
|
message RowCol {
|
|
|
|
required int32 row = 1;
|
|
|
|
required int32 col = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
// cursor position object
|
|
|
|
message CursorPosition {
|
|
|
|
// path of current buffer this cursor is into
|
|
|
|
required string buffer = 1;
|
|
|
|
// cursor start position
|
|
|
|
required RowCol start = 2;
|
|
|
|
// cursor end position
|
|
|
|
required RowCol end = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
// cursor event, with user id and cursor position
|
|
|
|
message CursorEvent {
|
|
|
|
// user moving the cursor
|
2023-12-29 01:06:28 +01:00
|
|
|
required user.UserIdentity user = 1;
|
2023-12-18 23:36:15 +01:00
|
|
|
// new cursor position
|
|
|
|
required CursorPosition position = 2;
|
|
|
|
}
|