gchar *str[N_MIMEVIEW_COLS];
if (partinfo->type != MIMETYPE_UNKNOWN && partinfo->subtype) {
- g_snprintf(content_type, 64, "%s/%s", procmime_get_type_str(partinfo->type), partinfo->subtype);
+ g_snprintf(content_type, 64, "%s/%s", procmime_get_media_type_str(partinfo->type), partinfo->subtype);
} else {
g_snprintf(content_type, 64, "UNKNOWN");
}
MimeViewer *viewer = NULL;
if ((partinfo->type == MIMETYPE_APPLICATION) &&
- (!g_strcasecmp(partinfo->subtype, "octet-stream"))) {
+ (!g_ascii_strcasecmp(partinfo->subtype, "octet-stream"))) {
const gchar *filename;
filename = procmime_mimeinfo_get_parameter(partinfo, "filename");
return viewer;
}
-static gboolean mimeview_show_part(MimeView *mimeview, MimeInfo *partinfo)
+gboolean mimeview_show_part(MimeView *mimeview, MimeInfo *partinfo)
{
MimeViewer *viewer;
switch (type) {
case MIMEVIEW_TEXT:
- gtk_notebook_set_page(GTK_NOTEBOOK(mimeview->mime_notebook),
+ gtk_notebook_set_current_page(GTK_NOTEBOOK(mimeview->mime_notebook),
gtk_notebook_page_num(GTK_NOTEBOOK(mimeview->mime_notebook),
GTK_WIDGET_PTR(textview)));
break;
case MIMEVIEW_VIEWER:
- gtk_notebook_set_page(GTK_NOTEBOOK(mimeview->mime_notebook),
+ gtk_notebook_set_current_page(GTK_NOTEBOOK(mimeview->mime_notebook),
gtk_notebook_page_num(GTK_NOTEBOOK(mimeview->mime_notebook),
GTK_WIDGET(mimeview->mimeviewer->get_widget(mimeview->mimeviewer))));
break;
noticeview_set_button_text(mimeview->siginfoview, button_text);
noticeview_set_button_press_callback(
mimeview->siginfoview,
- GTK_SIGNAL_FUNC(func),
+ G_CALLBACK(func),
(gpointer) mimeview);
noticeview_set_icon(mimeview->siginfoview, icon);
}
"/Display as text", TRUE);
if (partinfo &&
partinfo->type == MIMETYPE_APPLICATION &&
- !g_strcasecmp(partinfo->subtype, "octet-stream"))
+ !g_ascii_strcasecmp(partinfo->subtype, "octet-stream"))
menu_set_sensitive(mimeview->popupfactory,
"/Open", FALSE);
else
alertpanel_error
(_("Can't save the part of multipart message."));
- uriname = g_strconcat("file:/", filename, NULL);
+ uriname = g_strconcat("file://", filename, NULL);
gtk_selection_data_set(selection_data, selection_data->target, 8,
uriname, strlen(uriname));
{
gchar *dir;
- dir= g_dirname(filename);
+ dir= g_path_get_dirname(filename);
if (!is_dir_exist(dir))
make_dir_hier(dir);
g_free(dir);
res = g_strdup_printf(_("Overwrite existing file '%s'?"),
filename);
- aval = alertpanel(_("Overwrite"), res, _("OK"),
- _("Cancel"), NULL);
+ aval = alertpanel(_("Overwrite"), res, GTK_STOCK_OK,
+ GTK_STOCK_CANCEL, NULL);
g_free(res);
if (G_ALERTDEFAULT != aval) return FALSE;
}
startdir = g_strconcat(prefs_common.attach_save_dir,
G_DIR_SEPARATOR_S, NULL);
- dirname = filesel_select_file_open(_("Select destination folder"), startdir);
+ dirname = filesel_select_file_open_folder(_("Select destination folder"), startdir);
if (!dirname) {
if (startdir) g_free(startdir);
return;
if (dirname[strlen(dirname)-1] == G_DIR_SEPARATOR)
dirname[strlen(dirname)-1] = '\0';
+ /* Skip the first part, that is sometimes DISPOSITIONTYPE_UNKNOWN */
+ if (partinfo && partinfo->type == MIMETYPE_MESSAGE)
+ partinfo = procmime_mimeinfo_next(partinfo);
+ if (partinfo && partinfo->type == MIMETYPE_MULTIPART) {
+ partinfo = procmime_mimeinfo_next(partinfo);
+ if (partinfo && partinfo->type == MIMETYPE_TEXT)
+ partinfo = procmime_mimeinfo_next(partinfo);
+ }
+
while (partinfo != NULL) {
if (partinfo->type != MIMETYPE_MESSAGE &&
partinfo->type != MIMETYPE_MULTIPART &&
static void mimeview_save_as(MimeView *mimeview)
{
gchar *filename;
- gchar *defname = NULL;
gchar *filepath = NULL;
gchar *filedir = NULL;
MimeInfo *partinfo;
}
g_return_if_fail(partinfo != NULL);
- if ((partname = get_part_name(partinfo)) != NULL) {
- Xstrdup_a(defname, partname, return);
- subst_for_shellsafe_filename(defname);
+ if ((partname = get_part_name(partinfo)) == NULL) {
+ return;
}
if (prefs_common.attach_save_dir)
filepath = g_strconcat(prefs_common.attach_save_dir,
- G_DIR_SEPARATOR_S, defname, NULL);
+ G_DIR_SEPARATOR_S, partname, NULL);
else
- filepath = g_strdup(defname);
+ filepath = g_strdup(partname);
filename = filesel_select_file_save(_("Save as"), filepath);
if (!filename) {
mimeview_write_part(filename, partinfo);
- filedir = g_dirname(filename);
+ filedir = g_path_get_dirname(filename);
if (filedir && strcmp(filedir, ".")) {
if (prefs_common.attach_save_dir)
g_free(prefs_common.attach_save_dir);
cmd = cmdline;
def_cmd = NULL;
} else if (MIMETYPE_APPLICATION == partinfo->type &&
- !g_strcasecmp(partinfo->subtype, "octet-stream")) {
+ !g_ascii_strcasecmp(partinfo->subtype, "octet-stream")) {
return;
} else if (MIMETYPE_IMAGE == partinfo->type) {
cmd = prefs_common.mime_image_viewer;
switch (mimeinfo->type) {
case MIMETYPE_TEXT:
- if (mimeinfo->subtype && !g_strcasecmp(mimeinfo->subtype, "html"))
+ if (mimeinfo->subtype && !g_ascii_strcasecmp(mimeinfo->subtype, "html"))
stockp = STOCK_PIXMAP_MIME_TEXT_HTML;
- else if (mimeinfo->subtype && !g_strcasecmp(mimeinfo->subtype, "enriched"))
+ else if (mimeinfo->subtype && !g_ascii_strcasecmp(mimeinfo->subtype, "enriched"))
stockp = STOCK_PIXMAP_MIME_TEXT_ENRICHED;
else
stockp = STOCK_PIXMAP_MIME_TEXT_PLAIN;