/[emacs]/emacs/src/xdisp.c
ViewVC logotype

Diff of /emacs/src/xdisp.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.919 by kfstorm, Fri Oct 15 12:02:27 2004 UTC revision 1.920 by kfstorm, Sun Oct 17 13:17:00 2004 UTC
# Line 9523  update_overlay_arrows (up_to_date) Line 9523  update_overlay_arrows (up_to_date)
9523  }  }
9524    
9525    
9526  /* Return overlay arrow string at row, or nil.  */  /* Return overlay arrow string to display at row.
9527       Return t if display as bitmap in left fringe.
9528       Return nil if no overlay arrow.  */
9529    
9530  static Lisp_Object  static Lisp_Object
9531  overlay_arrow_at_row (f, row, pbitmap)  overlay_arrow_at_row (it, row, pbitmap)
9532       struct frame *f;       struct it *it;
9533       struct glyph_row *row;       struct glyph_row *row;
9534       int *pbitmap;       int *pbitmap;
9535  {  {
# Line 9550  overlay_arrow_at_row (f, row, pbitmap) Line 9552  overlay_arrow_at_row (f, row, pbitmap)
9552            && (MATRIX_ROW_START_CHARPOS (row) == marker_position (val)))            && (MATRIX_ROW_START_CHARPOS (row) == marker_position (val)))
9553          {          {
9554            val = overlay_arrow_string_or_property (var, pbitmap);            val = overlay_arrow_string_or_property (var, pbitmap);
9555            if (FRAME_WINDOW_P (f))            if (FRAME_WINDOW_P (it->f)
9556                  && WINDOW_LEFT_FRINGE_WIDTH (it->w) > 0)
9557              return Qt;              return Qt;
9558            else if (STRINGP (val))            if (STRINGP (val))
9559              return val;              return val;
9560            break;            break;
9561          }          }
# Line 14073  usage: (trace-to-stderr STRING &rest OBJ Line 14076  usage: (trace-to-stderr STRING &rest OBJ
14076                       Building Desired Matrix Rows                       Building Desired Matrix Rows
14077   ***********************************************************************/   ***********************************************************************/
14078    
14079  /* Return a temporary glyph row holding the glyphs of an overlay  /* Return a temporary glyph row holding the glyphs of an overlay arrow.
14080     arrow.  Only used for non-window-redisplay windows.  */     Used for non-window-redisplay windows, and for windows w/o left fringe.  */
14081    
14082  static struct glyph_row *  static struct glyph_row *
14083  get_overlay_arrow_glyph_row (w, overlay_arrow_string)  get_overlay_arrow_glyph_row (w, overlay_arrow_string)
# Line 14955  display_line (it) Line 14958  display_line (it)
14958       better to let it be displayed like cursors under X.  */       better to let it be displayed like cursors under X.  */
14959    if (! overlay_arrow_seen    if (! overlay_arrow_seen
14960        && (overlay_arrow_string        && (overlay_arrow_string
14961              = overlay_arrow_at_row (it->f, row, &overlay_arrow_bitmap),              = overlay_arrow_at_row (it, row, &overlay_arrow_bitmap),
14962            !NILP (overlay_arrow_string)))            !NILP (overlay_arrow_string)))
14963      {      {
14964        /* Overlay arrow in window redisplay is a fringe bitmap.  */        /* Overlay arrow in window redisplay is a fringe bitmap.  */
14965        if (!FRAME_WINDOW_P (it->f))        if (STRINGP (overlay_arrow_string))
14966          {          {
14967            struct glyph_row *arrow_row            struct glyph_row *arrow_row
14968              = get_overlay_arrow_glyph_row (it->w, overlay_arrow_string);              = get_overlay_arrow_glyph_row (it->w, overlay_arrow_string);
# Line 14984  display_line (it) Line 14987  display_line (it)
14987                row->used[TEXT_AREA] = p2 - row->glyphs[TEXT_AREA];                row->used[TEXT_AREA] = p2 - row->glyphs[TEXT_AREA];
14988              }              }
14989          }          }
14990          else
14991            {
14992              it->w->overlay_arrow_bitmap = overlay_arrow_bitmap;
14993              row->overlay_arrow_p = 1;
14994            }
14995        overlay_arrow_seen = 1;        overlay_arrow_seen = 1;
       it->w->overlay_arrow_bitmap = overlay_arrow_bitmap;  
       row->overlay_arrow_p = 1;  
14996      }      }
14997    
14998    /* Compute pixel dimensions of this line.  */    /* Compute pixel dimensions of this line.  */

Legend:
Removed from v.1.919  
changed lines
  Added in v.1.920

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26