if (prefs_common.enable_color) {
/* grab the quote colors, converting from an int to a GdkColor */
- gtkut_convert_int_to_gdk_color(prefs_common.quote_level1_col,
+ gtkut_convert_int_to_gdk_color(prefs_common.color[COL_QUOTE_LEVEL1],
"e_colors[0]);
- gtkut_convert_int_to_gdk_color(prefs_common.quote_level2_col,
+ gtkut_convert_int_to_gdk_color(prefs_common.color[COL_QUOTE_LEVEL2],
"e_colors[1]);
- gtkut_convert_int_to_gdk_color(prefs_common.quote_level3_col,
+ gtkut_convert_int_to_gdk_color(prefs_common.color[COL_QUOTE_LEVEL3],
"e_colors[2]);
- gtkut_convert_int_to_gdk_color(prefs_common.uri_col,
+ gtkut_convert_int_to_gdk_color(prefs_common.color[COL_URI],
&uri_color);
- gtkut_convert_int_to_gdk_color(prefs_common.signature_col,
+ gtkut_convert_int_to_gdk_color(prefs_common.color[COL_SIGNATURE],
&signature_color);
- gtkut_convert_int_to_gdk_color(prefs_common.emphasis_col,
+ gtkut_convert_int_to_gdk_color(prefs_common.color[COL_EMPHASIS],
&emphasis_color);
- gtkut_convert_int_to_gdk_color(prefs_common.diff_added_color,
+ gtkut_convert_int_to_gdk_color(prefs_common.color[COL_DIFF_ADDED],
&diff_added_color);
- gtkut_convert_int_to_gdk_color(prefs_common.diff_deleted_color,
+ gtkut_convert_int_to_gdk_color(prefs_common.color[COL_DIFF_DELETED],
&diff_deleted_color);
- gtkut_convert_int_to_gdk_color(prefs_common.diff_hunk_color,
+ gtkut_convert_int_to_gdk_color(prefs_common.color[COL_DIFF_HUNK],
&diff_hunk_color);
}
if (prefs_common.enable_color && prefs_common.enable_bgcolor) {
- gtkut_convert_int_to_gdk_color(prefs_common.quote_level1_bgcol,
+ gtkut_convert_int_to_gdk_color(prefs_common.color[COL_QUOTE_LEVEL1_BG],
"e_bgcolors[0]);
- gtkut_convert_int_to_gdk_color(prefs_common.quote_level2_bgcol,
+ gtkut_convert_int_to_gdk_color(prefs_common.color[COL_QUOTE_LEVEL2_BG],
"e_bgcolors[1]);
- gtkut_convert_int_to_gdk_color(prefs_common.quote_level3_bgcol,
+ gtkut_convert_int_to_gdk_color(prefs_common.color[COL_QUOTE_LEVEL3_BG],
"e_bgcolors[2]);
CHANGE_TAG_COLOR("quote0", "e_colors[0], "e_bgcolors[0]);
CHANGE_TAG_COLOR("quote1", "e_colors[1], "e_bgcolors[1]);
CHANGE_TAG_COLOR("diff-del-file", &diff_deleted_color, NULL);
CHANGE_TAG_COLOR("diff-hunk", &diff_hunk_color, NULL);
- gtkut_convert_int_to_gdk_color(prefs_common.tags_bgcolor,
+ gtkut_convert_int_to_gdk_color(prefs_common.color[COL_TAGS_BG],
&tags_bgcolor);
- gtkut_convert_int_to_gdk_color(prefs_common.tags_color,
+ gtkut_convert_int_to_gdk_color(prefs_common.color[COL_TAGS],
&tags_color);
}
#undef CHANGE_TAG_COLOR
textview->is_in_signature = FALSE;
textview->is_diff = FALSE;
+ textview->is_attachment = FALSE;;
procmime_decode_content(mimeinfo);
|| !g_ascii_strcasecmp(mimeinfo->subtype, "x-diff"))
textview->is_diff = TRUE;
+ /* Displayed part is an attachment, but not an attached
+ * e-mail. Set a flag, so that elsewhere in the code we
+ * know not to try making collapsible quotes in it. */
+ if (mimeinfo->disposition == DISPOSITIONTYPE_ATTACHMENT &&
+ mimeinfo->type != MIMETYPE_MESSAGE)
+ textview->is_attachment = TRUE;
+
if (mimeinfo->content == MIMECONTENT_MEM)
tmpfp = str_open_as_stream(mimeinfo->data.mem);
else
>, foo>, _> ... ok, <foo>, foo bar>, foo-> ... ng
Up to 3 levels of quotations are detected, and each
level is colored using a different color. */
- if (prefs_common.enable_color
+ if (prefs_common.enable_color
+ && !textview->is_attachment
&& line_has_quote_char(buf, prefs_common.quote_chars)) {
real_quotelevel = get_quote_level(buf, prefs_common.quote_chars);
quotelevel = real_quotelevel;
}
}
- if (real_quotelevel > -1 && do_quote_folding) {
+ if (!textview->is_attachment && real_quotelevel > -1 && do_quote_folding) {
if (!g_utf8_validate(buf, -1, NULL)) {
gchar *utf8buf = NULL;
utf8buf = g_malloc(BUFFSIZE);