|
|
@ -411,15 +411,21 @@ dbus_mouse_release(DBusDisplayConsole *ddc, |
|
|
return DBUS_METHOD_INVOCATION_HANDLED; |
|
|
return DBUS_METHOD_INVOCATION_HANDLED; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
static void |
|
|
|
|
|
dbus_mouse_update_is_absolute(DBusDisplayConsole *ddc) |
|
|
|
|
|
{ |
|
|
|
|
|
g_object_set(ddc->iface_mouse, |
|
|
|
|
|
"is-absolute", qemu_input_is_absolute(), |
|
|
|
|
|
NULL); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
static void |
|
|
static void |
|
|
dbus_mouse_mode_change(Notifier *notify, void *data) |
|
|
dbus_mouse_mode_change(Notifier *notify, void *data) |
|
|
{ |
|
|
{ |
|
|
DBusDisplayConsole *ddc = |
|
|
DBusDisplayConsole *ddc = |
|
|
container_of(notify, DBusDisplayConsole, mouse_mode_notifier); |
|
|
container_of(notify, DBusDisplayConsole, mouse_mode_notifier); |
|
|
|
|
|
|
|
|
g_object_set(ddc->iface_mouse, |
|
|
dbus_mouse_update_is_absolute(ddc); |
|
|
"is-absolute", qemu_input_is_absolute(), |
|
|
|
|
|
NULL); |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
int dbus_display_console_get_index(DBusDisplayConsole *ddc) |
|
|
int dbus_display_console_get_index(DBusDisplayConsole *ddc) |
|
|
@ -492,6 +498,7 @@ dbus_display_console_new(DBusDisplay *display, QemuConsole *con) |
|
|
register_displaychangelistener(&ddc->dcl); |
|
|
register_displaychangelistener(&ddc->dcl); |
|
|
ddc->mouse_mode_notifier.notify = dbus_mouse_mode_change; |
|
|
ddc->mouse_mode_notifier.notify = dbus_mouse_mode_change; |
|
|
qemu_add_mouse_mode_change_notifier(&ddc->mouse_mode_notifier); |
|
|
qemu_add_mouse_mode_change_notifier(&ddc->mouse_mode_notifier); |
|
|
|
|
|
dbus_mouse_update_is_absolute(ddc); |
|
|
|
|
|
|
|
|
return ddc; |
|
|
return ddc; |
|
|
} |
|
|
} |
|
|
|