aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKim F. Storm2005-01-24 20:44:39 +0000
committerKim F. Storm2005-01-24 20:44:39 +0000
commit6adb6f01302f35954f3b50bbf8ae8d94af268792 (patch)
treef9c90a4066bfd9a8078ebc1e9689d198163bd05e
parentdacb2f7013c28d5265e079a1f4c0e6536a4699ca (diff)
downloademacs-6adb6f01302f35954f3b50bbf8ae8d94af268792.tar.gz
emacs-6adb6f01302f35954f3b50bbf8ae8d94af268792.zip
*** empty log message ***
-rw-r--r--src/ChangeLog15
-rw-r--r--src/xdisp.c6
2 files changed, 14 insertions, 7 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index de7978371b5..4fa9eb8adab 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,8 +1,13 @@
12005-01-24 Kim F. Storm <storm@cua.dk>
2
3 * xdisp.c (move_it_by_lines): If we move forward after going too
4 far back, cancel move if end position is same as start position.
5
12005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> 62005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2 7
3 * dispextern.h (struct glyph_string): New members clip_head and 8 * dispextern.h (struct glyph_string): New members clip_head and
4 clip_tail. 9 clip_tail.
5 10
6 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip 11 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
7 region to the area between clip_head and clip_tail. 12 region to the area between clip_head and clip_tail.
8 (draw_glyphs): Record the area that need to be actually redrawn to 13 (draw_glyphs): Record the area that need to be actually redrawn to
@@ -10,17 +15,15 @@
10 overhangs. Set values of these variables to the corresponding 15 overhangs. Set values of these variables to the corresponding
11 members in struct glyph_string. Refine x coordinates for 16 members in struct glyph_string. Refine x coordinates for
12 notice_overwritten_cursor using clip_head and clip_tail. 17 notice_overwritten_cursor using clip_head and clip_tail.
13 18
14 * macgui.h (STORE_XCHARSETSTRUCT): New macro. 19 * macgui.h (STORE_XCHARSETSTRUCT): New macro.
15 20
16 * macterm.c (mac_compute_glyph_string_overhangs): Implement with 21 * macterm.c (mac_compute_glyph_string_overhangs): Implement with
17 QDTextBounds. 22 QDTextBounds.
18 (x_draw_glyph_string): Don't fill the background of the successor 23 (x_draw_glyph_string): Don't fill the background of the successor
19 of a glyph with a right overhang if the successor will draw a 24 of a glyph with a right overhang if the successor will draw a cursor.
20 cursor.
21 (XLoadQueryFont): Obtain font metrics using QDTextBounds. 25 (XLoadQueryFont): Obtain font metrics using QDTextBounds.
22 (x_redisplay_interface): Add entry for 26 (x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
23 compute_glyph_string_overhangs.
24 27
252005-01-24 Kim F. Storm <storm@cua.dk> 282005-01-24 Kim F. Storm <storm@cua.dk>
26 29
diff --git a/src/xdisp.c b/src/xdisp.c
index 5f09fcc68b6..d7c32be09ea 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -6413,11 +6413,15 @@ move_it_by_lines (it, dvpos, need_y_p)
6413 it->current_y -= it2.current_y; 6413 it->current_y -= it2.current_y;
6414 it->current_x = it->hpos = 0; 6414 it->current_x = it->hpos = 0;
6415 6415
6416 /* If we moved too far, move IT some lines forward. */ 6416 /* If we moved too far back, move IT some lines forward. */
6417 if (it2.vpos > -dvpos) 6417 if (it2.vpos > -dvpos)
6418 { 6418 {
6419 int delta = it2.vpos + dvpos; 6419 int delta = it2.vpos + dvpos;
6420 it2 = *it;
6420 move_it_to (it, -1, -1, -1, it->vpos + delta, MOVE_TO_VPOS); 6421 move_it_to (it, -1, -1, -1, it->vpos + delta, MOVE_TO_VPOS);
6422 /* Move back again if we got too far ahead. */
6423 if (IT_CHARPOS (*it) >= start_charpos)
6424 *it = it2;
6421 } 6425 }
6422 } 6426 }
6423} 6427}