static gboolean on_preview_draw (GtkWidget *widget, cairo_t *cr, CcBackgroundPanel *panel) { CcBackgroundPanelPrivate *priv = panel->priv; /* we have another shot in flight or an existing cache */ if (panel->priv->display_screenshot == NULL && panel->priv->screenshot_path == NULL) { get_screenshot_async (panel); } else update_display_preview (panel, widget, priv->current_background); return TRUE; }
static gboolean on_preview_draw (GtkWidget *widget, cairo_t *cr, CcBackgroundPanel *panel) { /* we have another shot in flight or an existing cache */ if (panel->priv->display_screenshot == NULL && panel->priv->screenshot_path == NULL) { GdkRectangle rect; gdk_screen_get_monitor_geometry (gtk_widget_get_screen (widget), 0, &rect); get_screenshot_async (panel, &rect); } else update_display_preview (panel); return TRUE; }