Added option to folders window menu
[modest] / src / hildon2 / modest-folder-window.c
index 4c3201c..c7493bc 100644 (file)
@@ -299,7 +299,7 @@ modest_folder_window_new (TnyFolderStoreQuery *query)
                          G_CALLBACK (edit_mode_changed), (gpointer) self);
 
        action_area_box = hildon_tree_view_get_action_area_box (GTK_TREE_VIEW (priv->folder_view));
-       priv->new_message_button = hildon_button_new (0, HILDON_BUTTON_ARRANGEMENT_HORIZONTAL);
+       priv->new_message_button = hildon_button_new (MODEST_EDITABLE_SIZE, HILDON_BUTTON_ARRANGEMENT_HORIZONTAL);
 
        hildon_button_set_title (HILDON_BUTTON (priv->new_message_button), _("mcen_ti_new_message"));
        new_message_pixbuf = modest_platform_get_icon ("general_add", MODEST_ICON_SIZE_BIG);
@@ -459,6 +459,13 @@ modest_folder_window_set_mailbox (ModestFolderWindow *self,
        priv = MODEST_FOLDER_WINDOW_GET_PRIVATE (self);
 
        modest_folder_view_set_mailbox (MODEST_FOLDER_VIEW (priv->folder_view), mailbox);
+       modest_window_set_active_mailbox (MODEST_WINDOW (self), mailbox);
+}
+
+static void
+edit_account (GtkButton *button,
+             ModestFolderWindow *self)
+{
 
 }
 
@@ -482,15 +489,17 @@ setup_menu (ModestFolderWindow *self)
                                           MODEST_DIMMING_CALLBACK (modest_ui_dimming_rules_on_folder_window_delete));
 
        /* send receive actions should be only one visible always */
-       modest_hildon2_window_add_to_menu (MODEST_HILDON2_WINDOW (self), 
-                                          _("mcen_me_inbox_sendandreceive"), 
-                                          NULL,
+       modest_hildon2_window_add_to_menu (MODEST_HILDON2_WINDOW (self), _("mcen_me_inbox_sendandreceive"), NULL,
                                           APP_MENU_CALLBACK (modest_ui_actions_on_send_receive),
                                           MODEST_DIMMING_CALLBACK (modest_ui_dimming_rules_on_send_receive));
 
        modest_hildon2_window_add_to_menu (MODEST_HILDON2_WINDOW (self), _("mcen_me_outbox_cancelsend"), NULL,
                                           APP_MENU_CALLBACK (modest_ui_actions_cancel_send),
                                           MODEST_DIMMING_CALLBACK (modest_ui_dimming_rules_on_cancel_sending_all));
+
+       modest_hildon2_window_add_to_menu (MODEST_HILDON2_WINDOW (self), _("mcen_me_edit_account"), NULL,
+                                          APP_MENU_CALLBACK (edit_account),
+                                          MODEST_DIMMING_CALLBACK (modest_ui_dimming_rules_on_edit_accounts));
 }
 
 static void
@@ -506,17 +515,16 @@ on_folder_activated (ModestFolderView *folder_view,
 
        priv = MODEST_FOLDER_WINDOW_GET_PRIVATE (self);
 
-       if (!folder)
-               return;
-
-       if (!TNY_IS_FOLDER (folder))
+       if (!folder || !TNY_IS_FOLDER (folder))
                return;
 
        /* We cannot open noselect folders (fake ones) */
        if (tny_folder_get_caps (folder) & TNY_FOLDER_CAPS_NOSELECT)
                return;
 
-       headerwin = modest_header_window_new (folder, modest_window_get_active_account (MODEST_WINDOW (self)));
+       headerwin = modest_header_window_new (folder, 
+                                             modest_window_get_active_account (MODEST_WINDOW (self)),
+                                             modest_window_get_active_mailbox (MODEST_WINDOW (self)));
 
        if (modest_window_mgr_register_window (modest_runtime_get_window_mgr (),
                                               MODEST_WINDOW (headerwin),
@@ -809,15 +817,18 @@ on_visible_account_changed (ModestFolderView *folder_view,
 {
        TnyAccount *account;
 
+       if (!account_id)
+               return;
+
        account = modest_tny_account_store_get_tny_account_by (modest_runtime_get_account_store(),
                                                               MODEST_TNY_ACCOUNT_STORE_QUERY_ID,
                                                               account_id);
 
        /* Update window title */
-       update_window_title (MODEST_FOLDER_WINDOW (user_data), account);
-
-       if (account)
+       if (account) {
+               update_window_title (MODEST_FOLDER_WINDOW (user_data), account);
                g_object_unref (account);
+       }
 }
 
 static void