emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] trunk r117700: * lisp/obsolete/mouse-sel.el (mouse-sel-mod


From: Stefan Monnier
Subject: [Emacs-diffs] trunk r117700: * lisp/obsolete/mouse-sel.el (mouse-sel-mode): Use add/remove-function.
Date: Wed, 13 Aug 2014 14:15:58 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 117700
revision-id: address@hidden
parent: address@hidden
committer: Stefan Monnier <address@hidden>
branch nick: trunk
timestamp: Wed 2014-08-13 10:15:54 -0400
message:
  * lisp/obsolete/mouse-sel.el (mouse-sel-mode): Use add/remove-function.
  (mouse-sel--ignore): New function.
  (mouse-sel-has-been-enabled, mouse-sel-original-bindings)
  (mouse-sel-original-interprogram-cut-function)
  (mouse-sel-original-interprogram-paste-function): Remove.
modified:
  lisp/obsolete/mouse-sel.el     mousesel.el-20091113204419-o5vbwnq5f7feedwu-635
=== modified file 'lisp/obsolete/mouse-sel.el'
--- a/lisp/obsolete/mouse-sel.el        2014-01-01 07:43:34 +0000
+++ b/lisp/obsolete/mouse-sel.el        2014-08-13 14:15:54 +0000
@@ -190,12 +190,9 @@
 
 ;;=== User Command ========================================================
 
-(defvar mouse-sel-has-been-enabled nil
-  "Non-nil if Mouse Sel mode has been enabled at least once.")
-
 (defvar mouse-sel-original-bindings nil)
-(defvar mouse-sel-original-interprogram-cut-function nil)
-(defvar mouse-sel-original-interprogram-paste-function nil)
+
+(defalias 'mouse-sel--ignore #'ignore)
 
 ;;;###autoload
 (define-minor-mode mouse-sel-mode
@@ -242,14 +239,11 @@
                              (global-set-key event (cdr binding)))))
                        mouse-sel-bound-events))
          ;; Update interprogram functions.
-         (setq mouse-sel-original-interprogram-cut-function
-               interprogram-cut-function
-               mouse-sel-original-interprogram-paste-function
-               interprogram-paste-function
-               mouse-sel-has-been-enabled t)
          (unless (eq mouse-sel-default-bindings 'interprogram-cut-paste)
-           (setq interprogram-cut-function nil
-                 interprogram-paste-function nil))))
+           (add-function :override interprogram-cut-function
+                          #'mouse-sel--ignore)
+            (add-function :override interprogram-paste-function
+                          #'mouse-sel--ignore))))
 
     ;; Restore original bindings
     (remove-hook 'x-lost-selection-functions 'mouse-sel-lost-selection-hook)
@@ -257,11 +251,8 @@
       (global-set-key (car binding) (cdr binding)))
     ;; Restore the old values of these variables,
     ;; only if they were actually saved previously.
-    (if mouse-sel-has-been-enabled
-       (setq interprogram-cut-function
-             mouse-sel-original-interprogram-cut-function
-             interprogram-paste-function
-             mouse-sel-original-interprogram-paste-function))))
+    (remove-function interprogram-cut-function #'mouse-sel--ignore)
+    (remove-function interprogram-paste-function #'mouse-sel--ignore)))
 
 (make-obsolete 'mouse-sel-mode "use the normal mouse modes" "24.3")
 


reply via email to

[Prev in Thread] Current Thread [Next in Thread]