Add wayvncctl capture-changed event
Signed-off-by: Jim Ramsay <i.am@jimramsay.com>pull/195/head
parent
19862aace8
commit
467cfa1889
|
@ -76,3 +76,6 @@ void ctl_server_event_disconnected(struct ctl*,
|
|||
const char* client_hostname,
|
||||
const char* client_username,
|
||||
int new_connection_count);
|
||||
|
||||
void ctl_server_event_capture_changed(struct ctl*,
|
||||
const char* captured_output);
|
||||
|
|
|
@ -56,6 +56,7 @@ enum cmd_type {
|
|||
enum event_type {
|
||||
EVT_CLIENT_CONNECTED,
|
||||
EVT_CLIENT_DISCONNECTED,
|
||||
EVT_CAPTURE_CHANGED,
|
||||
EVT_UNKNOWN,
|
||||
};
|
||||
#define EVT_LIST_LEN EVT_UNKNOWN
|
||||
|
@ -130,6 +131,14 @@ static struct cmd_info evt_list[] = {
|
|||
"Sent when a vnc client disconnects from wayvnc",
|
||||
{ CLIENT_EVENT_PARAMS("not including") }
|
||||
},
|
||||
[EVT_CAPTURE_CHANGED] = {"capture-changed",
|
||||
"Sent when wayvnc changes which output is captured",
|
||||
{
|
||||
{"output", "The name of the output now being captured"},
|
||||
{NULL, NULL},
|
||||
},
|
||||
},
|
||||
|
||||
};
|
||||
|
||||
struct cmd {
|
||||
|
@ -1038,3 +1047,10 @@ void ctl_server_event_disconnected(struct ctl* self,
|
|||
ctl_server_event_connect(self, EVT_CLIENT_DISCONNECTED, client_id,
|
||||
client_hostname, client_username, new_connection_count);
|
||||
}
|
||||
|
||||
void ctl_server_event_capture_changed(struct ctl* self,
|
||||
const char* captured_output)
|
||||
{
|
||||
ctl_server_enqueue_event(self, EVT_CAPTURE_CHANGED,
|
||||
json_pack("{s:s}", "output", captured_output));
|
||||
}
|
||||
|
|
|
@ -1087,6 +1087,8 @@ void set_selected_output(struct wayvnc* self, struct output* output) {
|
|||
self->screencopy.wl_output = output->wl_output;
|
||||
output->on_dimension_change = on_output_dimension_change;
|
||||
output->userdata = self;
|
||||
if (self->ctl)
|
||||
ctl_server_event_capture_changed(self->ctl, output->name);
|
||||
log_selected_output(self);
|
||||
}
|
||||
|
||||
|
|
10
wayvnc.scd
10
wayvnc.scd
|
@ -262,6 +262,16 @@ Parameters:
|
|||
*username=...*
|
||||
The username used to authenticate this client. May be null.
|
||||
|
||||
_CAPTURE_CHANGED_
|
||||
|
||||
The *capture-changed* event is sent when the currently captured output
|
||||
changes.
|
||||
|
||||
Parameters:
|
||||
|
||||
*output=...*
|
||||
The name of the output now being captured.
|
||||
|
||||
## IPC MESSAGE FORMAT
|
||||
|
||||
The *wayvncctl(1)* command line utility will construct properly-formatted json
|
||||
|
|
Loading…
Reference in New Issue