X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=lisp%2Fmouse.el;h=54dafc70ce29024c42bf521eff7f54ac0a7a4839;hb=fb429e0e5132c44445e4bf2dc7af356e00ade2e5;hp=c42c8aa2f06c56541d95ca2bfca2129483f1600b;hpb=113b194be934327de99a168d809271db252c07c4;p=chise%2Fxemacs-chise.git diff --git a/lisp/mouse.el b/lisp/mouse.el index c42c8aa..54dafc7 100644 --- a/lisp/mouse.el +++ b/lisp/mouse.el @@ -114,11 +114,14 @@ A mark is pushed, so that the inserted text lies between point and mark." (defun insert-selection (&optional check-cutbuffer-p move-point-event) "Insert the current selection into buffer at point." (interactive "P") + ;; we fallback to the clipboard if the current selection is not existent (let ((text (if check-cutbuffer-p - (or (condition-case () (get-selection) (error ())) + (or (get-selection-no-error) (get-cutbuffer) - (error "No selection or cut buffer available")) - (get-selection)))) + (get-selection-no-error 'CLIPBOARD) + (error "No selection, clipboard or cut buffer available")) + (or (get-selection-no-error) + (get-selection 'CLIPBOARD))))) (cond (move-point-event (mouse-set-point move-point-event) (push-mark (point)))