[gnome-software] details: Avoid restarting spinner
- From: Richard Hughes <rhughes src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-software] details: Avoid restarting spinner
- Date: Mon, 9 Dec 2019 10:00:35 +0000 (UTC)
commit 94ce4fc8ad7e5432772fb9432905d7669985b329
Author: Philip Chimento <philip endlessm com>
Date: Fri Nov 22 14:06:03 2019 -0800
details: Avoid restarting spinner
It seems that calling gtk_spinner_start() on an already started spinner
can cause it to "skip" to a different position. In order to avoid this
happening whenever this function is called, even if the state remains
the same, only start the spinner if it is not yet visible.
src/gs-details-page.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
---
diff --git a/src/gs-details-page.c b/src/gs-details-page.c
index e4a98c49..1e3e1cca 100644
--- a/src/gs-details-page.c
+++ b/src/gs-details-page.c
@@ -381,8 +381,10 @@ gs_details_page_refresh_progress (GsDetailsPage *self)
/* spinner */
switch (state) {
case AS_APP_STATE_REMOVING:
- gtk_spinner_start (GTK_SPINNER (self->spinner_remove));
- gtk_widget_set_visible (self->spinner_remove, TRUE);
+ if (!gtk_widget_get_visible (self->spinner_remove)) {
+ gtk_spinner_start (GTK_SPINNER (self->spinner_remove));
+ gtk_widget_set_visible (self->spinner_remove, TRUE);
+ }
/* align text together with the spinner if we're showing it */
gtk_widget_set_halign (self->box_progress2, GTK_ALIGN_START);
break;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]