static void cycle_job (GSWindow *window, GSJob *job, GSManager *manager) { gs_job_stop (job); manager_select_theme_for_job (manager, job); manager_maybe_start_job_for_window (manager, window); }
static void remove_job (GSJob *job) { if (job == NULL) { return; } gs_job_stop (job); g_object_unref (job); }
static void throttle_job (GSWindow *window, GSJob *job, GSManager *manager) { if (manager->priv->throttled) { gs_job_stop (job); } else { manager_maybe_start_job_for_window (manager, window); } }
static void manager_maybe_stop_job_for_window (GSManager *manager, GSWindow *window) { GSJob *job; job = lookup_job_for_window (manager, window); if (job == NULL) { gs_debug ("Job not found for window"); return; } gs_job_stop (job); }
static void preview_set_theme (GtkWidget *widget, const char *theme, const char *name) { GtkWidget *label; char *markup; if (job != NULL) { gs_job_stop (job); } preview_clear (widget); label = GTK_WIDGET (gtk_builder_get_object (builder, "fullscreen_preview_theme_label")); markup = g_markup_printf_escaped ("<i>%s</i>", name); gtk_label_set_markup (GTK_LABEL (label), markup); g_free (markup); if ((theme && strcmp (theme, "__blank-only") == 0)) { } else if (theme && strcmp (theme, "__random") == 0) { gchar **themes; themes = get_all_theme_ids (theme_manager); if (themes != NULL) { gint32 i; i = g_random_int_range (0, g_strv_length (themes)); job_set_theme (job, themes[i]); g_strfreev (themes); gs_job_start (job); } } else { job_set_theme (job, theme); gs_job_start (job); } }