#include <modest-tny-folder.h>
#include <modest-text-utils.h>
#include <modest-account-mgr-helpers.h>
-#include "modest-progress-bar-widget.h"
+#include "modest-progress-bar.h"
#include "modest-defs.h"
#include "modest-hildon-includes.h"
#include "modest-ui-dimming-manager.h"
/* If the message was not obtained from a treemodel,
* for instance if it was opened directly by the search UI:
*/
- if (priv->header_model == NULL || priv->row_reference == NULL) {
+ if (priv->header_model == NULL ||
+ priv->row_reference == NULL ||
+ !gtk_tree_row_reference_valid (priv->row_reference)) {
msg = modest_msg_view_window_get_message (self);
if (msg) {
header = tny_msg_get_header (msg);
}
/* Get iter of the currently selected message in the header view: */
- /* TODO: Why not just give this window a ref of the TnyHeader or TnyMessage,
- * instead of sometimes retrieving it from the header view?
- * Then we wouldn't be dependent on the message actually still being selected
- * in the header view. murrayc. */
- if (!gtk_tree_row_reference_valid (priv->row_reference))
- return NULL;
path = gtk_tree_row_reference_get_path (priv->row_reference);
g_return_val_if_fail (path != NULL, NULL);
gtk_tree_model_get_iter (priv->header_model,
folder = tny_msg_get_folder (msg);
if (folder) {
- folder_type = tny_folder_get_folder_type (folder);
+ folder_type = modest_tny_folder_guess_folder_type (folder);
g_object_unref (folder);
}
g_object_unref (msg);
toolbar_resize (MODEST_MSG_VIEW_WINDOW (self));
/* Add ProgressBar (Transfer toolbar) */
- priv->progress_bar = modest_progress_bar_widget_new ();
+ priv->progress_bar = modest_progress_bar_new ();
gtk_widget_set_no_show_all (priv->progress_bar, TRUE);
placeholder = gtk_ui_manager_get_widget (parent_priv->ui_manager, "/ToolBar/ProgressbarView");
insert_index = gtk_toolbar_get_item_index(GTK_TOOLBAR (parent_priv->toolbar), GTK_TOOL_ITEM(placeholder));
info->pairs = NULL;
if (with_struct) {
gtk_widget_destroy (info->banner);
- g_object_unref (info->banner);
g_slice_free (SaveMimePartInfo, info);
}
}
} else {
GtkWidget *banner = hildon_banner_show_animation (NULL, NULL,
_CS("sfil_ib_saving"));
- info->banner = g_object_ref (banner);
+ info->banner = banner;
g_thread_create ((GThreadFunc)save_mime_part_to_file, info, FALSE, NULL);
- g_object_unref (banner);
}
}
while (!tny_iterator_is_done (iter)) {
TnyMimePart *mime_part = (TnyMimePart *) tny_iterator_get_current (iter);
- tny_iterator_next (iter);
- if (tny_mime_part_is_attachment (mime_part)) {
+ if ((tny_mime_part_is_attachment (mime_part)) &&
+ (tny_mime_part_get_filename (mime_part) != NULL)) {
SaveMimePartPair *pair;
-
- if ((!tny_iterator_is_done (iter)) &&
- (tny_mime_part_get_filename (mime_part) == NULL)) {
- g_object_unref (mime_part);
- continue;
- }
pair = g_slice_new0 (SaveMimePartPair);
- if (tny_iterator_is_done (iter)) {
- pair->filename = g_strdup (chooser_uri);
- } else {
+ if (save_multiple_str) {
pair->filename =
g_build_filename (chooser_uri,
tny_mime_part_get_filename (mime_part), NULL);
+ } else {
+ pair->filename = g_strdup (chooser_uri);
}
pair->part = mime_part;
files_to_save = g_list_prepend (files_to_save, pair);
}
+ tny_iterator_next (iter);
}
g_object_unref (iter);
}