[gnome-logs] Simplify code with gtk_stack_get_child_by_name()



commit e52da0873553d80fb8aaa0f675c0260b1e2d9e0f
Author: David King <davidk gnome org>
Date:   Tue Apr 1 14:42:53 2014 +0100

    Simplify code with gtk_stack_get_child_by_name()

 configure.ac       |    2 +-
 src/gl-eventview.c |   28 ++++------------------------
 2 files changed, 5 insertions(+), 25 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index 935c1b3..012aaab 100644
--- a/configure.ac
+++ b/configure.ac
@@ -88,7 +88,7 @@ AM_CONDITIONAL([LOGS_ENABLE_TESTS], [test "x$testing_utilities" = "xyes"])
 
 dnl Libraries
 GIO_REQUIRED="gio-unix-2.0 >= 2.39.90"
-GTK_REQUIRED="gtk+-3.0 >= 3.9.6"
+GTK_REQUIRED="gtk+-3.0 >= 3.11.5"
 SYSTEMD_JOURNAL_REQUIRED="libsystemd-journal"
 PKG_CHECK_MODULES([LOGS], [$GIO_REQUIRED $GTK_REQUIRED $SYSTEMD_JOURNAL_REQUIRED])
 
diff --git a/src/gl-eventview.c b/src/gl-eventview.c
index a9c7044..67c48f3 100644
--- a/src/gl-eventview.c
+++ b/src/gl-eventview.c
@@ -847,37 +847,17 @@ on_notify_mode (GlEventView *view,
     {
         case GL_EVENT_VIEW_MODE_LIST:
             {
-                GtkContainer *container;
-                GList *children;
-                GList *l;
+                GtkWidget *child;
                 GtkWidget *viewport;
                 GtkWidget *scrolled_window;
 
-                container = GTK_CONTAINER (stack);
-                children = gtk_container_get_children (container);
+                child = gtk_stack_get_child_by_name (stack, "detail");
 
-                for (l = children; l != NULL; l = g_list_next (l))
+                if (child)
                 {
-                    GtkWidget *child;
-                    gchar *name;
-
-                    child = (GtkWidget *)l->data;
-                    gtk_container_child_get (container, child, "name", &name,
-                                             NULL);
-
-                    if (g_strcmp0 (name, "detail") == 0)
-                    {
-                        gtk_container_remove (container, child);
-
-                        g_free (name);
-                        break;
-                    }
-
-                    g_free (name);
+                    gtk_container_remove (GTK_CONTAINER (stack), child);
                 }
 
-                g_list_free (children);
-
                 viewport = gtk_widget_get_parent (GTK_WIDGET (priv->active_listbox));
                 scrolled_window = gtk_widget_get_parent (viewport);
                 gtk_stack_set_visible_child (stack, scrolled_window);


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