summaryrefslogtreecommitdiff
path: root/endless/eospagemanager.c
diff options
context:
space:
mode:
authorFernando Farfan <fernando@endlessm.com>2013-06-17 12:49:18 -0700
committerFernando Farfan <fernando@endlessm.com>2013-06-17 14:19:36 -0700
commitd3bab0c4d20aa98a04cdb81d65a9733f73a4c600 (patch)
tree9c748ccad0d4202692c9bad998efa0f9be8e2327 /endless/eospagemanager.c
parentd1d717db7d880a7bbe66fa645a3e0657f1d56b15 (diff)
Addressed code review comments.
Several edits to address code review comments: - eostopbar.c: Switched the left&center top bar hboxes to alignments. - eostopbar.c: Replaced gtk_widget_destroy with gtk_container_remove. - eospagemanager.c: added dispose() virtual function to unref topbar widgets. [endlessm/eos-sdk#97]
Diffstat (limited to 'endless/eospagemanager.c')
-rw-r--r--endless/eospagemanager.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/endless/eospagemanager.c b/endless/eospagemanager.c
index 432ab88..fd3c4d5 100644
--- a/endless/eospagemanager.c
+++ b/endless/eospagemanager.c
@@ -167,6 +167,13 @@ page_info_free (EosPageManagerPageInfo *info)
g_slice_free (EosPageManagerPageInfo, info);
}
+static void
+top_bars_unref (EosPageManagerPageInfo *info)
+{
+ g_object_unref (info->left_topbar_widget);
+ g_object_unref (info->center_topbar_widget);
+}
+
/*
* find_page_info_by_widget:
* @self: the page manager
@@ -318,6 +325,16 @@ eos_page_manager_set_property (GObject *object,
}
static void
+eos_page_manager_dispose (GObject *object)
+{
+ EosPageManager *self = EOS_PAGE_MANAGER (object);
+
+ g_list_foreach (self->priv->page_info, (GFunc)top_bars_unref, NULL);
+
+ G_OBJECT_CLASS (eos_page_manager_parent_class)->dispose (object);
+}
+
+static void
eos_page_manager_finalize (GObject *object)
{
EosPageManager *self = EOS_PAGE_MANAGER (object);
@@ -620,6 +637,7 @@ eos_page_manager_class_init (EosPageManagerClass *klass)
object_class->get_property = eos_page_manager_get_property;
object_class->set_property = eos_page_manager_set_property;
+ object_class->dispose = eos_page_manager_dispose;
object_class->finalize = eos_page_manager_finalize;
/* Pass all size requesting and allocation on to the stack */