Possible conversations
Clipboard update
Requestor is sending ClipboardItem to replier.
- Request: ClipboardUpdateReady
- Reply: ClipboardUpdateConfirm
- Request: ClipboardUpdateSend
- Reply: Confirm
Serial clipboard
Begin serial mode
- Request: SerialModeToggle
- Reply: Confirm
End serial mode
- Request: SerialModeToggle
- Reply: Confirm
Add item to serial batch
- Request: SerialModeAppendReady
- Reply: ClipboardUpdateConfirm
Next step depends on status from reply:
- continue
- Request: ClipboardUpdateSend
- Reply: Confirm
- abort - close connection
- not exists / not matches
- not understood - close connection
Move to next item in serial batch
- Request: SerialModeInfo
- Reply: Confirm
Next step depends on status from reply:
- continue - close connection
- abort - close connection
- not exists / not matches
- not understood
Restart serial batch
- Request: SerialModeInfo
- Reply: ClipboardUpdateConfirm
Next step depends on status from reply:
- ok - close connection
- not exists / not matches
- not understood
Copy serial batch
- Request: SerialModeInfo
For each item command ClipboardUpdateSend
- Reply: Confirm
Protocol structure
4 |
uint32 |
magic number, identifies correct data format |
4 |
int32 |
version |
4 |
int32 |
conversation |
4 |
int32 |
message type |
8 |
quint64 |
message length |
- |
QString |
password |
Message types
ClipboardUpdateReady
4 |
int32 |
mode (clipboard, selection, both) |
ClipboardUpdateConfirm
4 |
int32 |
status (continue/abort) |
4 |
int8 |
meaning of the list below (Accept or Exclude) |
- |
QStringList |
list of mime types |
ClipboardUpdateSend
4 |
int32 |
mode (clipboard, selection, both) |
- |
QStringList |
formats |
- |
QByteArray * formats.size |
mime data |
Confirm
4 |
int32 |
status (ok, abort, not exists, not matches, not understood) |
SerialModeToggle
SerialModeAppendReady
8 |
int64 |
serial batch ID |
4 |
int32 |
serial batch item count |
SerialModeInfo
8 |
int64 |
serial batch ID |
4 |
int32 |
serial batch item count |
4 |
int32 |
current index |