commit 03ebc8f791eaa6734ad2004b908af00baad4aaf4
parent 14b243655db5f329306c6e764a05f2ff69c284d5
Author: Colin Leroy <colin@colino.net>
Date: Sat, 9 Nov 2019 22:45:17 +0100
Fix printing of empty pages when the selected part
is rendered with a plugin not implementing print.
Diffstat:
3 files changed, 14 insertions(+), 0 deletions(-)
diff --git a/src/messageview.c b/src/messageview.c
@@ -2181,6 +2181,10 @@ static void print_mimeview(MimeView *mimeview, gint sel_start, gint sel_end, gin
if (viewer && viewer->print) {
viewer->print(viewer);
return;
+ } else {
+ /* Force text rendering */
+ mimeview_show_part_as_text(mimeview,
+ mimeview_get_selected_part(mimeview));
}
}
if (sel_start != -1 && sel_end != -1) {
diff --git a/src/mimeview.c b/src/mimeview.c
@@ -1432,6 +1432,14 @@ static void update_signature_info(MimeView *mimeview, MimeInfo *selected)
noticeview_show(mimeview->siginfoview);
}
+void mimeview_show_part_as_text(MimeView *mimeview, MimeInfo *partinfo)
+{
+ cm_return_if_fail(mimeview != NULL);
+ cm_return_if_fail(partinfo != NULL);
+
+ mimeview_show_message_part(mimeview, partinfo);
+}
+
static void mimeview_selected(GtkTreeSelection *selection, MimeView *mimeview)
{
GtkTreeView *ctree = GTK_TREE_VIEW(mimeview->ctree);
diff --git a/src/mimeview.h b/src/mimeview.h
@@ -147,6 +147,8 @@ void mimeview_show_message (MimeView *mimeview,
const gchar *file);
gboolean mimeview_show_part (MimeView *mimeview,
MimeInfo *partinfo);
+void mimeview_show_part_as_text (MimeView *mimeview,
+ MimeInfo *partinfo);
void mimeview_destroy (MimeView *mimeview);
void mimeview_update (MimeView *mimeview);
void mimeview_clear (MimeView *mimeview);