diff options
Diffstat (limited to 'src')
| -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)); | |||
| 36 | 36 | ||
| 37 | extern Lisp_Object Qcursor_in_echo_area; | 37 | extern Lisp_Object Qcursor_in_echo_area; |
| 38 | extern Lisp_Object Qfile_directory_p; | 38 | extern Lisp_Object Qfile_directory_p; |
| 39 | extern Lisp_Object Qonly; | ||
| 39 | 40 | ||
| 40 | Lisp_Object Vcurrent_prefix_arg, Qminus, Qplus; | 41 | Lisp_Object Vcurrent_prefix_arg, Qminus, Qplus; |
| 41 | Lisp_Object Qcall_interactively; | 42 | Lisp_Object Qcall_interactively; |
| @@ -454,7 +455,13 @@ invoke it. If KEYS is omitted or nil, the return value of | |||
| 454 | else if (*string == '^') | 455 | else if (*string == '^') |
| 455 | { | 456 | { |
| 456 | if (! NILP (Vshift_select_mode)) | 457 | if (! NILP (Vshift_select_mode)) |
| 457 | call0 (Qhandle_shift_selection); | 458 | call1 (Qhandle_shift_selection, Qnil); |
| 459 | /* Even if shift-select-mode is off, temporarily active | ||
| 460 | regions could be set using the mouse, and should be | ||
| 461 | deactivated. */ | ||
| 462 | else if (CONSP (Vtransient_mark_mode) | ||
| 463 | && EQ (XCAR (Vtransient_mark_mode), Qonly)) | ||
| 464 | call1 (Qhandle_shift_selection, Qt); | ||
| 458 | string++; | 465 | string++; |
| 459 | } | 466 | } |
| 460 | else break; | 467 | else break; |