Set window user data using separate function
diff --git a/clients/window.c b/clients/window.c
index 214d0d5..cac1eb8 100644
--- a/clients/window.c
+++ b/clients/window.c
@@ -679,51 +679,51 @@
 }
 
 void
+window_set_user_data(struct window *window, void *data)
+{
+	window->user_data = data;
+}
+
+void
 window_set_resize_handler(struct window *window,
-			  window_resize_handler_t handler, void *data)
+			  window_resize_handler_t handler)
 {
 	window->resize_handler = handler;
-	window->user_data = data;
 }
 
 void
 window_set_redraw_handler(struct window *window,
-			  window_redraw_handler_t handler, void *data)
+			  window_redraw_handler_t handler)
 {
 	window->redraw_handler = handler;
-	window->user_data = data;
 }
 
 void
 window_set_key_handler(struct window *window,
-		       window_key_handler_t handler, void *data)
+		       window_key_handler_t handler)
 {
 	window->key_handler = handler;
-	window->user_data = data;
 }
 
 void
 window_set_acknowledge_handler(struct window *window,
-			       window_acknowledge_handler_t handler, void *data)
+			       window_acknowledge_handler_t handler)
 {
 	window->acknowledge_handler = handler;
-	window->user_data = data;
 }
 
 void
 window_set_frame_handler(struct window *window,
-			 window_frame_handler_t handler, void *data)
+			 window_frame_handler_t handler)
 {
 	window->frame_handler = handler;
-	window->user_data = data;
 }
 
 void
 window_set_keyboard_focus_handler(struct window *window,
-				  window_keyboard_focus_handler_t handler, void *data)
+				  window_keyboard_focus_handler_t handler)
 {
 	window->keyboard_focus_handler = handler;
-	window->user_data = data;
 }
 
 void