aboutsummaryrefslogtreecommitdiffstats
path: root/lisp
diff options
context:
space:
mode:
authorStefan Monnier2022-03-24 05:32:10 -0400
committerStefan Monnier2022-03-24 05:32:10 -0400
commit288ecdf90cb971a3871f7e99e3948176ae4f0e85 (patch)
treee1f8bee8d50fc1325231f190536bd6246ae2abd8 /lisp
parentf7a90cc85b470578133d6b143d2740995ad4496b (diff)
downloademacs-288ecdf90cb971a3871f7e99e3948176ae4f0e85.tar.gz
emacs-288ecdf90cb971a3871f7e99e3948176ae4f0e85.zip
* lisp/select.el (xselect-convert-to-targets): Use `delete-dups` and `delq`
Diffstat (limited to 'lisp')
-rw-r--r--lisp/select.el31
1 files changed, 12 insertions, 19 deletions
diff --git a/lisp/select.el b/lisp/select.el
index 36452776e9a..90970f989a8 100644
--- a/lisp/select.el
+++ b/lisp/select.el
@@ -547,25 +547,18 @@ two markers or an overlay. Otherwise, it is nil."
547 (xselect--int-to-cons len)))) 547 (xselect--int-to-cons len))))
548 548
549(defun xselect-convert-to-targets (selection _type value) 549(defun xselect-convert-to-targets (selection _type value)
550 ;; return a vector of atoms, but remove duplicates first. 550 ;; Return a vector of atoms, but remove duplicates first.
551 (let* ((all (cons 'TIMESTAMP 551 (apply #'vector
552 (cons 'MULTIPLE 552 (delete-dups
553 (mapcar (lambda (conv) 553 `( TIMESTAMP MULTIPLE
554 (if (or (not (consp (cdr conv))) 554 . ,(delq '_EMACS_INTERNAL
555 (funcall (cadr conv) selection 555 (mapcar (lambda (conv)
556 (car conv) value)) 556 (if (or (not (consp (cdr conv)))
557 (car conv) 557 (funcall (cadr conv) selection
558 '_EMACS_INTERNAL)) 558 (car conv) value))
559 selection-converter-alist)))) 559 (car conv)
560 (rest all)) 560 '_EMACS_INTERNAL))
561 (while rest 561 selection-converter-alist))))))
562 (cond ((memq (car rest) (cdr rest))
563 (setcdr rest (delq (car rest) (cdr rest))))
564 ((eq (car (cdr rest)) '_EMACS_INTERNAL)
565 (setcdr rest (cdr (cdr rest))))
566 (t
567 (setq rest (cdr rest)))))
568 (apply 'vector all)))
569 562
570(defun xselect-convert-to-delete (selection _type _value) 563(defun xselect-convert-to-delete (selection _type _value)
571 (gui-backend-set-selection selection nil) 564 (gui-backend-set-selection selection nil)