[gnome-software] Show installed apps in the main window
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-software] Show installed apps in the main window
- Date: Sat, 31 Aug 2013 23:09:28 +0000 (UTC)
commit 9e8703c130535886630fcdc0076268d570d527ef
Author: Matthias Clasen <mclasen redhat com>
Date: Sat Aug 31 19:08:29 2013 -0400
Show installed apps in the main window
Replace the popup dialog we had here with going to the
details page. The improved back button handling lets us
go back to the installed page from there.
src/gs-shell-installed.c | 67 +--------------------------------------------
1 files changed, 2 insertions(+), 65 deletions(-)
---
diff --git a/src/gs-shell-installed.c b/src/gs-shell-installed.c
index 1ef238e..7e86dde 100644
--- a/src/gs-shell-installed.c
+++ b/src/gs-shell-installed.c
@@ -65,75 +65,12 @@ gs_shell_installed_app_widget_activated_cb (GtkListBox *list_box,
GtkListBoxRow *row,
GsShellInstalled *shell_installed)
{
- const gchar *tmp;
- GsApp *app;
- GtkWidget *details, *button, *grid;
- GtkWidget *image, *label;
- PangoAttrList *attr_list;
GsAppWidget *app_widget;
+ GsApp *app;
app_widget = GS_APP_WIDGET (gtk_bin_get_child (GTK_BIN (row)));
app = gs_app_widget_get_app (app_widget);
-
- details = gtk_dialog_new_with_buttons (_("Details"),
- GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (list_box))),
- GTK_DIALOG_MODAL,
- _("_Done"), GTK_RESPONSE_CLOSE,
- NULL);
- gtk_container_set_border_width (GTK_CONTAINER (details), 20);
- button = gtk_dialog_get_widget_for_response (GTK_DIALOG (details), GTK_RESPONSE_CLOSE);
- gtk_style_context_add_class (gtk_widget_get_style_context (button), "suggested-action");
- g_signal_connect_swapped (button, "clicked", G_CALLBACK (gtk_widget_destroy), details);
-
- grid = gtk_grid_new ();
- gtk_widget_show (grid);
- gtk_widget_set_halign (grid, GTK_ALIGN_FILL);
- gtk_grid_set_column_spacing (GTK_GRID (grid), 20);
- gtk_container_add (GTK_CONTAINER (gtk_dialog_get_content_area (GTK_DIALOG (details))), grid);
-
- image = gtk_image_new ();
- if (gs_app_get_pixbuf (app)) {
- gtk_image_set_from_pixbuf (GTK_IMAGE (image), gs_app_get_pixbuf (app)); gtk_widget_show
(image);
- }
- gtk_grid_attach (GTK_GRID (grid), image, 0, 0, 1, 3);
-
- label = gtk_label_new (gs_app_get_name (app));
- gtk_misc_set_alignment (GTK_MISC (label), 0, 0.5);
- gtk_widget_set_hexpand (label, TRUE);
- gtk_widget_set_margin_bottom (label, 10);
- attr_list = pango_attr_list_new ();
- pango_attr_list_insert (attr_list, pango_attr_weight_new (PANGO_WEIGHT_BOLD));
- pango_attr_list_insert (attr_list, pango_attr_scale_new (1));
- gtk_label_set_attributes (GTK_LABEL (label), attr_list);
- pango_attr_list_unref (attr_list);
- gtk_widget_show (label);
- gtk_grid_attach (GTK_GRID (grid), label, 1, 0, 1, 1);
-
- label = gtk_label_new (NULL);
- gtk_misc_set_alignment (GTK_MISC (label), 0, 0.5);
- gtk_widget_set_hexpand (label, TRUE);
- gtk_widget_set_margin_bottom (label, 20);
- if (gs_app_get_summary (app)) {
- gtk_label_set_label (GTK_LABEL (label), gs_app_get_summary (app));
- gtk_widget_show (label);
- }
- gtk_grid_attach (GTK_GRID (grid), label, 1, 1, 1, 1);
- tmp = gs_app_get_description (app);
- label = gtk_label_new (tmp);
- gtk_misc_set_alignment (GTK_MISC (label), 0, 0.5);
- gtk_label_set_line_wrap (GTK_LABEL (label), TRUE);
- gtk_widget_show (label);
- gtk_grid_attach (GTK_GRID (grid), label, 0, 3, 2, 1);
-
- if (gs_app_get_url (app)) {
- button = gtk_link_button_new_with_label (gs_app_get_url (app), _("Visit website"));
- gtk_widget_set_halign (button, GTK_ALIGN_START);
- gtk_button_set_relief (GTK_BUTTON (button), GTK_RELIEF_NONE);
- gtk_widget_show (button);
- gtk_grid_attach (GTK_GRID (grid), button, 0, 4, 2, 1);
- }
-
- gtk_window_present (GTK_WINDOW (details));
+ gs_shell_show_app (shell_installed->priv->shell, app);
}
typedef struct {
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]