diff lisp/simple.el @ 109802:acc05fd0631b

Let all active regions set the primary selection. This includes both temporarily active regions (mouse drag and shift-select) and those made with C-SPC and cursor motion. * lisp/cus-start.el: Change defcustom for select-active-regions. * lisp/simple.el (deactivate-mark): If select-active-regions is `only', only set selection for temporarily active regions. * src/insdel.c (prepare_to_modify_buffer): Handle `only' value of select-active-regions. * src/keyboard.c (command_loop_1): Avoid setting selection twice, since it's done in deactivate-mark as well. (Vselect_active_regions): Replace `lazy' value with `only', meaning to only set PRIMARY for temporarily active regions.
author Chong Yidong <cyd@stupidchicken.com>
date Sun, 15 Aug 2010 22:33:17 -0400
parents df8e0cd18128
children dce0738d09ef
line wrap: on
line diff
--- a/lisp/simple.el	Sun Aug 15 22:08:01 2010 -0400
+++ b/lisp/simple.el	Sun Aug 15 22:33:17 2010 -0400
@@ -3674,7 +3674,9 @@
 Mark mode is disabled.
 This function also runs `deactivate-mark-hook'."
   (when (or transient-mark-mode force)
-    (when (and select-active-regions
+    (when (and (if (eq select-active-regions 'only)
+		   (eq (car-safe transient-mark-mode) 'only)
+		 select-active-regions)
 	       (region-active-p)
 	       (display-selections-p))
       ;; The var `saved-region-selection', if non-nil, is the text in