xcb_atom_t selatom; /* ditto.. */
xcb_window_t overlay;
+ xcb_visualid_t overlay_visual;
struct timeval next_repaint;
gboolean need_repaint;
void (*window_show)(struct d_window *w);
void (*window_hide)(struct d_window *w);
void (*window_become_zombie)(struct d_window *w);
+ void (*window_zombie_dead)(struct d_window *w);
void (*window_move)(struct d_window *w);
void (*window_resize)(struct d_window *w);
- void (*screen_root_pixmap_changed)(struct d_screen *sc);
+ void (*window_reshape)(struct d_window *w);
+ void (*window_opacity_change)(struct d_window *w);
+ void (*window_damage)(struct d_window *w);
+ void (*window_restack)(struct d_window *w, struct d_window *above);
+ void (*screen_root_pixmap_change)(struct d_screen *sc);
} d_screen_t;
d_screen_t* screen_new(struct d_display *dpy, int num, xcb_screen_t *xcb);
void screen_stacking_remove(d_screen_t *sc, struct d_window *w);
void screen_stacking_move_above(d_screen_t *sc, struct d_window *w,
struct d_window *above);
+void screen_stacking_move_to_top(d_screen_t *sc, struct d_window *w);
+void screen_stacking_move_to_bottom(d_screen_t *sc, struct d_window *w);
void screen_setup_default_functions(d_screen_t *sc);