window: Keep widgets in a tree instead of a list
diff --git a/clients/window.h b/clients/window.h
index 6d35d66..0bc7e5a 100644
--- a/clients/window.h
+++ b/clients/window.h
@@ -215,14 +215,9 @@
 struct widget *
 window_add_widget(struct window *window, void *data);
 
-typedef void (*widget_func_t)(struct widget *widget, void *data);
-
 typedef void (*data_func_t)(void *data, size_t len,
 			    int32_t x, int32_t y, void *user_data);
 
-void
-window_for_each_widget(struct window *window, widget_func_t func, void *data);
-
 struct widget *
 window_get_focus_widget(struct window *window);
 struct display *
@@ -329,6 +324,10 @@
 const char *
 window_get_title(struct window *window);
 
+struct widget *
+widget_add_widget(struct widget *parent, void *data);
+void
+widget_destroy(struct widget *widget);
 void
 widget_get_allocation(struct widget *widget, struct rectangle *allocation);