get attachment names
[claws.git] / src / mimeview.c
index 428621a95e1548e97e61f3d83a921e34a8bdb4ec..d196550ec1e37ec697454d2a4f2d84f51a71ef81 100644 (file)
@@ -627,32 +627,29 @@ static void update_signature_noticeview(MimeView *mimeview, MimeInfo *mimeinfo)
                
                switch (privacy_mimeinfo_get_sig_status(mimeinfo)) {
                case SIGNATURE_UNCHECKED:
-                       text = _("This part of the message has been signed");
                        button_text = _("Check");
                        func = check_signature_cb;
-                       icon = STOCK_PIXMAP_MIME_GPG_SIGNED;
+                       icon = STOCK_PIXMAP_PRIVACY_SIGNED;
                        break;
                case SIGNATURE_OK:
-                       text = _("Signature is ok");
-                       icon = STOCK_PIXMAP_MIME_GPG_PASSED;
+                       icon = STOCK_PIXMAP_PRIVACY_PASSED;
                        break;
                case SIGNATURE_WARN:
-                       text = _("Signature is ok");
-                       icon = STOCK_PIXMAP_NOTICE_WARN;
+                       icon = STOCK_PIXMAP_PRIVACY_WARN;
                        break;
                case SIGNATURE_INVALID:
-                       text = _("The signature of this part is invalid");
-                       icon = STOCK_PIXMAP_MIME_GPG_FAILED;
+                       icon = STOCK_PIXMAP_PRIVACY_FAILED;
                        break;
                case SIGNATURE_CHECK_FAILED:
-                       text = _("Checking the signature failed");
                        button_text = _("Check again");
                        func = check_signature_cb;
-                       icon = STOCK_PIXMAP_MIME_GPG_UNKNOWN;
+                       icon = STOCK_PIXMAP_PRIVACY_UNKNOWN;
                default:
                        break;
                }
+               text = privacy_mimeinfo_sig_info_short(mimeinfo);
                noticeview_set_text(mimeview->siginfoview, text);
+               g_free(text);
                noticeview_set_button_text(mimeview->siginfoview, button_text);
                noticeview_set_button_press_callback(
                        mimeview->siginfoview,
@@ -1007,11 +1004,15 @@ static void mimeview_save_as(MimeView *mimeview)
 {
        gchar *filename;
        gchar *defname = NULL;
+       MsgInfo *msginfo;
        MimeInfo *partinfo;
        gchar *res;
+       const gchar *partname = NULL;
 
        if (!mimeview->opened) return;
        if (!mimeview->file) return;
+       if (!mimeview->messageview->msginfo) return;
+       msginfo = mimeview->messageview->msginfo;
 
        partinfo = mimeview_get_selected_part(mimeview);
        if (!partinfo) { 
@@ -1022,14 +1023,15 @@ static void mimeview_save_as(MimeView *mimeview)
                                    "pop_partinfo", NULL);
        }                        
        g_return_if_fail(partinfo != NULL);
-
-       if (partinfo->filename)
-               defname = partinfo->filename;
-       else if (partinfo->name) {
-               Xstrdup_a(defname, partinfo->name, return);
+       
+       if (partname = procmime_mimeinfo_get_parameter(partinfo, "name")) {
+               Xstrdup_a(defname, partname, return);
+               subst_for_filename(defname);
+       } else if (msginfo->subject) {
+               Xstrdup_a(defname, msginfo->subject, return);
                subst_for_filename(defname);
        }
-
+       
        filename = filesel_select_file(_("Save as"), defname);
        if (!filename) return;
        if (is_file_exist(filename)) {
@@ -1386,10 +1388,7 @@ static void icon_list_append_icon (MimeView *mimeview, MimeInfo *mimeinfo)
                stockp = STOCK_PIXMAP_MIME_MESSAGE;
                break;
        case MIMETYPE_APPLICATION:
-               if (mimeinfo->subtype && !g_strcasecmp(mimeinfo->subtype, "octet-stream"))
-                       stockp = STOCK_PIXMAP_MIME_APPLICATION_OCTET_STREAM;
-               else
-                       stockp = STOCK_PIXMAP_MIME_APPLICATION;
+               stockp = STOCK_PIXMAP_MIME_APPLICATION;
                break;
        case MIMETYPE_IMAGE:
                stockp = STOCK_PIXMAP_MIME_IMAGE;