|
|
|
@ -223,14 +223,9 @@ static void backend_destroy(struct wlr_backend *backend) {
|
|
|
|
|
|
|
|
|
|
wlr_signal_emit_safe(&x11->pointer_dev.events.destroy, &x11->pointer_dev);
|
|
|
|
|
wlr_signal_emit_safe(&x11->keyboard_dev.events.destroy, &x11->keyboard_dev);
|
|
|
|
|
// TODO probably need to use wlr_keyboard_destroy, but the devices need to
|
|
|
|
|
// be malloced for that to work
|
|
|
|
|
if (x11->keyboard_dev.keyboard->keymap) {
|
|
|
|
|
xkb_keymap_unref(x11->keyboard_dev.keyboard->keymap);
|
|
|
|
|
}
|
|
|
|
|
if (x11->keyboard_dev.keyboard->xkb_state) {
|
|
|
|
|
xkb_state_unref(x11->keyboard_dev.keyboard->xkb_state);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
wlr_input_device_destroy(&x11->keyboard_dev);
|
|
|
|
|
wlr_input_device_destroy(&x11->pointer_dev);
|
|
|
|
|
|
|
|
|
|
wlr_signal_emit_safe(&backend->events.destroy, backend);
|
|
|
|
|
|
|
|
|
|