+ g_object_unref (headers_list);
+}
+
+void
+modest_ui_actions_view_attachment (GtkAction *action,
+ ModestWindow *window)
+{
+ if (MODEST_IS_MSG_VIEW_WINDOW (window)) {
+ modest_msg_view_window_view_attachment (MODEST_MSG_VIEW_WINDOW (window), NULL);
+ } else {
+ /* not supported window for this action */
+ g_return_if_reached ();
+ }
+}
+
+void
+modest_ui_actions_save_attachments (GtkAction *action,
+ ModestWindow *window)
+{
+ if (MODEST_IS_MSG_VIEW_WINDOW (window)) {
+ modest_msg_view_window_save_attachments (MODEST_MSG_VIEW_WINDOW (window), NULL);
+ } else {
+ /* not supported window for this action */
+ g_return_if_reached ();
+ }
+}
+
+void
+modest_ui_actions_remove_attachments (GtkAction *action,
+ ModestWindow *window)
+{
+ if (MODEST_IS_MSG_VIEW_WINDOW (window)) {
+ modest_msg_view_window_remove_attachments (MODEST_MSG_VIEW_WINDOW (window), NULL);
+ } else {
+ /* not supported window for this action */
+ g_return_if_reached ();
+ }
+}
+
+void
+modest_ui_actions_on_settings (GtkAction *action,
+ ModestWindow *win)
+{
+ GtkWidget *dialog;
+
+ dialog = modest_platform_get_global_settings_dialog ();
+ gtk_window_set_transient_for (GTK_WINDOW (dialog), GTK_WINDOW (win));
+ gtk_widget_show (dialog);
+
+ gtk_dialog_run (GTK_DIALOG (dialog));
+
+ gtk_widget_destroy (dialog);
+}
+
+void
+modest_ui_actions_on_retrieve_msg_contents (GtkAction *action,
+ ModestWindow *window)
+{
+ ModestMailOperation *mail_op;
+ TnyList *headers;
+
+ /* Get headers */
+ headers = get_selected_headers (window);
+ if (!headers)
+ return;
+
+ /* Create mail operation */
+ mail_op = modest_mail_operation_new_with_error_handling (MODEST_MAIL_OPERATION_TYPE_RECEIVE,
+ G_OBJECT (window),
+ modest_ui_actions_get_msgs_full_error_handler,
+ NULL);
+ modest_mail_operation_queue_add (modest_runtime_get_mail_operation_queue (), mail_op);
+ modest_mail_operation_get_msgs_full (mail_op, headers, NULL, NULL, NULL);
+
+ /* Frees */
+ g_object_unref (headers);
+ g_object_unref (mail_op);
+}
+
+void
+modest_ui_actions_on_email_menu_activated (GtkAction *action,
+ ModestWindow *window)
+{
+ g_return_if_fail (MODEST_IS_WINDOW (window));
+
+ /* Update dimmed */
+ modest_window_check_dimming_rules (window);
+}
+
+void
+modest_ui_actions_on_edit_menu_activated (GtkAction *action,
+ ModestWindow *window)
+{
+ g_return_if_fail (MODEST_IS_WINDOW (window));
+
+ /* Update dimmed */
+ modest_window_check_dimming_rules (window);
+}
+
+void
+modest_ui_actions_on_toolbar_csm_menu_activated (GtkAction *action,
+ ModestWindow *window)
+{
+ g_return_if_fail (MODEST_IS_WINDOW (window));
+
+ /* Update dimmed */
+ modest_window_check_dimming_rules (window);
+}
+
+void
+modest_ui_actions_on_folder_view_csm_menu_activated (GtkAction *action,
+ ModestWindow *window)
+{
+ g_return_if_fail (MODEST_IS_WINDOW (window));
+
+ /* Update dimmed */
+ modest_window_check_dimming_rules (window);
+}
+
+void
+modest_ui_actions_on_header_view_csm_menu_activated (GtkAction *action,
+ ModestWindow *window)
+{
+ g_return_if_fail (MODEST_IS_WINDOW (window));
+
+ /* Update dimmed */
+ modest_window_check_dimming_rules (window);