1260 |
row->mouse_face_p = hl > 0; |
row->mouse_face_p = hl > 0; |
1261 |
if (hl > 0) |
if (hl > 0) |
1262 |
{ |
{ |
1263 |
int vpos = row->y + WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y (w); |
int vpos = row->y + WINDOW_TOP_EDGE_Y (w); |
1264 |
int kstart = start_hpos + WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X (w); |
int kstart = start_hpos + WINDOW_LEFT_EDGE_X (w); |
1265 |
int nglyphs = end_hpos - start_hpos; |
int nglyphs = end_hpos - start_hpos; |
1266 |
int offset = ScreenPrimary + 2*(vpos*screen_size_X + kstart) + 1; |
int offset = ScreenPrimary + 2*(vpos*screen_size_X + kstart) + 1; |
1267 |
int start_offset = offset; |
int start_offset = offset; |
1303 |
/* IT_write_glyphs writes at cursor position, so we need to |
/* IT_write_glyphs writes at cursor position, so we need to |
1304 |
temporarily move cursor coordinates to the beginning of |
temporarily move cursor coordinates to the beginning of |
1305 |
the highlight region. */ |
the highlight region. */ |
1306 |
new_pos_X = start_hpos + WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X (w); |
new_pos_X = start_hpos + WINDOW_LEFT_EDGE_X (w); |
1307 |
new_pos_Y = row->y + WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y (w); |
new_pos_Y = row->y + WINDOW_TOP_EDGE_Y (w); |
1308 |
|
|
1309 |
if (termscript) |
if (termscript) |
1310 |
fprintf (termscript, "<MH- %d-%d:%d>", |
fprintf (termscript, "<MH- %d-%d:%d>", |
1433 |
Lisp_Object help, map; |
Lisp_Object help, map; |
1434 |
|
|
1435 |
/* Find the glyph under X. */ |
/* Find the glyph under X. */ |
1436 |
glyph = row->glyphs[TEXT_AREA] |
glyph = (row->glyphs[TEXT_AREA] |
1437 |
+ x - FRAME_LEFT_SCROLL_BAR_WIDTH (f) * CANON_X_UNIT (f); |
+ x |
1438 |
|
/* Does MS-DOG really support scroll-bars?? ++KFS */ |
1439 |
|
- WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH (w)); |
1440 |
end = glyph + row->used[TEXT_AREA]; |
end = glyph + row->used[TEXT_AREA]; |
1441 |
if (glyph < end |
if (glyph < end |
1442 |
&& STRINGP (glyph->object) |
&& STRINGP (glyph->object) |
1494 |
} |
} |
1495 |
|
|
1496 |
/* Which window is that in? */ |
/* Which window is that in? */ |
1497 |
window = window_from_coordinates (f, x, y, &part, 0); |
window = window_from_coordinates (f, x, y, &part, &x, &y, 0); |
1498 |
|
|
1499 |
/* If we were displaying active text in another window, clear that. */ |
/* If we were displaying active text in another window, clear that. */ |
1500 |
if (! EQ (window, dpyinfo->mouse_face_window)) |
if (! EQ (window, dpyinfo->mouse_face_window)) |
1506 |
|
|
1507 |
/* Convert to window-relative coordinates. */ |
/* Convert to window-relative coordinates. */ |
1508 |
w = XWINDOW (window); |
w = XWINDOW (window); |
|
x -= WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X (w); |
|
|
y -= WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y (w); |
|
1509 |
|
|
1510 |
if (part == ON_MODE_LINE || part == ON_HEADER_LINE) |
if (part == ON_MODE_LINE || part == ON_HEADER_LINE) |
1511 |
{ |
{ |
1513 |
IT_note_mode_line_highlight (w, x, part == ON_MODE_LINE); |
IT_note_mode_line_highlight (w, x, part == ON_MODE_LINE); |
1514 |
return; |
return; |
1515 |
} |
} |
1516 |
else |
|
1517 |
IT_set_mouse_pointer (0); |
IT_set_mouse_pointer (0); |
1518 |
|
|
1519 |
/* Are we in a window whose display is up to date? |
/* Are we in a window whose display is up to date? |
1520 |
And verify the buffer's text has not changed. */ |
And verify the buffer's text has not changed. */ |
1881 |
/* If we are in the echo area, put the cursor at the |
/* If we are in the echo area, put the cursor at the |
1882 |
end of the echo area message. */ |
end of the echo area message. */ |
1883 |
if (!update_cursor_pos |
if (!update_cursor_pos |
1884 |
&& XFASTINT (XWINDOW (FRAME_MINIBUF_WINDOW (f))->top) <= new_pos_Y) |
&& WINDOW_TOP_EDGE_LINE (XWINDOW (FRAME_MINIBUF_WINDOW (f))) <= new_pos_Y) |
1885 |
{ |
{ |
1886 |
int tem_X = current_pos_X, dummy; |
int tem_X = current_pos_X, dummy; |
1887 |
|
|
2548 |
if (colors[1] >= 0 && colors[1] < 16) |
if (colors[1] >= 0 && colors[1] < 16) |
2549 |
the_only_x_display.background_pixel = colors[1]; |
the_only_x_display.background_pixel = colors[1]; |
2550 |
} |
} |
|
the_only_x_display.line_height = 1; |
|
2551 |
the_only_x_display.font = (XFontStruct *)1; /* must *not* be zero */ |
the_only_x_display.font = (XFontStruct *)1; /* must *not* be zero */ |
2552 |
the_only_x_display.display_info.mouse_face_mouse_frame = NULL; |
the_only_x_display.display_info.mouse_face_mouse_frame = NULL; |
2553 |
the_only_x_display.display_info.mouse_face_deferred_gc = 0; |
the_only_x_display.display_info.mouse_face_deferred_gc = 0; |
3382 |
mouse_window = window_from_coordinates (SELECTED_FRAME(), |
mouse_window = window_from_coordinates (SELECTED_FRAME(), |
3383 |
mouse_last_x, |
mouse_last_x, |
3384 |
mouse_last_y, |
mouse_last_y, |
3385 |
0, 0); |
0, 0, 0, 0); |
3386 |
/* A window will be selected only when it is not |
/* A window will be selected only when it is not |
3387 |
selected now, and the last mouse movement event was |
selected now, and the last mouse movement event was |
3388 |
not in it. A minibuffer window will be selected iff |
not in it. A minibuffer window will be selected iff |
4010 |
int |
int |
4011 |
x_pixel_width (struct frame *f) |
x_pixel_width (struct frame *f) |
4012 |
{ |
{ |
4013 |
return FRAME_WIDTH (f); |
return FRAME_COLS (f); |
4014 |
} |
} |
4015 |
|
|
4016 |
int |
int |
4017 |
x_pixel_height (struct frame *f) |
x_pixel_height (struct frame *f) |
4018 |
{ |
{ |
4019 |
return FRAME_HEIGHT (f); |
return FRAME_LINES (f); |
4020 |
} |
} |
4021 |
#endif /* !HAVE_X_WINDOWS */ |
#endif /* !HAVE_X_WINDOWS */ |
4022 |
|
|