compositor-wayland: Handle keymap changes
diff --git a/src/compositor-wayland.c b/src/compositor-wayland.c
index 519b1bc..21ce5cb 100644
--- a/src/compositor-wayland.c
+++ b/src/compositor-wayland.c
@@ -517,7 +517,11 @@
 		return;
 	}
 
-	weston_seat_init_keyboard(&input->base, keymap);
+	if (input->base.keyboard)
+		weston_seat_update_keymap(&input->base, keymap);
+	else
+		weston_seat_init_keyboard(&input->base, keymap);
+
 	xkb_map_unref(keymap);
 }