2007-04-15 Sergio Villar Senin <svillar@igalia.com>
[modest] / src / maemo / modest-main-window.c
index c4d2559..e3c120f 100644 (file)
@@ -64,7 +64,6 @@ static void connect_signals (ModestMainWindow *self);
 static void restore_sizes (ModestMainWindow *self);
 static void save_sizes (ModestMainWindow *self);
 
-static void modest_main_window_create_toolbar (ModestWindow *window);
 static void modest_main_window_show_toolbar   (ModestWindow *window,
                                               gboolean show_toolbar);
 
@@ -143,7 +142,6 @@ modest_main_window_class_init (ModestMainWindowClass *klass)
        parent_class            = g_type_class_peek_parent (klass);
        gobject_class->finalize = modest_main_window_finalize;
 
-       modest_window_class->create_toolbar_func = modest_main_window_create_toolbar;
        modest_window_class->show_toolbar_func = modest_main_window_show_toolbar;
 
        g_type_class_add_private (gobject_class, sizeof(ModestMainWindowPrivate));
@@ -578,44 +576,37 @@ set_homogeneous (GtkWidget *widget,
 }
 
 static void 
-modest_main_window_create_toolbar (ModestWindow *self)
-{
-       GtkWidget *reply_button, *menu;
-       ModestWindowPrivate *parent_priv;
-       
-       parent_priv = MODEST_WINDOW_GET_PRIVATE(self);
-       
-       /* Toolbar */
-       parent_priv->toolbar = gtk_ui_manager_get_widget (parent_priv->ui_manager, 
-                                                         "/ToolBar");
-
-       /* Set homogeneous toolbar */
-       gtk_container_foreach (GTK_CONTAINER (parent_priv->toolbar), 
-                              set_homogeneous, NULL);
-
-       /* Set reply button tap and hold menu */
-       reply_button = gtk_ui_manager_get_widget (parent_priv->ui_manager, 
-                                                 "/ToolBar/ToolbarMessageReply");
-       menu = gtk_ui_manager_get_widget (parent_priv->ui_manager, "/ToolbarReplyContextMenu");
-       gtk_widget_tap_and_hold_setup (GTK_WIDGET (reply_button), menu, NULL, 0);
-}
-
-static void 
 modest_main_window_show_toolbar (ModestWindow *self,
                                 gboolean show_toolbar)
 {
        ModestWindowPrivate *parent_priv;
+       GtkWidget *reply_button = NULL, *menu = NULL;
        
        parent_priv = MODEST_WINDOW_GET_PRIVATE(self);
 
-       if (!parent_priv->toolbar)
-               return;
+       if (!parent_priv->toolbar && show_toolbar) {
+               parent_priv->toolbar = gtk_ui_manager_get_widget (parent_priv->ui_manager, 
+                                                                 "/ToolBar");
+
+               /* Set homogeneous toolbar */
+               gtk_container_foreach (GTK_CONTAINER (parent_priv->toolbar), 
+                                      set_homogeneous, NULL);
 
-       if (show_toolbar) {
+               /* Add to window */
                hildon_window_add_toolbar (HILDON_WINDOW (self), 
                                           GTK_TOOLBAR (parent_priv->toolbar));
-               gtk_widget_show_all (GTK_WIDGET (self));
-       } else
-               hildon_window_remove_toolbar (HILDON_WINDOW (self),
-                                             GTK_TOOLBAR (parent_priv->toolbar));
+
+               /* Set reply button tap and hold menu */
+               reply_button = gtk_ui_manager_get_widget (parent_priv->ui_manager, 
+                                                         "/ToolBar/ToolbarMessageReply");
+               menu = gtk_ui_manager_get_widget (parent_priv->ui_manager, 
+                                                 "/ToolbarReplyContextMenu");
+               gtk_widget_tap_and_hold_setup (GTK_WIDGET (reply_button), menu, NULL, 0);
+       }
+
+
+       if (show_toolbar)
+               gtk_widget_show (GTK_WIDGET (parent_priv->toolbar));
+       else
+               gtk_widget_hide (GTK_WIDGET (parent_priv->toolbar));
 }