compositor: set data_device keyboard focus in seat_get_keyboard

Because seat_get_keyboard is called after initial
weston_surface_activate, wl_data_device_set_keyboard_focus
fails to send data offer for newly connected client due to
wl_seat.focus_resource being NULL.

This patch calls wl_data_device_set_keyboard_focus
in seat_get_keyboard, so it can send data offer for
newly created client (when wl_keyboard.resource_list
and wl_seat.focus_resource are properly set up).

https://bugs.freedesktop.org/show_bug.cgi?id=60617
diff --git a/src/compositor.c b/src/compositor.c
index 6ee3a79..64d0830 100644
--- a/src/compositor.c
+++ b/src/compositor.c
@@ -2306,6 +2306,7 @@
 	    seat->seat.keyboard->focus->resource.client == client) {
 		wl_keyboard_set_focus(seat->seat.keyboard,
 				      seat->seat.keyboard->focus);
+		wl_data_device_set_keyboard_focus(&seat->seat);
 	}
 }