[gnome-software/1630-new-updated-apps-are-not-actually-new] gs-overview-page: Sort recent applications by their release date
- From: Milan Crha <mcrha src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-software/1630-new-updated-apps-are-not-actually-new] gs-overview-page: Sort recent applications by their release date
- Date: Thu, 24 Feb 2022 12:07:11 +0000 (UTC)
commit c3796e163d0004c949f79db116d5aca76c1b031a
Author: Milan Crha <mcrha redhat com>
Date: Thu Feb 24 13:06:07 2022 +0100
gs-overview-page: Sort recent applications by their release date
Thus the list shows the most recently updated applications first.
Closes https://gitlab.gnome.org/GNOME/gnome-software/-/issues/1630
src/gs-overview-page.c | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
---
diff --git a/src/gs-overview-page.c b/src/gs-overview-page.c
index 50e2e2cfb..6d6df7df3 100644
--- a/src/gs-overview-page.c
+++ b/src/gs-overview-page.c
@@ -169,6 +169,18 @@ out:
gs_overview_page_decrement_action_cnt (self);
}
+static gint
+gs_overview_page_sort_recent_cb (GsApp *app1,
+ GsApp *app2,
+ gpointer user_data)
+{
+ if (gs_app_get_release_date (app1) < gs_app_get_release_date (app2))
+ return 1;
+ if (gs_app_get_release_date (app1) == gs_app_get_release_date (app2))
+ return g_strcmp0 (gs_app_get_name (app1), gs_app_get_name (app2));
+ return -1;
+}
+
static void
gs_overview_page_get_recent_cb (GObject *source_object, GAsyncResult *res, gpointer user_data)
{
@@ -198,7 +210,7 @@ gs_overview_page_get_recent_cb (GObject *source_object, GAsyncResult *res, gpoin
goto out;
}
- gs_app_list_randomize (list);
+ gs_app_list_sort (list, gs_overview_page_sort_recent_cb, NULL);
gs_widget_remove_all (self->box_recent, (GsRemoveFunc) gtk_flow_box_remove);
@@ -515,7 +527,6 @@ gs_overview_page_load (GsOverviewPage *self)
self->loading_recent = TRUE;
plugin_job = gs_plugin_job_newv (GS_PLUGIN_ACTION_GET_RECENT,
"age", (guint64) (60 * 60 * 24 * 60),
- "max-results", 20,
"refine-flags", GS_PLUGIN_REFINE_FLAGS_REQUIRE_RATING |
GS_PLUGIN_REFINE_FLAGS_REQUIRE_ICON,
"dedupe-flags", GS_APP_LIST_FILTER_FLAG_PREFER_INSTALLED |
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]