forked from pool/gnome-software
44 lines
1.8 KiB
Diff
44 lines
1.8 KiB
Diff
|
Index: gnome-software-3.34.2/src/gs-application.c
|
||
|
===================================================================
|
||
|
--- gnome-software-3.34.2.orig/src/gs-application.c
|
||
|
+++ gnome-software-3.34.2/src/gs-application.c
|
||
|
@@ -511,20 +511,34 @@ set_mode_activated (GSimpleAction *actio
|
||
|
GsApplication *app = GS_APPLICATION (data);
|
||
|
const gchar *mode;
|
||
|
|
||
|
- gs_application_present_window (app, NULL);
|
||
|
-
|
||
|
- gs_shell_reset_state (app->shell);
|
||
|
-
|
||
|
mode = g_variant_get_string (parameter, NULL);
|
||
|
if (g_strcmp0 (mode, "updates") == 0) {
|
||
|
+ gboolean ret;
|
||
|
+ GError *error = NULL;
|
||
|
+
|
||
|
+ ret = g_spawn_command_line_async (BINDIR "/gpk-update-viewer",
|
||
|
+ &error);
|
||
|
+ if (!ret) {
|
||
|
+ g_warning ("Failure launching update viewer: %s",
|
||
|
+ error->message);
|
||
|
+ g_error_free (error);
|
||
|
+ }
|
||
|
gs_shell_set_mode (app->shell, GS_SHELL_MODE_UPDATES);
|
||
|
} else if (g_strcmp0 (mode, "installed") == 0) {
|
||
|
+ gs_application_present_window (app, NULL);
|
||
|
+ gs_shell_reset_state (app->shell);
|
||
|
gs_shell_set_mode (app->shell, GS_SHELL_MODE_INSTALLED);
|
||
|
} else if (g_strcmp0 (mode, "moderate") == 0) {
|
||
|
+ gs_application_present_window (app, NULL);
|
||
|
+ gs_shell_reset_state (app->shell);
|
||
|
gs_shell_set_mode (app->shell, GS_SHELL_MODE_MODERATE);
|
||
|
} else if (g_strcmp0 (mode, "overview") == 0) {
|
||
|
+ gs_application_present_window (app, NULL);
|
||
|
+ gs_shell_reset_state (app->shell);
|
||
|
gs_shell_set_mode (app->shell, GS_SHELL_MODE_OVERVIEW);
|
||
|
} else if (g_strcmp0 (mode, "updated") == 0) {
|
||
|
+ gs_application_present_window (app, NULL);
|
||
|
+ gs_shell_reset_state (app->shell);
|
||
|
gs_shell_set_mode (app->shell, GS_SHELL_MODE_UPDATES);
|
||
|
gs_shell_show_installed_updates (app->shell);
|
||
|
} else {
|