[gnome-software/gnome-3-16] Add a separate button style class for install progress
- From: Kalev Lember <klember src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-software/gnome-3-16] Add a separate button style class for install progress
- Date: Thu, 30 Jul 2015 18:10:37 +0000 (UTC)
commit a44a804253b1f40e7976bffe28bfd1cb223b1686
Author: Kalev Lember <kalevlember gmail com>
Date: Mon Jun 8 14:47:26 2015 +0200
Add a separate button style class for install progress
This makes it possible to actually remove the style class when we are
done with the installing and return to regularly styled buttons.
src/gs-app-row.c | 15 +++++++++++----
1 files changed, 11 insertions(+), 4 deletions(-)
---
diff --git a/src/gs-app-row.c b/src/gs-app-row.c
index c024da4..7fea78c 100644
--- a/src/gs-app-row.c
+++ b/src/gs-app-row.c
@@ -118,11 +118,11 @@ static gchar *
gs_app_row_get_button_css (gint percentage)
{
if (percentage == 0)
- return g_strdup ("* { background: @theme_bg_color; }");
+ return g_strdup (".button.install-progress { background: @theme_bg_color; }");
else if (percentage == 100)
- return g_strdup ("* { background: @theme_selected_bg_color; }");
+ return g_strdup (".button.install-progress { background: @theme_selected_bg_color; }");
else
- return g_strdup_printf ("* { background: linear-gradient(to right, @theme_selected_bg_color
%d%%, @theme_bg_color %d%%); }", percentage, percentage + 1);
+ return g_strdup_printf (".button.install-progress { background: linear-gradient(to right,
@theme_selected_bg_color %d%%, @theme_bg_color %d%%); }", percentage, percentage + 1);
}
/**
@@ -140,9 +140,16 @@ gs_app_row_refresh (GsAppRow *app_row)
return;
/* do a fill bar for the current progress */
- if (gs_app_get_progress (priv->app) > 0) {
+ context = gtk_widget_get_style_context (priv->button);
+ switch (gs_app_get_state (priv->app)) {
+ case AS_APP_STATE_INSTALLING:
button_css = gs_app_row_get_button_css (gs_app_get_progress (priv->app));
gtk_css_provider_load_from_data (priv->button_css_provider, button_css, -1, NULL);
+ gtk_style_context_add_class (context, "install-progress");
+ break;
+ default:
+ gtk_style_context_remove_class (context, "install-progress");
+ break;
}
/* join the lines*/
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]