diff options
| author | Karoly Lorentey | 2006-03-15 17:22:12 +0000 |
|---|---|---|
| committer | Karoly Lorentey | 2006-03-15 17:22:12 +0000 |
| commit | b336ee388ed5300440e7bab24bf9eec9f250911a (patch) | |
| tree | 62c9058bd403d158d7d18d1cbd4ead3abf36a7aa /src/w32term.c | |
| parent | 47f3c6b4dbed851762dca99273d78642c3794188 (diff) | |
| parent | 4034b0e259dd59eda180bd0683876c9d0110f719 (diff) | |
| download | emacs-b336ee388ed5300440e7bab24bf9eec9f250911a.tar.gz emacs-b336ee388ed5300440e7bab24bf9eec9f250911a.zip | |
Merged from emacs@sv.gnu.org
Patches applied:
* emacs@sv.gnu.org/emacs--devo--0--patch-153
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-154
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-155
Remove nick-abbrevs stuff from rcirc.el
* emacs@sv.gnu.org/emacs--devo--0--patch-156
rcirc.el update from Ryan Yeske
* emacs@sv.gnu.org/emacs--devo--0--patch-157
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-158
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-159
Update from CVS
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-532
Diffstat (limited to 'src/w32term.c')
| -rw-r--r-- | src/w32term.c | 18 |
1 files changed, 6 insertions, 12 deletions
diff --git a/src/w32term.c b/src/w32term.c index bd04f0cb4b5..d7c9bc8c159 100644 --- a/src/w32term.c +++ b/src/w32term.c | |||
| @@ -183,6 +183,7 @@ int last_scroll_bar_drag_pos; | |||
| 183 | /* Where the mouse was last time we reported a mouse event. */ | 183 | /* Where the mouse was last time we reported a mouse event. */ |
| 184 | 184 | ||
| 185 | static RECT last_mouse_glyph; | 185 | static RECT last_mouse_glyph; |
| 186 | static FRAME_PTR last_mouse_glyph_frame; | ||
| 186 | static Lisp_Object last_mouse_press_frame; | 187 | static Lisp_Object last_mouse_press_frame; |
| 187 | 188 | ||
| 188 | int w32_num_mouse_buttons; | 189 | int w32_num_mouse_buttons; |
| @@ -3221,11 +3222,13 @@ note_mouse_movement (frame, msg) | |||
| 3221 | frame->mouse_moved = 1; | 3222 | frame->mouse_moved = 1; |
| 3222 | last_mouse_scroll_bar = Qnil; | 3223 | last_mouse_scroll_bar = Qnil; |
| 3223 | note_mouse_highlight (frame, -1, -1); | 3224 | note_mouse_highlight (frame, -1, -1); |
| 3225 | last_mouse_glyph_frame = 0; | ||
| 3224 | return 1; | 3226 | return 1; |
| 3225 | } | 3227 | } |
| 3226 | 3228 | ||
| 3227 | /* Has the mouse moved off the glyph it was on at the last sighting? */ | 3229 | /* Has the mouse moved off the glyph it was on at the last sighting? */ |
| 3228 | if (mouse_x < last_mouse_glyph.left | 3230 | if (frame != last_mouse_glyph_frame |
| 3231 | || mouse_x < last_mouse_glyph.left | ||
| 3229 | || mouse_x >= last_mouse_glyph.right | 3232 | || mouse_x >= last_mouse_glyph.right |
| 3230 | || mouse_y < last_mouse_glyph.top | 3233 | || mouse_y < last_mouse_glyph.top |
| 3231 | || mouse_y >= last_mouse_glyph.bottom) | 3234 | || mouse_y >= last_mouse_glyph.bottom) |
| @@ -3238,6 +3241,7 @@ note_mouse_movement (frame, msg) | |||
| 3238 | to keep track of the mouse for help_echo and highlighting at | 3241 | to keep track of the mouse for help_echo and highlighting at |
| 3239 | other times. */ | 3242 | other times. */ |
| 3240 | remember_mouse_glyph (frame, mouse_x, mouse_y, &last_mouse_glyph); | 3243 | remember_mouse_glyph (frame, mouse_x, mouse_y, &last_mouse_glyph); |
| 3244 | last_mouse_glyph_frame = frame; | ||
| 3241 | return 1; | 3245 | return 1; |
| 3242 | } | 3246 | } |
| 3243 | 3247 | ||
| @@ -3361,19 +3365,9 @@ w32_mouse_position (fp, insist, bar_window, part, x, y, time) | |||
| 3361 | on it, i.e. into the same rectangles that matrices on | 3365 | on it, i.e. into the same rectangles that matrices on |
| 3362 | the frame are divided into. */ | 3366 | the frame are divided into. */ |
| 3363 | 3367 | ||
| 3364 | #if OLD_REDISPLAY_CODE | ||
| 3365 | int ignore1, ignore2; | ||
| 3366 | |||
| 3367 | ScreenToClient (FRAME_W32_WINDOW (f1), &pt); | ||
| 3368 | |||
| 3369 | pixel_to_glyph_coords (f1, pt.x, pt.y, &ignore1, &ignore2, | ||
| 3370 | &last_mouse_glyph, | ||
| 3371 | FRAME_W32_DISPLAY_INFO (f1)->grabbed | ||
| 3372 | || insist); | ||
| 3373 | #else | ||
| 3374 | ScreenToClient (FRAME_W32_WINDOW (f1), &pt); | 3368 | ScreenToClient (FRAME_W32_WINDOW (f1), &pt); |
| 3375 | remember_mouse_glyph (f1, pt.x, pt.y, &last_mouse_glyph); | 3369 | remember_mouse_glyph (f1, pt.x, pt.y, &last_mouse_glyph); |
| 3376 | #endif | 3370 | last_mouse_glyph_frame = f1; |
| 3377 | 3371 | ||
| 3378 | *bar_window = Qnil; | 3372 | *bar_window = Qnil; |
| 3379 | *part = 0; | 3373 | *part = 0; |