emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/src/macterm.c


From: Kim F . Storm
Subject: [Emacs-diffs] Changes to emacs/src/macterm.c
Date: Thu, 27 Jan 2005 17:33:11 -0500

Index: emacs/src/macterm.c
diff -c emacs/src/macterm.c:1.99 emacs/src/macterm.c:1.100
*** emacs/src/macterm.c:1.99    Mon Jan 24 17:59:36 2005
--- emacs/src/macterm.c Thu Jan 27 22:33:11 2005
***************
*** 4731,4759 ****
    if (cursor_glyph == NULL)
      return;
  
!   /* Compute the width of the rectangle to draw.  If on a stretch
!      glyph, and `x-stretch-block-cursor' is nil, don't draw a
!      rectangle as wide as the glyph, but use a canonical character
!      width instead.  */
!   wd = cursor_glyph->pixel_width - 1;
!   if (cursor_glyph->type == STRETCH_GLYPH
!       && !x_stretch_cursor_p)
!     wd = min (FRAME_COLUMN_WIDTH (f), wd);
!   w->phys_cursor_width = wd;
! 
!   /* Compute frame-relative coordinates from window-relative
!      coordinates.  */
    x = WINDOW_TEXT_TO_FRAME_PIXEL_X (w, w->phys_cursor.x);
!   y = WINDOW_TO_FRAME_PIXEL_Y (w, w->phys_cursor.y);
! 
!   /* Compute the proper height and ascent of the rectangle, based
!      on the actual glyph.  Using the full height of the row looks
!      bad when there are tall images on that row.  */
!   h = max (min (FRAME_LINE_HEIGHT (f), row->height),
!          cursor_glyph->ascent + cursor_glyph->descent);
!   if (h < row->height)
!     y += row->ascent /* - w->phys_cursor_ascent */ + cursor_glyph->descent - 
h;
!   h--;
  
    /* The foreground of cursor_gc is typically the same as the normal
       background color, which can cause the cursor box to be invisible.  */
--- 4731,4740 ----
    if (cursor_glyph == NULL)
      return;
  
!   /* Compute frame-relative coordinates for phys cursor.  */
    x = WINDOW_TEXT_TO_FRAME_PIXEL_X (w, w->phys_cursor.x);
!   y = get_phys_cursor_geometry (w, row, cursor_glyph, &h);
!   wd = w->phys_cursor_width;
  
    /* The foreground of cursor_gc is typically the same as the normal
       background color, which can cause the cursor box to be invisible.  */




reply via email to

[Prev in Thread] Current Thread [Next in Thread]