[gnome-software/wip/rancell/reviews] Use the review rating count for total reviews



commit 1df074a2d8339b76d1e51ea9b61716511fd371cd
Author: Robert Ancell <robert ancell canonical com>
Date:   Wed Feb 10 12:17:32 2016 +1300

    Use the review rating count for total reviews
    
    Use the review ratings values to calculate total number of reviews. There may be
    more reviews than is practical to download.

 src/gs-shell-details.c |   13 +++++++++++--
 1 files changed, 11 insertions(+), 2 deletions(-)
---
diff --git a/src/gs-shell-details.c b/src/gs-shell-details.c
index e8c6c0d..0affa83 100644
--- a/src/gs-shell-details.c
+++ b/src/gs-shell-details.c
@@ -745,10 +745,19 @@ gs_shell_details_refresh_all (GsShellDetails *self)
                } else {
                        gtk_widget_set_visible (self->histogram, FALSE);
                }
-               if (gs_app_get_reviews (self->app) != NULL) {
+               if (review_ratings != NULL || gs_app_get_reviews (self->app) != NULL) {
                        g_autofree gchar *text = NULL;
+                       gint n_reviews = 0;
+
                        gtk_widget_set_visible (self->label_review_count, TRUE);
-                       text = g_strdup_printf ("(%u)", gs_app_get_reviews (self->app)->len);
+                       if (review_ratings != NULL) {
+                               guint i;
+                               for (i = 0; i < review_ratings->len; i++)
+                                       n_reviews += g_array_index (review_ratings, gint, i);
+                       } else  {
+                               n_reviews = gs_app_get_reviews (self->app)->len;
+                       }
+                       text = g_strdup_printf ("(%u)", n_reviews);
                        gtk_label_set_text (GTK_LABEL (self->label_review_count), text);
                } else {
                        gtk_widget_set_visible (self->label_review_count, FALSE);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]