18269 |
return x_reached; |
return x_reached; |
18270 |
} |
} |
18271 |
|
|
18272 |
|
/* Expand row matrix if too narrow. Don't expand if area |
18273 |
|
is not present. */ |
18274 |
|
|
18275 |
|
#define IT_EXPAND_MATRIX_WIDTH(it, area) \ |
18276 |
|
{ \ |
18277 |
|
if (!fonts_changed_p \ |
18278 |
|
&& (it->glyph_row->glyphs[area] \ |
18279 |
|
< it->glyph_row->glyphs[area + 1])) \ |
18280 |
|
{ \ |
18281 |
|
it->w->ncols_scale_factor++; \ |
18282 |
|
fonts_changed_p = 1; \ |
18283 |
|
} \ |
18284 |
|
} |
18285 |
|
|
18286 |
/* Store one glyph for IT->char_to_display in IT->glyph_row. |
/* Store one glyph for IT->char_to_display in IT->glyph_row. |
18287 |
Called from x_produce_glyphs when IT->glyph_row is non-null. */ |
Called from x_produce_glyphs when IT->glyph_row is non-null. */ |
18319 |
glyph->font_type = FONT_TYPE_UNKNOWN; |
glyph->font_type = FONT_TYPE_UNKNOWN; |
18320 |
++it->glyph_row->used[area]; |
++it->glyph_row->used[area]; |
18321 |
} |
} |
18322 |
else if (!fonts_changed_p) |
else |
18323 |
{ |
IT_EXPAND_MATRIX_WIDTH (it, area); |
|
it->w->ncols_scale_factor++; |
|
|
fonts_changed_p = 1; |
|
|
} |
|
18324 |
} |
} |
18325 |
|
|
18326 |
/* Store one glyph for the composition IT->cmp_id in IT->glyph_row. |
/* Store one glyph for the composition IT->cmp_id in IT->glyph_row. |
18358 |
glyph->font_type = FONT_TYPE_UNKNOWN; |
glyph->font_type = FONT_TYPE_UNKNOWN; |
18359 |
++it->glyph_row->used[area]; |
++it->glyph_row->used[area]; |
18360 |
} |
} |
18361 |
else if (!fonts_changed_p) |
else |
18362 |
{ |
IT_EXPAND_MATRIX_WIDTH (it, area); |
|
it->w->ncols_scale_factor++; |
|
|
fonts_changed_p = 1; |
|
|
} |
|
18363 |
} |
} |
18364 |
|
|
18365 |
|
|
18529 |
glyph->font_type = FONT_TYPE_UNKNOWN; |
glyph->font_type = FONT_TYPE_UNKNOWN; |
18530 |
++it->glyph_row->used[area]; |
++it->glyph_row->used[area]; |
18531 |
} |
} |
18532 |
else if (!fonts_changed_p) |
else |
18533 |
{ |
IT_EXPAND_MATRIX_WIDTH (it, area); |
|
it->w->ncols_scale_factor++; |
|
|
fonts_changed_p = 1; |
|
|
} |
|
18534 |
} |
} |
18535 |
} |
} |
18536 |
|
|
18574 |
glyph->font_type = FONT_TYPE_UNKNOWN; |
glyph->font_type = FONT_TYPE_UNKNOWN; |
18575 |
++it->glyph_row->used[area]; |
++it->glyph_row->used[area]; |
18576 |
} |
} |
18577 |
else if (!fonts_changed_p) |
else |
18578 |
{ |
IT_EXPAND_MATRIX_WIDTH (it, area); |
|
it->w->ncols_scale_factor++; |
|
|
fonts_changed_p = 1; |
|
|
} |
|
18579 |
} |
} |
18580 |
|
|
18581 |
|
|
20948 |
/* If we're on a string with `help-echo' text property, arrange |
/* If we're on a string with `help-echo' text property, arrange |
20949 |
for the help to be displayed. This is done by setting the |
for the help to be displayed. This is done by setting the |
20950 |
global variable help_echo_string to the help string. */ |
global variable help_echo_string to the help string. */ |
20951 |
help = Fget_text_property (pos, Qhelp_echo, string); |
if (NILP (help)) |
|
if (!NILP (help)) |
|
20952 |
{ |
{ |
20953 |
help_echo_string = help; |
help = Fget_text_property (pos, Qhelp_echo, string); |
20954 |
XSETWINDOW (help_echo_window, w); |
if (!NILP (help)) |
20955 |
help_echo_object = string; |
{ |
20956 |
help_echo_pos = charpos; |
help_echo_string = help; |
20957 |
|
XSETWINDOW (help_echo_window, w); |
20958 |
|
help_echo_object = string; |
20959 |
|
help_echo_pos = charpos; |
20960 |
|
} |
20961 |
} |
} |
20962 |
|
|
20963 |
if (NILP (pointer)) |
if (NILP (pointer)) |