diff options
author | Mike Williams <mdub@bigfoot.com> | 2002-07-15 11:49:37 +0000 |
---|---|---|
committer | Mike Williams <mdub@bigfoot.com> | 2002-07-15 11:49:37 +0000 |
commit | 5a95c143a534f0ecca8b533b0a40224bc3856811 (patch) | |
tree | 735ee5969ab60e24fa659c7ecba500e1e37dade8 /lisp/mouse-sel.el | |
parent | ec6a646a0bdfe8c2cdfac7ae5c81cddd0fa0517e (diff) | |
download | emacs-5a95c143a534f0ecca8b533b0a40224bc3856811.tar.gz |
(mouse-sel-bindings): Save/restore interprogram cut/paste functions.
Diffstat (limited to 'lisp/mouse-sel.el')
-rw-r--r-- | lisp/mouse-sel.el | 46 |
1 files changed, 23 insertions, 23 deletions
diff --git a/lisp/mouse-sel.el b/lisp/mouse-sel.el index 25fdc92b296..004b6cbf718 100644 --- a/lisp/mouse-sel.el +++ b/lisp/mouse-sel.el @@ -240,25 +240,6 @@ primary selection and region." [M-down-mouse-3] [M-mouse-3]) "A list of events that mouse-sel binds.") -(defun mouse-sel-save-original-bindings () - "Save the current bindings for `mouse-sel-bound-events'." - (setq mouse-sel-original-bindings nil) - (mapc (function - (lambda (event) - (setq mouse-sel-original-bindings - (cons (cons event (lookup-key global-map event)) - mouse-sel-original-bindings)))) - mouse-sel-bound-events)) - -(defun mouse-sel-restore-original-bindings () - "Restore the original bindings for `mouse-sel-bound-events'." - (mapc (function - (lambda (binding) - (if (cdr binding) - (global-set-key (car binding) (cdr binding)) - (global-unset-key (car binding))))) - mouse-sel-original-bindings)) - (defun mouse-sel-bindings (bind) (cond @@ -266,8 +247,18 @@ primary selection and region." ((and bind mouse-sel-default-bindings) ;; Save original bindings - (mouse-sel-save-original-bindings) - + (setq mouse-sel-original-bindings nil) + (mapc (function + (lambda (event) + (setq mouse-sel-original-bindings + (cons (cons event (lookup-key global-map event)) + mouse-sel-original-bindings)))) + mouse-sel-bound-events) + (setq mouse-sel-original-interprogram-cut-function + interprogram-cut-function + mouse-sel-original-interprogram-paste-function + interprogram-paste-function) + ;; Primary selection bindings. ;; ;; Bind keys to `ignore' instead of unsetting them because @@ -295,8 +286,17 @@ primary selection and region." ((not bind) ;; Restore original bindings - (mouse-sel-restore-original-bindings)) - + (mapc (function + (lambda (binding) + (if (cdr binding) + (global-set-key (car binding) (cdr binding)) + (global-unset-key (car binding))))) + mouse-sel-original-bindings) + (setq interprogram-cut-function + mouse-sel-original-interprogram-cut-function + interprogram-paste-function + mouse-sel-original-interprogram-paste-function)) + )) ;;=== Command Variable ==================================================== |