[gnome-software] Forgotten file
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-software] Forgotten file
- Date: Fri, 23 Aug 2013 01:49:46 +0000 (UTC)
commit 8d02455a515b12dd3d9b492cac69b41fbff32a0e
Author: Matthias Clasen <mclasen redhat com>
Date: Thu Aug 22 21:49:26 2013 -0400
Forgotten file
src/gs-shell-updates.c | 26 ++++++++++++++++----------
1 files changed, 16 insertions(+), 10 deletions(-)
---
diff --git a/src/gs-shell-updates.c b/src/gs-shell-updates.c
index 2c8e6c1..17d0475 100644
--- a/src/gs-shell-updates.c
+++ b/src/gs-shell-updates.c
@@ -39,6 +39,7 @@ struct GsShellUpdatesPrivate
GtkBuilder *builder;
GtkListBox *list_box_updates;
gboolean cache_valid;
+ gboolean waiting;
};
enum {
@@ -96,13 +97,14 @@ gs_shell_updates_get_updates_cb (GsPluginLoader *plugin_loader,
GtkWidget *widget;
GtkWidget *notebook;
- widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "spinner_wait"));
+ priv->waiting = FALSE;
+ priv->cache_valid = TRUE;
+
+ widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "header_spinner"));
gtk_spinner_stop (GTK_SPINNER (widget));
gtk_widget_hide (widget);
widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "button_wait"));
gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "button_update_all"));
- gtk_widget_show (widget);
/* get the results */
list = gs_plugin_loader_get_updates_finish (plugin_loader, res, &error);
@@ -149,28 +151,32 @@ gs_shell_updates_refresh (GsShellUpdates *shell_updates, GCancellable *cancellab
GtkWidget *widget;
/* no need to refresh */
- if (priv->cache_valid)
+ if (priv->cache_valid) {
+ widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "button_update_all"));
+ gtk_widget_show (widget);
return;
+ }
- _gtk_container_remove_all (GTK_CONTAINER (priv->list_box_updates));
-
- widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "spinner_wait"));
+ widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "header_spinner"));
gtk_spinner_start (GTK_SPINNER (widget));
gtk_widget_show (widget);
widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "button_wait"));
gtk_widget_show (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "button_update_all"));
- gtk_widget_hide (widget);
widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "box_updates_up_to_date"));
gtk_widget_hide (widget);
widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "scrolledwindow_updates"));
gtk_widget_show (widget);
+ if (priv->waiting)
+ return;
+
+ _gtk_container_remove_all (GTK_CONTAINER (priv->list_box_updates));
+
gs_plugin_loader_get_updates_async (priv->plugin_loader,
cancellable,
(GAsyncReadyCallback) gs_shell_updates_get_updates_cb,
shell_updates);
- priv->cache_valid = TRUE;
+ priv->waiting = TRUE;
}
/**
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]