Mercurial > emacs
comparison src/dispnew.c @ 90082:6d92d69fae33
Revision: miles@gnu.org--gnu-2005/emacs--unicode--0--patch-4
Merge from emacs--cvs-trunk--0
Patches applied:
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-41
- miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-46
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-47
Merge from gnus--rel--5.10
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-4
Merge from emacs--cvs-trunk--0
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-5
Update from CVS: exi/gnus-faq.texi ([4.1]): Typo.
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-6
Update from CVS
author | Miles Bader <miles@gnu.org> |
---|---|
date | Sat, 22 Jan 2005 21:39:38 +0000 |
parents | eac554634bfa c0533d2d03af |
children | 72cf6261961e |
comparison
equal
deleted
inserted
replaced
90081:b1b6eac1aaa3 | 90082:6d92d69fae33 |
---|---|
4059 | 4059 |
4060 /* Check pending input the first time so that we can quickly return. */ | 4060 /* Check pending input the first time so that we can quickly return. */ |
4061 if (redisplay_dont_pause) | 4061 if (redisplay_dont_pause) |
4062 force_p = 1; | 4062 force_p = 1; |
4063 else | 4063 else |
4064 detect_input_pending (); | 4064 detect_input_pending_ignore_squeezables (); |
4065 | 4065 |
4066 /* If forced to complete the update, or if no input is pending, do | 4066 /* If forced to complete the update, or if no input is pending, do |
4067 the update. */ | 4067 the update. */ |
4068 if (force_p || !input_pending || !NILP (do_mouse_tracking)) | 4068 if (force_p || !input_pending || !NILP (do_mouse_tracking)) |
4069 { | 4069 { |
4133 /* We'll have to play a little bit with when to | 4133 /* We'll have to play a little bit with when to |
4134 detect_input_pending. If it's done too often, | 4134 detect_input_pending. If it's done too often, |
4135 scrolling large windows with repeated scroll-up | 4135 scrolling large windows with repeated scroll-up |
4136 commands will too quickly pause redisplay. */ | 4136 commands will too quickly pause redisplay. */ |
4137 if (!force_p && ++n_updated % preempt_count == 0) | 4137 if (!force_p && ++n_updated % preempt_count == 0) |
4138 detect_input_pending (); | 4138 detect_input_pending_ignore_squeezables (); |
4139 | 4139 |
4140 changed_p |= update_window_line (w, vpos, | 4140 changed_p |= update_window_line (w, vpos, |
4141 &mouse_face_overwritten_p); | 4141 &mouse_face_overwritten_p); |
4142 | 4142 |
4143 /* Mark all rows below the last visible one in the current | 4143 /* Mark all rows below the last visible one in the current |
5077 if (preempt_count <= 0) | 5077 if (preempt_count <= 0) |
5078 preempt_count = 1; | 5078 preempt_count = 1; |
5079 | 5079 |
5080 if (redisplay_dont_pause) | 5080 if (redisplay_dont_pause) |
5081 force_p = 1; | 5081 force_p = 1; |
5082 else if (!force_p && detect_input_pending ()) | 5082 else if (!force_p && detect_input_pending_ignore_squeezables ()) |
5083 { | 5083 { |
5084 pause = 1; | 5084 pause = 1; |
5085 goto do_pause; | 5085 goto do_pause; |
5086 } | 5086 } |
5087 | 5087 |
5133 } | 5133 } |
5134 } | 5134 } |
5135 } | 5135 } |
5136 | 5136 |
5137 if ((i - 1) % preempt_count == 0) | 5137 if ((i - 1) % preempt_count == 0) |
5138 detect_input_pending (); | 5138 detect_input_pending_ignore_squeezables (); |
5139 | 5139 |
5140 update_frame_line (f, i); | 5140 update_frame_line (f, i); |
5141 } | 5141 } |
5142 } | 5142 } |
5143 | 5143 |
5826 { | 5826 { |
5827 /* Find the glyph under X. If we find one with a string object, | 5827 /* Find the glyph under X. If we find one with a string object, |
5828 it's the one we were looking for. */ | 5828 it's the one we were looking for. */ |
5829 glyph = row->glyphs[TEXT_AREA]; | 5829 glyph = row->glyphs[TEXT_AREA]; |
5830 end = glyph + row->used[TEXT_AREA]; | 5830 end = glyph + row->used[TEXT_AREA]; |
5831 for (x0 = *x; glyph < end && x0 > glyph->pixel_width; ++glyph) | 5831 for (x0 = *x; glyph < end && x0 >= glyph->pixel_width; ++glyph) |
5832 x0 -= glyph->pixel_width; | 5832 x0 -= glyph->pixel_width; |
5833 *x = glyph - row->glyphs[TEXT_AREA]; | 5833 *x = glyph - row->glyphs[TEXT_AREA]; |
5834 if (glyph < end) | 5834 if (glyph < end) |
5835 { | 5835 { |
5836 string = glyph->object; | 5836 string = glyph->object; |
5918 ? WINDOW_LEFT_FRINGE_WIDTH (w) | 5918 ? WINDOW_LEFT_FRINGE_WIDTH (w) |
5919 : 0); | 5919 : 0); |
5920 | 5920 |
5921 glyph = row->glyphs[area]; | 5921 glyph = row->glyphs[area]; |
5922 end = glyph + row->used[area]; | 5922 end = glyph + row->used[area]; |
5923 for (x0 = *x - x0; glyph < end && x0 > glyph->pixel_width; ++glyph) | 5923 for (x0 = *x - x0; glyph < end && x0 >= glyph->pixel_width; ++glyph) |
5924 x0 -= glyph->pixel_width; | 5924 x0 -= glyph->pixel_width; |
5925 *x = glyph - row->glyphs[area]; | 5925 *x = glyph - row->glyphs[area]; |
5926 if (glyph < end) | 5926 if (glyph < end) |
5927 { | 5927 { |
5928 string = glyph->object; | 5928 string = glyph->object; |