diff options
| author | Chong Yidong | 2010-03-24 17:25:46 -0400 |
|---|---|---|
| committer | Chong Yidong | 2010-03-24 17:25:46 -0400 |
| commit | f79a01db3876557cde3112ca87381164ceac7741 (patch) | |
| tree | 4a7159a955da4fa313a94f846281e30c9a8419f4 /src | |
| parent | d0fba1745fc6b4a9b078957cae994ff694ba5efe (diff) | |
| download | emacs-f79a01db3876557cde3112ca87381164ceac7741.tar.gz emacs-f79a01db3876557cde3112ca87381164ceac7741.zip | |
* xdisp.c (pos_visible_p): Revert 2008-01-25 change (Bug#5730).
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 4 | ||||
| -rw-r--r-- | src/xdisp.c | 28 |
2 files changed, 5 insertions, 27 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 2609125f9fe..3f22b7eaea9 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,7 @@ | |||
| 1 | 2010-03-24 Chong Yidong <cyd@stupidchicken.com> | ||
| 2 | |||
| 3 | * xdisp.c (pos_visible_p): Revert 2008-01-25 change (Bug#5730). | ||
| 4 | |||
| 1 | 2010-03-20 Jan Djärv <jan.h.d@swipnet.se> | 5 | 2010-03-20 Jan Djärv <jan.h.d@swipnet.se> |
| 2 | 6 | ||
| 3 | * frame.c (x_get_arg): Handle RES_TYPE_BOOLEAN_NUMBER (bug #5736). | 7 | * frame.c (x_get_arg): Handle RES_TYPE_BOOLEAN_NUMBER (bug #5736). |
diff --git a/src/xdisp.c b/src/xdisp.c index 9ece458e77e..54f467c9f8f 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -1375,33 +1375,7 @@ pos_visible_p (w, charpos, x, y, rtop, rbot, rowh, vpos) | |||
| 1375 | visible_p = 1; | 1375 | visible_p = 1; |
| 1376 | if (visible_p) | 1376 | if (visible_p) |
| 1377 | { | 1377 | { |
| 1378 | if (it_method == GET_FROM_BUFFER) | 1378 | if (it_method == GET_FROM_DISPLAY_VECTOR) |
| 1379 | { | ||
| 1380 | Lisp_Object window, prop; | ||
| 1381 | |||
| 1382 | XSETWINDOW (window, w); | ||
| 1383 | prop = Fget_char_property (make_number (charpos), | ||
| 1384 | Qinvisible, window); | ||
| 1385 | |||
| 1386 | /* If charpos coincides with invisible text covered with an | ||
| 1387 | ellipsis, use the first glyph of the ellipsis to compute | ||
| 1388 | the pixel positions. */ | ||
| 1389 | if (TEXT_PROP_MEANS_INVISIBLE (prop) == 2) | ||
| 1390 | { | ||
| 1391 | struct glyph_row *row = it.glyph_row; | ||
| 1392 | struct glyph *glyph = row->glyphs[TEXT_AREA]; | ||
| 1393 | struct glyph *end = glyph + row->used[TEXT_AREA]; | ||
| 1394 | int x = row->x; | ||
| 1395 | |||
| 1396 | for (; glyph < end | ||
| 1397 | && (!BUFFERP (glyph->object) | ||
| 1398 | || glyph->charpos < charpos); | ||
| 1399 | glyph++) | ||
| 1400 | x += glyph->pixel_width; | ||
| 1401 | top_x = x; | ||
| 1402 | } | ||
| 1403 | } | ||
| 1404 | else if (it_method == GET_FROM_DISPLAY_VECTOR) | ||
| 1405 | { | 1379 | { |
| 1406 | /* We stopped on the last glyph of a display vector. | 1380 | /* We stopped on the last glyph of a display vector. |
| 1407 | Try and recompute. Hack alert! */ | 1381 | Try and recompute. Hack alert! */ |