[gnome-software/wip/temp/ubuntu-xenial-rebased-corrected: 118/331] Better handle setting app state
- From: William Hua <williamhua src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-software/wip/temp/ubuntu-xenial-rebased-corrected: 118/331] Better handle setting app state
- Date: Wed, 4 May 2016 14:08:26 +0000 (UTC)
commit f5730a99b03b201cee126f7da7b633537e98ced1
Author: Robert Ancell <robert ancell canonical com>
Date: Fri Feb 26 09:55:22 2016 +1300
Better handle setting app state
src/plugins/gs-plugin-apt.c | 15 ++++++++++-----
1 files changed, 10 insertions(+), 5 deletions(-)
---
diff --git a/src/plugins/gs-plugin-apt.c b/src/plugins/gs-plugin-apt.c
index f130707..da08bf0 100644
--- a/src/plugins/gs-plugin-apt.c
+++ b/src/plugins/gs-plugin-apt.c
@@ -460,8 +460,16 @@ gs_plugin_refine (GsPlugin *plugin,
info = g_hash_table_lookup (plugin->priv->package_info, gs_app_get_source_default (app));
if (info != NULL) {
- if (gs_app_get_state (app) == AS_APP_STATE_UNKNOWN && info->installed_version !=
NULL) {
- gs_app_set_state (app, AS_APP_STATE_INSTALLED);
+ if (gs_app_get_state (app) == AS_APP_STATE_UNKNOWN) {
+ if (info->installed_version != NULL) {
+ if (info->update_version != NULL) {
+ gs_app_set_state (app, AS_APP_STATE_UPDATABLE_LIVE);
+ } else {
+ gs_app_set_state (app, AS_APP_STATE_INSTALLED);
+ }
+ } else {
+ gs_app_set_state (app, AS_APP_STATE_AVAILABLE);
+ }
}
if ((flags & GS_PLUGIN_REFINE_FLAGS_REQUIRE_SIZE) != 0 && gs_app_get_size (app) == 0)
{
gs_app_set_size (app, info->installed_size * 1024);
@@ -477,7 +485,6 @@ gs_plugin_refine (GsPlugin *plugin,
if ((flags & GS_PLUGIN_REFINE_FLAGS_REQUIRE_PROVENANCE) != 0 && info->is_official) {
gs_app_set_provenance (app, TRUE);
}
- if ((flags & GS_PLUGIN_REFINE_FLAGS_REQUIRE_LICENCE) != 0)
if ((flags & GS_PLUGIN_REFINE_FLAGS_REQUIRE_LICENCE) != 0 && info->is_open_source) {
gs_app_set_licence (app, "@LicenseRef-ubuntu", GS_APP_QUALITY_HIGHEST);
}
@@ -517,7 +524,6 @@ gs_plugin_add_installed (GsPlugin *plugin,
// FIXME: Since appstream marks all packages as owned by PackageKit and we are replacing
PackageKit we need to accept those packages
gs_app_set_management_plugin (app, "PackageKit");
gs_app_add_source (app, info->name);
- gs_app_set_state (app, AS_APP_STATE_INSTALLED);
gs_plugin_add_app (list, app);
}
@@ -779,7 +785,6 @@ gs_plugin_add_updates (GsPlugin *plugin,
// FIXME: Since appstream marks all packages as owned by PackageKit and we are replacing
PackageKit we need to accept those packages
gs_app_set_management_plugin (app, "PackageKit");
gs_app_add_source (app, info->name);
- gs_app_set_state (app, AS_APP_STATE_UPDATABLE_LIVE);
gs_plugin_add_app (list, app);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]