diff options
author | Chong Yidong <cyd@stupidchicken.com> | 2008-04-03 16:36:47 +0000 |
---|---|---|
committer | Chong Yidong <cyd@stupidchicken.com> | 2008-04-03 16:36:47 +0000 |
commit | e5a31bbbcb2fdddea8b581ac6a0fb2f45ad53f61 (patch) | |
tree | 2eb7e9ded2479a753ca36d5f19d761f3943ffa24 /src/callint.c | |
parent | 1d8dcf63aabd68f0119f6e24a012ee40ccf7f1c4 (diff) | |
download | emacs-e5a31bbbcb2fdddea8b581ac6a0fb2f45ad53f61.tar.gz |
(Fcall_interactively): Handle temporary region even when
shift-select-mode is off.
Diffstat (limited to 'src/callint.c')
-rw-r--r-- | src/callint.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/callint.c b/src/callint.c index 47c5cd5275c..485529b5283 100644 --- a/src/callint.c +++ b/src/callint.c @@ -36,6 +36,7 @@ extern char *index P_ ((const char *, int)); extern Lisp_Object Qcursor_in_echo_area; extern Lisp_Object Qfile_directory_p; +extern Lisp_Object Qonly; Lisp_Object Vcurrent_prefix_arg, Qminus, Qplus; Lisp_Object Qcall_interactively; @@ -454,7 +455,13 @@ invoke it. If KEYS is omitted or nil, the return value of else if (*string == '^') { if (! NILP (Vshift_select_mode)) - call0 (Qhandle_shift_selection); + call1 (Qhandle_shift_selection, Qnil); + /* Even if shift-select-mode is off, temporarily active + regions could be set using the mouse, and should be + deactivated. */ + else if (CONSP (Vtransient_mark_mode) + && EQ (XCAR (Vtransient_mark_mode), Qonly)) + call1 (Qhandle_shift_selection, Qt); string++; } else break; |