static GdkBitmap *clipkeyxpmmask;
static GdkPixmap *gpgsignedxpm;
static GdkBitmap *gpgsignedxpmmask;
+static GdkPixmap *clipgpgsignedxpm;
+static GdkBitmap *clipgpgsignedxpmmask;
static void summary_free_msginfo_func (GtkCTree *ctree,
GtkCTreeNode *node,
&keyxpm, &keyxpmmask);
stock_pixmap_gdk(summaryview->ctree, STOCK_PIXMAP_GPG_SIGNED,
&gpgsignedxpm, &gpgsignedxpmmask);
+ stock_pixmap_gdk(summaryview->ctree, STOCK_PIXMAP_CLIP_GPG_SIGNED,
+ &clipgpgsignedxpm, &clipgpgsignedxpmmask);
if (!bold_style) {
bold_style = gtk_style_copy
item->sort_type == SORT_DESCENDING
? 0 : GTK_CLIST(ctree)->rows - 1);
}
- if (prefs_common.open_unread_on_enter ||
- prefs_common.always_show_msg) {
+ if (prefs_common.open_unread_on_enter) {
summary_unlock(summaryview);
summary_select_node(summaryview, node,
messageview_is_visible(summaryview->messageview),
gtkut_ctree_node_move_if_on_the_edge(ctree, row);
}
- if (val == 0) {
+ if (val == 0 && MSG_IS_UNREAD(msginfo->flags)) {
if (prefs_common.mark_as_read_delay) {
MarkAsReadData *data = g_new0(MarkAsReadData, 1);
data->summaryview = summaryview;
gtk_ctree_node_set_text(ctree, row, col_pos[S_COL_LOCKED], NULL);
}
- if (MSG_IS_SIGNED(flags)) {
+ if (MSG_IS_WITH_ATTACHMENT(flags) && MSG_IS_SIGNED(flags)) {
+ gtk_ctree_node_set_pixmap(ctree, row, col_pos[S_COL_MIME],
+ clipgpgsignedxpm, clipgpgsignedxpmmask);
+ } else if (MSG_IS_SIGNED(flags)) {
gtk_ctree_node_set_pixmap(ctree, row, col_pos[S_COL_MIME],
gpgsignedxpm, gpgsignedxpmmask);
} else if (MSG_IS_WITH_ATTACHMENT(flags) && MSG_IS_ENCRYPTED(flags)) {
g_return_if_fail(to_folder != NULL);
msginfo = gtk_ctree_node_get_row_data(ctree, row);
+ if (MSG_IS_LOCKED(msginfo->flags))
+ return;
+
procmsg_msginfo_set_to_folder(msginfo, to_folder);
if (MSG_IS_DELETED(msginfo->flags))
summaryview->deleted--;
gint column, SummaryView *summaryview)
{
MsgInfo *msginfo;
+ gboolean marked_unread = FALSE;
- summary_status_show(summaryview);
+ if (column == -1 && GTK_CLIST(ctree)->selection
+ && GTK_CLIST(ctree)->selection->next) {
+ /* multiple selection */
+ summary_status_show(summaryview);
+ }
if (GTK_CLIST(ctree)->selection &&
GTK_CLIST(ctree)->selection->next) {
summary_status_show(summaryview);
} else if (!MSG_IS_REPLIED(msginfo->flags) &&
!MSG_IS_FORWARDED(msginfo->flags)) {
- summary_mark_row_as_unread(summaryview, row);
- summary_status_show(summaryview);
+ marked_unread = TRUE;
} else if (MSG_IS_REPLIED(msginfo->flags)) {
summary_find_answers(summaryview, msginfo);
return;
summaryview->display_msg = FALSE;
if (summaryview->displayed != row) {
summary_display_msg(summaryview, row);
+ if (marked_unread) {
+ summary_mark_row_as_unread(summaryview, row);
+ summary_status_show(summaryview);
+ }
return;
}
}
+
+ if (marked_unread) {
+ summary_mark_row_as_unread(summaryview, row);
+ summary_status_show(summaryview);
+ }
summary_set_menu_sensitive(summaryview);
toolbar_main_set_sensitive(summaryview->mainwin);
stock_pixmap_gdk(ctree, STOCK_PIXMAP_CLIP_KEY, &clipkeyxpm, &clipkeyxpmmask);
stock_pixmap_gdk(ctree, STOCK_PIXMAP_KEY, &keyxpm, &keyxpmmask);
stock_pixmap_gdk(ctree, STOCK_PIXMAP_GPG_SIGNED, &gpgsignedxpm, &gpgsignedxpmmask);
+ stock_pixmap_gdk(ctree, STOCK_PIXMAP_CLIP_GPG_SIGNED, &clipgpgsignedxpm, &clipgpgsignedxpmmask);
pixmap = stock_pixmap_widget(summaryview->hbox, STOCK_PIXMAP_DIR_OPEN);
gtk_box_pack_start(GTK_BOX(summaryview->hbox), pixmap, FALSE, FALSE, 4);