Mercurial > emacs
comparison lisp/mouse.el @ 67870:60b2bb5ad00f
(mouse-drag-region-1): When remapping mouse-1 to mouse-2, go back to
previously selected window, so it's selected when mouse-2 command runs.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Wed, 28 Dec 2005 03:19:29 +0000 |
parents | 01ba52243e5f |
children | f223df02d351 |
comparison
equal
deleted
inserted
replaced
67869:ea017f365939 | 67870:60b2bb5ad00f |
---|---|
1000 ;; position due to the new window contents, | 1000 ;; position due to the new window contents, |
1001 ;; and point is set again. | 1001 ;; and point is set again. |
1002 (or end-point | 1002 (or end-point |
1003 (= (window-start start-window) | 1003 (= (window-start start-window) |
1004 start-window-start))) | 1004 start-window-start))) |
1005 (if (and on-link | 1005 (when (and on-link |
1006 (or (not end-point) (= end-point start-point)) | 1006 (or (not end-point) (= end-point start-point)) |
1007 (consp event) | 1007 (consp event) |
1008 (or remap-double-click | 1008 (or remap-double-click |
1009 (and | 1009 (and |
1010 (not (eq mouse-1-click-follows-link 'double)) | 1010 (not (eq mouse-1-click-follows-link 'double)) |
1011 (= click-count 0) | 1011 (= click-count 0) |
1012 (= (event-click-count event) 1) | 1012 (= (event-click-count event) 1) |
1013 (not (input-pending-p)) | 1013 (not (input-pending-p)) |
1014 (or (not (integerp mouse-1-click-follows-link)) | 1014 (or (not (integerp mouse-1-click-follows-link)) |
1015 (let ((t0 (posn-timestamp (event-start start-event))) | 1015 (let ((t0 (posn-timestamp (event-start start-event))) |
1016 (t1 (posn-timestamp (event-end event)))) | 1016 (t1 (posn-timestamp (event-end event)))) |
1017 (and (integerp t0) (integerp t1) | 1017 (and (integerp t0) (integerp t1) |
1018 (if (> mouse-1-click-follows-link 0) | 1018 (if (> mouse-1-click-follows-link 0) |
1019 (<= (- t1 t0) mouse-1-click-follows-link) | 1019 (<= (- t1 t0) mouse-1-click-follows-link) |
1020 (< (- t0 t1) mouse-1-click-follows-link)))))))) | 1020 (< (- t0 t1) mouse-1-click-follows-link)))))))) |
1021 (if (or (vectorp on-link) (stringp on-link)) | 1021 ;; Reselect previous selected window, |
1022 (setq event (aref on-link 0)) | 1022 ;; so that the mouse-2 event runs in the same |
1023 (setcar event 'mouse-2))) | 1023 ;; situation as if user had clicked it directly. |
1024 ;; Fixes the bug reported by juri@jurta.org on 2005-12-27. | |
1025 (select-window original-window) | |
1026 (if (or (vectorp on-link) (stringp on-link)) | |
1027 (setq event (aref on-link 0)) | |
1028 (setcar event 'mouse-2))) | |
1024 (push event unread-command-events)))) | 1029 (push event unread-command-events)))) |
1025 | 1030 |
1026 ;; Case where the end-event is not a cons cell (it's just a boring | 1031 ;; Case where the end-event is not a cons cell (it's just a boring |
1027 ;; char-key-press). | 1032 ;; char-key-press). |
1028 (delete-overlay mouse-drag-overlay))))) | 1033 (delete-overlay mouse-drag-overlay))))) |