| Server IP : 217.160.0.212 / Your IP : 216.73.217.5 Web Server : Apache System : Linux www 6.18.52-i1-ampere #1203 SMP Mon Sep 14 18:29:59 CEST 2026 aarch64 User : sws1073854427 ( 1073854427) PHP Version : 8.4.23 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /usr/share/emacs/28.2/lisp/ |
Upload File : |
;ELC
;;; Compiled
;;; in Emacs version 28.2
;;; with all optimizations.
#@45 Internal to `mouse-drag-secondary-pasting'.
(defvar mouse-copy-last-paste-start nil (#$ . 84))
#@45 Internal to `mouse-drag-secondary-pasting'.
(defvar mouse-copy-last-paste-end nil (#$ . 185))
#@99 Set to enable mouse-copy-work-around-drag-bug.
See `mouse-copy-work-around-drag-bug' for details.
(defvar mouse-copy-have-drag-bug nil (#$ . 285))
#@657 Code to work around a bug in post-19.29 Emacs: it drops mouse-drag events.
The problem occurs under XFree86-3.1.1 (X11R6pl11) but not under X11R5,
and under post-19.29 but not early versions of Emacs.
19.29 and 19.30 seems to drop mouse drag events
sometimes. (Reproducible under XFree86-3.1.1 (X11R6pl11) and
XFree86-3.1.2 under Linux 1.2.x. Doesn't occur under X11R5 and SunOS
4.1.1.)
To see if you have the problem:
Disable this routine (with (setq mouse-copy-have-drag-bug nil)).
Click and drag for a while.
If highlighting stops tracking, you have the bug.
If you have the bug (or the real fix :-), please let me know.
(fn START-EVENT END-EVENT)
(defalias 'mouse-copy-work-around-drag-bug #[514 "\212\301!\302!\303\211@\262!\211q\210\304\305!\305!\211:\203. \3068\250\203. \3068\262\2021 \307\262S#\211@A@\203E \310#\210\202L \311\305!\"\312\313\314#\210q\210\315\316{\"\266\206)\207" [mouse-secondary-overlay event-start event-end window-buffer mouse-start-end posn-point 2 1 move-overlay make-overlay overlay-put face secondary-selection gui-set-selection SECONDARY] 12 (#$ . 439)])
#@260 Drag out a secondary selection, then paste it at the current point.
To test this function, evaluate:
(global-set-key [M-down-mouse-1] \='mouse-drag-secondary-pasting)
put the point at one place, then click and drag over some other region.
(fn START-EVENT)
(defalias 'mouse-drag-secondary-pasting #[257 "\203% \211\211:\203 \3048\250\203 \3048\262\202 \305\262\304Y\203% |\210\306!\203? \n\2034 \307\"\210`\310\311!c\210`\211\207\312\211\207" [mouse-copy-last-paste-start mouse-copy-last-paste-end mouse-copy-have-drag-bug last-input-event 2 1 mouse-drag-secondary mouse-copy-work-around-drag-bug gui-get-selection SECONDARY nil] 4 (#$ . 1565) "e"])
#@352 Kill the text in the secondary selection, but leave the selection set.
This command is like \[mouse-kill-secondary] (that is, the secondary
selection is deleted and placed in the kill ring), except that it also
leaves the secondary buffer active on exit.
This command was derived from mouse-kill-secondary in emacs-19.28
by johnh@ficus.cs.ucla.edu.
(defalias 'mouse-kill-preserving-secondary #[0 "\301 \211GS\234\302!<\203 \303\304!\211@\262!\202 p=\204$ \305\306!\210\266r\302!q\210\307\310!\311!\")\207" [mouse-secondary-overlay this-command-keys overlay-buffer window-buffer event-start error "Select or click on the buffer where the secondary selection is" kill-region overlay-start overlay-end] 6 (#$ . 2240) nil])
#@87 Sweep out a secondary selection, then move it to the current point.
(fn START-EVENT)
(defalias 'mouse-drag-secondary-moving #[257 "\300!\205
\301 \210\302\303!c\207" [mouse-drag-secondary mouse-kill-preserving-secondary gui-get-selection SECONDARY] 3 (#$ . 2979) "e"])
(provide 'mouse-copy)