(mouse-drag-region): Set the region before reading a
authorRichard M. Stallman <rms@gnu.org>
Mon, 6 May 1996 00:43:26 +0000 (00:43 +0000)
committerRichard M. Stallman <rms@gnu.org>
Mon, 6 May 1996 00:43:26 +0000 (00:43 +0000)
character, so the selection exists while we wait.

lisp/mouse.el

index 14fe1c7..00a53d6 100644 (file)
@@ -575,13 +575,13 @@ remains active.  Otherwise, it remains until the next input event."
              (if (not (= (overlay-start mouse-drag-overlay)
                          (overlay-end mouse-drag-overlay)))
                  (let (last-command this-command)
+                   (push-mark (overlay-start mouse-drag-overlay) t t)
+                   (goto-char (overlay-end mouse-drag-overlay))
+                   (copy-region-as-kill (point) (mark t))
                    (let ((inhibit-quit t))
                      (setq unread-command-events
                            (cons (read-event) unread-command-events))
                      (setq quit-flag nil))
-                   (push-mark (overlay-start mouse-drag-overlay) t t)
-                   (goto-char (overlay-end mouse-drag-overlay))
-                   (copy-region-as-kill (point) (mark t))
                    (mouse-set-region-1)
                    (delete-overlay mouse-drag-overlay))
                (goto-char (overlay-end mouse-drag-overlay))