/*
- * Copyright (c) 2011, Andy Spencer <andy753421@gmail.com>
+ * Copyright (c) 2011-2012, Andy Spencer <andy753421@gmail.com>
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* The window provided to these function is generally the
* window with the keyboard or mouse focus. */
-/* Refresh the window layout */
-void wm_update(void);
-
-/* Called for each watched key press.
- * This is currently used for some other events such
- * as focus-in and focus-out as well. */
-int wm_handle_key(win_t *win, Key_t key, mod_t mod, ptr_t ptr);
+/* Called for each watched event */
+int wm_handle_event(win_t *win, event_t ev, mod_t mod, ptr_t ptr);
/* Called for each mouse movement */
int wm_handle_ptr(win_t *win, ptr_t ptr);
+/* Called when a window changes states */
+int wm_handle_state(win_t *win, state_t prev, state_t next);
+
/* Begin managing a window, called for each new window */
void wm_insert(win_t *win);
/* First call, sets up key bindings, etc */
void wm_init(win_t *root);
+
+/* First call, sets up key bindings, etc */
+void wm_free(win_t *root);