Added "automatically display images" option.
This commit is contained in:
parent
15648d8569
commit
c6aabb3add
4 changed files with 43 additions and 1 deletions
|
@ -100,6 +100,7 @@ static void mimeview_drag_data_get (GtkWidget *widget,
|
|||
MimeView *mimeview);
|
||||
|
||||
static void mimeview_display_as_text (MimeView *mimeview);
|
||||
static void mimeview_show_image (MimeView *mimeview);
|
||||
static void mimeview_save_as (MimeView *mimeview);
|
||||
static void mimeview_launch (MimeView *mimeview);
|
||||
static void mimeview_open_with (MimeView *mimeview);
|
||||
|
@ -115,6 +116,7 @@ static GtkItemFactoryEntry mimeview_popup_entries[] =
|
|||
{N_("/_Open"), NULL, mimeview_launch, 0, NULL},
|
||||
{N_("/Open _with..."), NULL, mimeview_open_with, 0, NULL},
|
||||
{N_("/_Display as text"), NULL, mimeview_display_as_text, 0, NULL},
|
||||
{N_("/_Display image"), NULL, mimeview_show_image, 0, NULL},
|
||||
{N_("/_Save as..."), NULL, mimeview_save_as, 0, NULL}
|
||||
#if USE_GPGME
|
||||
,
|
||||
|
@ -544,7 +546,10 @@ static void mimeview_selected(GtkCTree *ctree, GtkCTreeNode *node, gint column,
|
|||
break;
|
||||
#if (HAVE_GDK_PIXBUF || HAVE_GDK_IMLIB)
|
||||
case MIME_IMAGE:
|
||||
if (prefs_common.display_img)
|
||||
mimeview_show_image_part(mimeview, partinfo);
|
||||
else
|
||||
textview_show_mime_part(mimeview->textview, partinfo);
|
||||
break;
|
||||
#endif
|
||||
default:
|
||||
|
@ -623,6 +628,12 @@ static gint mimeview_button_pressed(GtkWidget *widget, GdkEventButton *event,
|
|||
else
|
||||
menu_set_sensitive(mimeview->popupfactory,
|
||||
"/Open", TRUE);
|
||||
|
||||
#if (HAVE_GDK_PIXBUF || HAVE_GDK_IMLIB)
|
||||
if (partinfo && (partinfo->mime_type == MIME_IMAGE))
|
||||
menu_set_sensitive(mimeview->popupfactory,
|
||||
"/Display image", TRUE);
|
||||
#endif
|
||||
#if USE_GPGME
|
||||
menu_set_sensitive(mimeview->popupfactory,
|
||||
"/Check signature",
|
||||
|
@ -709,6 +720,11 @@ static gint mimeview_key_pressed(GtkWidget *widget, GdkEventKey *event,
|
|||
KEY_PRESS_EVENT_STOP();
|
||||
mimeview_display_as_text(mimeview);
|
||||
return TRUE;
|
||||
case GDK_i:
|
||||
BREAK_ON_MODIFIER_KEY();
|
||||
KEY_PRESS_EVENT_STOP();
|
||||
mimeview_show_image(mimeview);
|
||||
return TRUE;
|
||||
case GDK_l:
|
||||
BREAK_ON_MODIFIER_KEY();
|
||||
KEY_PRESS_EVENT_STOP();
|
||||
|
@ -772,6 +788,17 @@ static void mimeview_display_as_text(MimeView *mimeview)
|
|||
mimeview_show_message_part(mimeview, partinfo);
|
||||
}
|
||||
|
||||
static void mimeview_show_image(MimeView *mimeview)
|
||||
{
|
||||
MimeInfo *partinfo;
|
||||
|
||||
if (!mimeview->opened) return;
|
||||
|
||||
partinfo = gtk_ctree_node_get_row_data
|
||||
(GTK_CTREE(mimeview->ctree), mimeview->opened);
|
||||
mimeview_show_image_part(mimeview, partinfo);
|
||||
}
|
||||
|
||||
static void mimeview_save_as(MimeView *mimeview)
|
||||
{
|
||||
gchar *filename;
|
||||
|
|
|
@ -162,6 +162,7 @@ static struct Display {
|
|||
GtkWidget *entry_boldfont;
|
||||
|
||||
GtkWidget *chkbtn_folder_unread;
|
||||
GtkWidget *chkbtn_display_img;
|
||||
|
||||
GtkWidget *chkbtn_transhdr;
|
||||
|
||||
|
@ -463,6 +464,11 @@ static PrefParam param[] = {
|
|||
&display.chkbtn_folder_unread,
|
||||
prefs_set_data_from_toggle, prefs_set_toggle},
|
||||
|
||||
{"display_img", "TRUE",
|
||||
&prefs_common.display_img, P_BOOL,
|
||||
&display.chkbtn_display_img,
|
||||
prefs_set_data_from_toggle, prefs_set_toggle},
|
||||
|
||||
{"translate_header", "TRUE", &prefs_common.trans_hdr, P_BOOL,
|
||||
&display.chkbtn_transhdr,
|
||||
prefs_set_data_from_toggle, prefs_set_toggle},
|
||||
|
@ -2006,6 +2012,7 @@ static void prefs_display_create(void)
|
|||
GtkWidget *entry_textfont;
|
||||
GtkWidget *button_textfont;
|
||||
GtkWidget *chkbtn_folder_unread;
|
||||
GtkWidget *chkbtn_display_img;
|
||||
GtkWidget *chkbtn_transhdr;
|
||||
GtkWidget *frame_summary;
|
||||
GtkWidget *vbox2;
|
||||
|
@ -2124,6 +2131,9 @@ static void prefs_display_create(void)
|
|||
PACK_CHECK_BUTTON (vbox2, chkbtn_folder_unread,
|
||||
_("Display unread number next to folder name"));
|
||||
|
||||
PACK_CHECK_BUTTON (vbox2, chkbtn_display_img,
|
||||
_("Automatically display images"));
|
||||
|
||||
/* ---- Summary ---- */
|
||||
|
||||
PACK_FRAME(vbox1, frame_summary, _("Summary View"));
|
||||
|
@ -2186,6 +2196,7 @@ static void prefs_display_create(void)
|
|||
display.button_textfont = button_textfont;
|
||||
|
||||
display.chkbtn_folder_unread = chkbtn_folder_unread;
|
||||
display.chkbtn_display_img = chkbtn_display_img;
|
||||
display.chkbtn_transhdr = chkbtn_transhdr;
|
||||
|
||||
display.chkbtn_swapfrom = chkbtn_swapfrom;
|
||||
|
|
|
@ -111,6 +111,7 @@ struct _PrefsCommon
|
|||
gchar *boldfont;
|
||||
gchar *smallfont;
|
||||
gboolean display_folder_unread;
|
||||
gboolean display_img;
|
||||
ToolbarStyle toolbar_style;
|
||||
gboolean show_statusbar;
|
||||
gboolean trans_hdr;
|
||||
|
|
|
@ -526,6 +526,9 @@ void textview_show_mime_part(TextView *textview, MimeInfo *partinfo)
|
|||
TEXT_INSERT(_("To display this part as a text message, select "));
|
||||
TEXT_INSERT(_("`Display as text', or press `t' key.\n\n"));
|
||||
|
||||
TEXT_INSERT(_("To display this part as an image, select "));
|
||||
TEXT_INSERT(_("`Display image', or press `i' key.\n\n"));
|
||||
|
||||
TEXT_INSERT(_("To open this part with external program, select "));
|
||||
TEXT_INSERT(_("`Open' or `Open with...', "));
|
||||
TEXT_INSERT(_("or double-click, or click the center button, "));
|
||||
|
|
Loading…
Reference in a new issue