2007-07-23 Murray Cumming <murrayc@murrayc.com>
[modest] / src / modest-ui-actions.c
index e144aa4..31b85d8 100644 (file)
@@ -49,6 +49,7 @@
 #ifdef MODEST_PLATFORM_MAEMO
 #include "maemo/modest-osso-state-saving.h"
 #include "maemo/modest-maemo-utils.h"
+#include "maemo/modest-hildon-includes.h"
 #endif /* MODEST_PLATFORM_MAEMO */
 
 #include "widgets/modest-ui-constants.h"
@@ -728,9 +729,9 @@ open_msg_cb (ModestMailOperation *mail_op,
        headers_action_mark_as_read (header, MODEST_WINDOW(parent_win), NULL);
 
        /* Get account */
-       account = modest_account_mgr_get_default_account (modest_runtime_get_account_mgr());
+       account = g_strdup (modest_window_get_active_account (MODEST_WINDOW (parent_win)));
        if (!account)
-               account =  g_strdup (modest_window_get_active_account (MODEST_WINDOW (parent_win)));
+               account = modest_account_mgr_get_default_account (modest_runtime_get_account_mgr());
        
        /* Gets folder type (OUTBOX headers will be opened in edit window */
        if (modest_tny_folder_is_local_folder (folder))
@@ -1344,8 +1345,11 @@ modest_ui_actions_on_sort (GtkAction *action,
                GtkWidget *header_view;
                header_view = modest_main_window_get_child_widget (MODEST_MAIN_WINDOW(window),
                                                                   MODEST_WIDGET_TYPE_HEADER_VIEW);
-               if (!header_view)
+               if (!header_view) {
+                       modest_platform_information_banner (NULL, NULL, _CS("ckdg_ib_nothing_to_sort"));
+
                        return;
+               }
 
                /* Show sorting dialog */
                modest_platform_run_sort_dialog (GTK_WINDOW (window), MODEST_SORT_HEADERS);     
@@ -2436,6 +2440,27 @@ modest_ui_actions_on_move_folder_to_trash_folder (GtkAction *action, ModestMainW
        delete_folder (main_window, TRUE);
 }
 
+
+static void
+show_error (GtkWidget *parent_widget, const gchar* text)
+{
+       hildon_banner_show_information(parent_widget, NULL, text);
+       
+#if 0
+       GtkDialog *dialog = GTK_DIALOG (hildon_note_new_information (parent_window, text)); */
+       /*
+         GtkDialog *dialog = GTK_DIALOG (gtk_message_dialog_new (parent_window,
+         (GtkDialogFlags)0,
+         GTK_MESSAGE_ERROR,
+         GTK_BUTTONS_OK,
+         text ));
+       */
+                
+       gtk_dialog_run (dialog);
+       gtk_widget_destroy (GTK_WIDGET (dialog));
+#endif
+}
+
 void
 modest_ui_actions_on_password_requested (TnyAccountStore *account_store, 
                                         const gchar* server_account_name,
@@ -2593,6 +2618,8 @@ modest_ui_actions_on_password_requested (TnyAccountStore *account_store,
                        *cancel   = FALSE;
                        
        } else {
+               show_error(GTK_WIDGET (main_window), _("mail_ib_login_cancelled"));
+               
                if (username)
                        *username = NULL;