X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=src%2Fredisplay.c;h=895f520fee0300e1006d0bff2e0d7358549cc92a;hb=9f9cabd6048b19ed58d1e1a552ef9d09371a4700;hp=af19d9be086e88a5f9c6945edb4e97c1df8088d4;hpb=77dcef404dc78635f6ffa8f71a803d2bc7cc8921;p=chise%2Fxemacs-chise.git.1 diff --git a/src/redisplay.c b/src/redisplay.c index af19d9b..895f520 100644 --- a/src/redisplay.c +++ b/src/redisplay.c @@ -46,7 +46,6 @@ Boston, MA 02111-1307, USA. */ #include "commands.h" #include "debug.h" #include "device.h" -#include "elhash.h" #include "extents.h" #include "faces.h" #include "frame.h" @@ -1806,7 +1805,7 @@ create_text_block (struct window *w, struct display_line *dl, like: a) A 256-entry vector, for backward compatibility - b) Some sort of hash table, mapping characters to values + b) Some sort of hashtable, mapping characters to values c) A list that specifies a range of values and the mapping to provide for those values. @@ -2339,7 +2338,7 @@ done: { /* If data.start_col_enabled is still true, then the window is scrolled far enough so that nothing on this line is visible. - We need to stick a truncation glyph at the beginning of the + We need to stick a trunctation glyph at the beginning of the line in that case unless the line is completely blank. */ if (data.bi_start_col_enabled) { @@ -2872,7 +2871,7 @@ create_left_glyph_block (struct window *w, struct display_line *dl, they should start. The inside margin glyphs get whatever space is left after the whitespace glyphs have been displayed. These are tricky to calculate since if we decide to use the overflow - area we basically have to start over. So for these we build up a + area we basicaly have to start over. So for these we build up a list of just the inside margin glyphs and manipulate it to determine the needed info. */ { @@ -3001,7 +3000,7 @@ create_left_glyph_block (struct window *w, struct display_line *dl, struct glyph_block *gb = Dynarr_atp (dl->left_glyphs, elt); if (NILP (gb->extent)) - abort (); /* these should have been handled in add_glyph_rune */ + abort (); /* these should have beeb handled in add_glyph_rune */ if (extent_begin_glyph_layout (XEXTENT (gb->extent)) == GL_OUTSIDE_MARGIN) @@ -3191,7 +3190,7 @@ create_right_glyph_block (struct window *w, struct display_line *dl) they should start. The inside margin glyphs get whatever space is left after the whitespace glyphs have been displayed. These are tricky to calculate since if we decide to use the overflow - area we basically have to start over. So for these we build up a + area we basicaly have to start over. So for these we build up a list of just the inside margin glyphs and manipulate it to determine the needed info. */ { @@ -3314,7 +3313,7 @@ create_right_glyph_block (struct window *w, struct display_line *dl) struct glyph_block *gb = Dynarr_atp (dl->right_glyphs, elt); if (NILP (gb->extent)) - abort (); /* these should have been handled in add_glyph_rune */ + abort (); /* these should have beeb handled in add_glyph_rune */ if (extent_end_glyph_layout (XEXTENT (gb->extent)) == GL_OUTSIDE_MARGIN) { @@ -3525,7 +3524,7 @@ generate_modeline (struct window *w, struct display_line *dl, int type) MODELINE_INDEX, min_pixpos, max_pixpos, type); /* The modeline is at the bottom of the gutters. We have to wait to - set this until we've generated the modeline in order to account + set this until we've generated teh modeline in order to account for any embedded faces. */ dl->ypos = WINDOW_BOTTOM (w) - dl->descent - ypos_adj; } @@ -5050,7 +5049,7 @@ redisplay_window (Lisp_Object window, int skip_selected) Fset_marker (w->pointm[DESIRED_DISP], make_int (pointm), the_buffer); - /* #### BUFU amounts of overkill just to get the cursor + /* #### BUFU amounts of overkil just to get the cursor location marked properly. FIX ME FIX ME FIX ME */ regenerate_window (w, startp, pointm, DESIRED_DISP); } @@ -5067,10 +5066,7 @@ redisplay_window (Lisp_Object window, int skip_selected) temporary change to the echo area. */ && !(MINI_WINDOW_P (w) && f->buffers_changed) && !f->frame_changed - && !truncation_changed - /* check whether start is really at the begining of a line GE */ - && (!w->start_at_line_beg || beginning_of_line_p (b, startp)) - ) + && !truncation_changed) { /* Check if the cursor has actually moved. */ if (EQ (Fmarker_buffer (w->last_point[CURRENT_DISP]), w->buffer) @@ -5242,7 +5238,7 @@ regeneration_done: redisplay_output_window (w); /* * If we just displayed the echo area, the line start cache is - * no longer valid, because the minibuffer window is associated + * no longer valid, because the minibuffer window is assocaited * with the window now. */ if (echo_active) @@ -5355,13 +5351,13 @@ redisplay_frame (struct frame *f, int preemption_check) change_frame_size (f, f->new_height, f->new_width, 0); /* If frame size might need to be changed, due to changed size - of toolbars, scrollbars etc, change it now */ + of toolbars, scroolabrs etc, change it now */ if (f->size_slipped) { adjust_frame_size (f); assert (!f->size_slipped); } - + /* The menubar, toolbar, and icon updates must be done before hold_frame_size_changes is called and we are officially 'in_display'. They may eval lisp code which may call Fsignal. @@ -5704,9 +5700,9 @@ window_line_number (struct window *w, int type) { struct device *d = XDEVICE (XFRAME (w->frame)->device); struct buffer *b = XBUFFER (w->buffer); - /* Be careful in the order of these tests. The first clause will + /* Be careful in the order of these tests. The first clasue will fail if DEVICE_SELECTED_FRAME == Qnil (since w->frame cannot be). - This can occur when the frame title is computed really early */ + This can occur when the frame title is computed really early */ Bufpos pos = ((EQ(DEVICE_SELECTED_FRAME(d), w->frame) && (w == XWINDOW (FRAME_SELECTED_WINDOW (device_selected_frame(d)))) && @@ -6090,10 +6086,8 @@ mark_glyph_block_dynarr (glyph_block_dynarr *gba, void (*markobj) (Lisp_Object)) for (; gb < gb_last; gb++) { - if (!NILP (gb->glyph)) - markobj (gb->glyph); - if (!NILP (gb->extent)) - markobj (gb->extent); + if (!NILP (gb->glyph)) ((markobj) (gb->glyph)); + if (!NILP (gb->extent)) ((markobj) (gb->extent)); } } } @@ -6121,9 +6115,9 @@ mark_redisplay_structs (display_line_dynarr *dla, void (*markobj) (Lisp_Object)) if (r->type == RUNE_DGLYPH) { if (!NILP (r->object.dglyph.glyph)) - markobj (r->object.dglyph.glyph); + ((markobj) (r->object.dglyph.glyph)); if (!NILP (r->object.dglyph.extent)) - markobj (r->object.dglyph.extent); + ((markobj) (r->object.dglyph.extent)); } } } @@ -6267,7 +6261,7 @@ validate_line_start_cache (struct window *w) size changes can cause text shifting. However, the extent covering the region is constantly having its face set and priority altered by the mouse code. This means that the line - start cache is constantly being invalidated. This is bad + start cache is constanty being invalidated. This is bad since the mouse code also triggers heavy usage of the cache. Since it is an unlikely that f->extents being changed indicates that the cache really needs to be updated and if it @@ -7067,7 +7061,7 @@ update_line_start_cache (struct window *w, Bufpos from, Bufpos to, /* * Handle invisible text properly: - * If the last line we're inserting has the same end as the + * If the last line we're inserting has the same end as the * line before which it will be added, merge the two lines. */ if (Dynarr_length (cache) && @@ -7303,7 +7297,7 @@ get_position_object (struct display_line *dl, Lisp_Object *obj1, d->pixel_to_glyph_cache.obj1 = *obj1; \ d->pixel_to_glyph_cache.obj2 = *obj2; \ d->pixel_to_glyph_cache.retval = position; \ - RETURN_SANS_WARNINGS position; \ + RETURN__ position; \ } while (0) /* Given x and y coordinates in pixels relative to a frame, return @@ -8062,29 +8056,40 @@ redisplay_glyph_changed (Lisp_Object glyph, Lisp_Object property, { if (WINDOWP (locale)) { - MARK_FRAME_GLYPHS_CHANGED (XFRAME (WINDOW_FRAME (XWINDOW (locale)))); + struct frame *f = XFRAME (WINDOW_FRAME (XWINDOW (locale))); + MARK_FRAME_GLYPHS_CHANGED (f); } else if (FRAMEP (locale)) { - MARK_FRAME_GLYPHS_CHANGED (XFRAME (locale)); + struct frame *f = XFRAME (locale); + MARK_FRAME_GLYPHS_CHANGED (f); } else if (DEVICEP (locale)) { Lisp_Object frmcons; DEVICE_FRAME_LOOP (frmcons, XDEVICE (locale)) - MARK_FRAME_GLYPHS_CHANGED (XFRAME (XCAR (frmcons))); + { + struct frame *f = XFRAME (XCAR (frmcons)); + MARK_FRAME_GLYPHS_CHANGED (f); + } } else if (CONSOLEP (locale)) { Lisp_Object frmcons, devcons; CONSOLE_FRAME_LOOP_NO_BREAK (frmcons, devcons, XCONSOLE (locale)) - MARK_FRAME_GLYPHS_CHANGED (XFRAME (XCAR (frmcons))); + { + struct frame *f = XFRAME (XCAR (frmcons)); + MARK_FRAME_GLYPHS_CHANGED (f); + } } else /* global or buffer */ { Lisp_Object frmcons, devcons, concons; FRAME_LOOP_NO_BREAK (frmcons, devcons, concons) - MARK_FRAME_GLYPHS_CHANGED (XFRAME (XCAR (frmcons))); + { + struct frame *f = XFRAME (XCAR (frmcons)); + MARK_FRAME_GLYPHS_CHANGED (f); + } } } @@ -8294,7 +8299,7 @@ line start cache. Minimum pixel height for clipped bottom display line. A clipped line shorter than this won't be displayed. */ , - redisplay_variable_changed); + redisplay_variable_changed); vertical_clip = 5; DEFVAR_INT_MAGIC ("pixel-horizontal-clip-threshold", &horizontal_clip /* @@ -8302,7 +8307,7 @@ Minimum visible area for clipped glyphs at right boundary. Clipped glyphs shorter than this won't be displayed. Only pixmap glyph instances are currently allowed to be clipped. */ , - redisplay_variable_changed); + redisplay_variable_changed); horizontal_clip = 5; DEFVAR_LISP ("global-mode-string", &Vglobal_mode_string /* @@ -8314,14 +8319,13 @@ String displayed by modeline-format's "%m" specification. Marker for where to display an arrow on top of the buffer text. This must be the beginning of a line in order to work. See also `overlay-arrow-string'. -*/ , - redisplay_variable_changed); +*/ , redisplay_variable_changed); Voverlay_arrow_position = Qnil; DEFVAR_LISP_MAGIC ("overlay-arrow-string", &Voverlay_arrow_string /* String to display as an arrow. See also `overlay-arrow-position'. */ , - redisplay_variable_changed); + redisplay_variable_changed); Voverlay_arrow_string = Qnil; DEFVAR_INT ("scroll-step", &scroll_step /* @@ -8340,7 +8344,7 @@ If this is zero, point is always centered after it moves off screen. &truncate_partial_width_windows /* *Non-nil means truncate lines in all windows less than full frame wide. */ , - redisplay_variable_changed); + redisplay_variable_changed); truncate_partial_width_windows = 1; DEFVAR_BOOL ("visible-bell", &visible_bell /*