[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/src/xterm.c [emacs-unicode-2]
From: |
Miles Bader |
Subject: |
[Emacs-diffs] Changes to emacs/src/xterm.c [emacs-unicode-2] |
Date: |
Wed, 08 Dec 2004 00:31:28 -0500 |
Index: emacs/src/xterm.c
diff -c emacs/src/xterm.c:1.804.2.18 emacs/src/xterm.c:1.804.2.19
*** emacs/src/xterm.c:1.804.2.18 Fri Nov 12 02:52:58 2004
--- emacs/src/xterm.c Wed Dec 8 05:02:21 2004
***************
*** 358,364 ****
static void x_draw_bar_cursor P_ ((struct window *, struct glyph_row *, int,
enum text_cursor_kinds));
! static void x_clip_to_row P_ ((struct window *, struct glyph_row *, GC));
static void x_flush P_ ((struct frame *f));
static void x_update_begin P_ ((struct frame *));
static void x_update_window_begin P_ ((struct window *));
--- 358,364 ----
static void x_draw_bar_cursor P_ ((struct window *, struct glyph_row *, int,
enum text_cursor_kinds));
! static void x_clip_to_row P_ ((struct window *, struct glyph_row *, int, GC));
static void x_flush P_ ((struct frame *f));
static void x_update_begin P_ ((struct frame *));
static void x_update_window_begin P_ ((struct window *));
***************
*** 710,721 ****
int oldVH = row->visible_height;
row->visible_height = p->h;
row->y -= rowY - p->y;
! x_clip_to_row (w, row, gc);
row->y = oldY;
row->visible_height = oldVH;
}
else
! x_clip_to_row (w, row, gc);
if (p->bx >= 0 && !p->overlay_p)
{
--- 710,721 ----
int oldVH = row->visible_height;
row->visible_height = p->h;
row->y -= rowY - p->y;
! x_clip_to_row (w, row, -1, gc);
row->y = oldY;
row->visible_height = oldVH;
}
else
! x_clip_to_row (w, row, -1, gc);
if (p->bx >= 0 && !p->overlay_p)
{
***************
*** 7142,7159 ****
mode lines must be clipped to the whole window. */
static void
! x_clip_to_row (w, row, gc)
struct window *w;
struct glyph_row *row;
GC gc;
{
struct frame *f = XFRAME (WINDOW_FRAME (w));
XRectangle clip_rect;
! int window_y, window_width;
! window_box (w, -1, 0, &window_y, &window_width, 0);
! clip_rect.x = WINDOW_TO_FRAME_PIXEL_X (w, 0);
clip_rect.y = WINDOW_TO_FRAME_PIXEL_Y (w, row->y);
clip_rect.y = max (clip_rect.y, window_y);
clip_rect.width = window_width;
--- 7142,7160 ----
mode lines must be clipped to the whole window. */
static void
! x_clip_to_row (w, row, area, gc)
struct window *w;
struct glyph_row *row;
+ int area;
GC gc;
{
struct frame *f = XFRAME (WINDOW_FRAME (w));
XRectangle clip_rect;
! int window_x, window_y, window_width;
! window_box (w, area, &window_x, &window_y, &window_width, 0);
! clip_rect.x = window_x;
clip_rect.y = WINDOW_TO_FRAME_PIXEL_Y (w, row->y);
clip_rect.y = max (clip_rect.y, window_y);
clip_rect.width = window_width;
***************
*** 7219,7225 ****
gc = dpyinfo->scratch_cursor_gc;
/* Set clipping, draw the rectangle, and reset clipping again. */
! x_clip_to_row (w, row, gc);
XDrawRectangle (dpy, FRAME_X_WINDOW (f), gc, x, y, wd, h);
XSetClipMask (dpy, gc, None);
}
--- 7220,7226 ----
gc = dpyinfo->scratch_cursor_gc;
/* Set clipping, draw the rectangle, and reset clipping again. */
! x_clip_to_row (w, row, TEXT_AREA, gc);
XDrawRectangle (dpy, FRAME_X_WINDOW (f), gc, x, y, wd, h);
XSetClipMask (dpy, gc, None);
}
***************
*** 7291,7297 ****
width = min (cursor_glyph->pixel_width, width);
w->phys_cursor_width = width;
! x_clip_to_row (w, row, gc);
if (kind == BAR_CURSOR)
XFillRectangle (dpy, window, gc,
--- 7292,7298 ----
width = min (cursor_glyph->pixel_width, width);
w->phys_cursor_width = width;
! x_clip_to_row (w, row, TEXT_AREA, gc);
if (kind == BAR_CURSOR)
XFillRectangle (dpy, window, gc,
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] Changes to emacs/src/xterm.c [emacs-unicode-2],
Miles Bader <=