aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKenichi Handa2004-01-13 01:40:47 +0000
committerKenichi Handa2004-01-13 01:40:47 +0000
commitf46a4dc1a5fe08ae130fb32a108601508e9f1972 (patch)
treee90d0567bb3ca61531a802bf3c6b78b150835fa4 /src
parent6bad800726b20e82544cf70e521ef56604bafbc3 (diff)
downloademacs-f46a4dc1a5fe08ae130fb32a108601508e9f1972.tar.gz
emacs-f46a4dc1a5fe08ae130fb32a108601508e9f1972.zip
(face_before_or_after_it_pos): Call FACE_FOR_CHAR with
POS and OBJECT args. (get_next_display_element): Likewise. (append_space): Likewise. (extend_face_to_end_of_line): Likewise. (get_char_face_and_encoding): Likewise. (BUILD_COMPOSITE_GLYPH_STRING): Likewise. (x_produce_glyphs): Likewise.
Diffstat (limited to 'src')
-rw-r--r--src/xdisp.c24
1 files changed, 14 insertions, 10 deletions
diff --git a/src/xdisp.c b/src/xdisp.c
index d772fa28219..6af5d9e3a5e 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -2958,7 +2958,7 @@ face_before_or_after_it_pos (it, before_p)
2958 struct face *face = FACE_FROM_ID (it->f, face_id); 2958 struct face *face = FACE_FROM_ID (it->f, face_id);
2959 2959
2960 c = string_char_and_length (p, rest, &len); 2960 c = string_char_and_length (p, rest, &len);
2961 face_id = FACE_FOR_CHAR (it->f, face, c); 2961 face_id = FACE_FOR_CHAR (it->f, face, c, CHARPOS (pos), it->string);
2962 } 2962 }
2963 } 2963 }
2964 else 2964 else
@@ -2997,7 +2997,7 @@ face_before_or_after_it_pos (it, before_p)
2997 { 2997 {
2998 int c = FETCH_MULTIBYTE_CHAR (BYTEPOS (pos)); 2998 int c = FETCH_MULTIBYTE_CHAR (BYTEPOS (pos));
2999 struct face *face = FACE_FROM_ID (it->f, face_id); 2999 struct face *face = FACE_FROM_ID (it->f, face_id);
3000 face_id = FACE_FOR_CHAR (it->f, face, c); 3000 face_id = FACE_FOR_CHAR (it->f, face, c, CHARPOS (pos), Qnil);
3001 } 3001 }
3002 } 3002 }
3003 3003
@@ -4925,7 +4925,10 @@ get_next_display_element (it)
4925 && FRAME_WINDOW_P (it->f)) 4925 && FRAME_WINDOW_P (it->f))
4926 { 4926 {
4927 struct face *face = FACE_FROM_ID (it->f, it->face_id); 4927 struct face *face = FACE_FROM_ID (it->f, it->face_id);
4928 it->face_id = FACE_FOR_CHAR (it->f, face, it->c); 4928 int pos = (STRINGP (it->string)
4929 ? IT_STRING_CHARPOS (*it) : IT_CHARPOS (*it));
4930
4931 it->face_id = FACE_FOR_CHAR (it->f, face, it->c, pos, it->string);
4929 } 4932 }
4930 } 4933 }
4931 4934
@@ -14112,7 +14115,7 @@ append_space (it, default_face_p)
14112 else if (it->face_before_selective_p) 14115 else if (it->face_before_selective_p)
14113 it->face_id = it->saved_face_id; 14116 it->face_id = it->saved_face_id;
14114 face = FACE_FROM_ID (it->f, it->face_id); 14117 face = FACE_FROM_ID (it->f, it->face_id);
14115 it->face_id = FACE_FOR_CHAR (it->f, face, 0); 14118 it->face_id = FACE_FOR_CHAR (it->f, face, 0, -1, Qnil);
14116 14119
14117 PRODUCE_GLYPHS (it); 14120 PRODUCE_GLYPHS (it);
14118 14121
@@ -14171,7 +14174,7 @@ extend_face_to_end_of_line (it)
14171 that the character will always be single byte in unibyte text. */ 14174 that the character will always be single byte in unibyte text. */
14172 if (!ASCII_CHAR_P (it->c)) 14175 if (!ASCII_CHAR_P (it->c))
14173 { 14176 {
14174 it->face_id = FACE_FOR_CHAR (f, face, 0); 14177 it->face_id = FACE_FOR_CHAR (f, face, 0, -1, Qnil);
14175 } 14178 }
14176 14179
14177 if (FRAME_WINDOW_P (f)) 14180 if (FRAME_WINDOW_P (f))
@@ -17052,7 +17055,7 @@ get_char_face_and_encoding (f, c, face_id, char2b, multibyte_p, display_p)
17052 /* Unibyte case. We don't have to encode, but we have to make 17055 /* Unibyte case. We don't have to encode, but we have to make
17053 sure to use a face suitable for unibyte. */ 17056 sure to use a face suitable for unibyte. */
17054 STORE_XCHAR2B (char2b, 0, c); 17057 STORE_XCHAR2B (char2b, 0, c);
17055 face_id = FACE_FOR_CHAR (f, face, c); 17058 face_id = FACE_FOR_CHAR (f, face, c, -1, Qnil);
17056 face = FACE_FROM_ID (f, face_id); 17059 face = FACE_FROM_ID (f, face_id);
17057 } 17060 }
17058 else if (c < 128 && face_id < BASIC_FACE_ID_SENTINEL) 17061 else if (c < 128 && face_id < BASIC_FACE_ID_SENTINEL)
@@ -17274,7 +17277,7 @@ compute_overhangs_and_x (s, x, backward_p)
17274 for (n = 0; n < glyph_len; n++) \ 17277 for (n = 0; n < glyph_len; n++) \
17275 { \ 17278 { \
17276 int c = COMPOSITION_GLYPH (cmp, n); \ 17279 int c = COMPOSITION_GLYPH (cmp, n); \
17277 int this_face_id = FACE_FOR_CHAR (f, base_face, c); \ 17280 int this_face_id = FACE_FOR_CHAR (f, base_face, c, -1, Qnil); \
17278 faces[n] = FACE_FROM_ID (f, this_face_id); \ 17281 faces[n] = FACE_FROM_ID (f, this_face_id); \
17279 get_char_face_and_encoding (f, c, this_face_id, \ 17282 get_char_face_and_encoding (f, c, this_face_id, \
17280 char2b + n, 1, 1); \ 17283 char2b + n, 1, 1); \
@@ -17922,7 +17925,8 @@ x_produce_glyphs (it)
17922 if (! SINGLE_BYTE_CHAR_P (it->c)) 17925 if (! SINGLE_BYTE_CHAR_P (it->c))
17923 { 17926 {
17924 it->multibyte_p = 1; 17927 it->multibyte_p = 1;
17925 it->face_id = FACE_FOR_CHAR (it->f, face, it->char_to_display); 17928 it->face_id = FACE_FOR_CHAR (it->f, face, it->char_to_display,
17929 -1, Qnil);
17926 face = FACE_FROM_ID (it->f, it->face_id); 17930 face = FACE_FROM_ID (it->f, it->face_id);
17927 } 17931 }
17928 } 17932 }
@@ -18158,7 +18162,7 @@ x_produce_glyphs (it)
18158 } 18162 }
18159 18163
18160 /* Get face and font to use. Encode IT->char_to_display. */ 18164 /* Get face and font to use. Encode IT->char_to_display. */
18161 it->face_id = FACE_FOR_CHAR (it->f, face, it->char_to_display); 18165 it->face_id = FACE_FOR_CHAR (it->f, face, it->char_to_display, -1, Qnil);
18162 face = FACE_FROM_ID (it->f, it->face_id); 18166 face = FACE_FROM_ID (it->f, it->face_id);
18163 get_char_face_and_encoding (it->f, it->char_to_display, it->face_id, 18167 get_char_face_and_encoding (it->f, it->char_to_display, it->face_id,
18164 &char2b, it->multibyte_p, 0); 18168 &char2b, it->multibyte_p, 0);
@@ -18246,7 +18250,7 @@ x_produce_glyphs (it)
18246 { 18250 {
18247 int left, right, btm, top; 18251 int left, right, btm, top;
18248 int ch = COMPOSITION_GLYPH (cmp, i); 18252 int ch = COMPOSITION_GLYPH (cmp, i);
18249 int face_id = FACE_FOR_CHAR (it->f, face, ch); 18253 int face_id = FACE_FOR_CHAR (it->f, face, ch, -1, Qnil);
18250 18254
18251 face = FACE_FROM_ID (it->f, face_id); 18255 face = FACE_FROM_ID (it->f, face_id);
18252 get_char_face_and_encoding (it->f, ch, face->id, 18256 get_char_face_and_encoding (it->f, ch, face->id,