+draw_cairo (cairo_t *cr, charts_t *charts, int width, int height,
+ double x_min, double x_max)
+{
+ int chart_height = height / 3;
+
+ /* Erase to white */
+ cairo_set_source_rgb (cr, 1, 1, 1);
+ cairo_paint (cr);
+
+ acre_set_x_axis_range (charts->cpu_gpu_load, x_min, x_max);
+ acre_draw (charts->cpu_gpu_load, cr, width, chart_height);
+
+ cairo_translate (cr, 0.0, chart_height);
+
+ acre_set_x_axis_range (charts->frame_time, x_min, x_max);
+ acre_draw (charts->frame_time, cr, width, chart_height);
+
+ cairo_translate (cr, 0.0, chart_height);
+
+ acre_set_x_axis_range (charts->frame_latency, x_min, x_max);
+ acre_draw (charts->frame_latency, cr, width, chart_height);
+}
+
+static void
+draw_xlib (Display *dpy, Window window, Visual *visual, charts_t *charts,