+void set_panel_background()
+{
+ Pixmap wall = get_root_pixmap();
+
+ panel.area.pmap = server_create_pixmap (panel.area.width, panel.area.height);
+
+ // add layer of root pixmap
+ XCopyArea (server.dsp, wall, panel.area.pmap, server.gc, server.posx, server.posy, panel.area.width, panel.area.height, 0, 0);
+
+ // draw background panel
+ cairo_surface_t *cs;
+ cairo_t *c;
+ cs = cairo_xlib_surface_create (server.dsp, panel.area.pmap, server.visual, panel.area.width, panel.area.height);
+ c = cairo_create (cs);
+
+ draw_background (&panel.area, c);
+
+ cairo_destroy (c);
+ cairo_surface_destroy (cs);
+
+ // copy background panel on desktop window
+ XCopyArea (server.dsp, panel.area.pmap, server.root_win, server.gc_root, 0, 0, panel.area.width, panel.area.height, server.posx, server.posy);
+
+ redraw (&panel.area);
+}
+
+