(terminal-parameter nil 'xterm-mouse-y))))
pos)
-(defun xterm-mouse-truncate-wrap (f)
- "Truncate with wrap-around."
- (condition-case nil
- ;; First try the built-in truncate, in case there's no overflow.
- (truncate f)
- ;; In case of overflow, do wraparound by hand.
- (range-error
- ;; In our case, we wrap around every 3 days or so, so if we assume
- ;; a maximum of 65536 wraparounds, we're safe for a couple years.
- ;; Using a power of 2 makes rounding errors less likely.
- (let* ((maxwrap (* 65536 2048))
- (dbig (truncate (/ f maxwrap)))
- (fdiff (- f (* 1.0 maxwrap dbig))))
- (+ (truncate fdiff) (* maxwrap dbig))))))
+(define-obsolete-function-alias 'xterm-mouse-truncate-wrap 'truncate "27.1")
(defcustom xterm-mouse-utf-8 nil
"Non-nil if UTF-8 coordinates should be used to read mouse coordinates.
(y (nth 2 click))
;; Emulate timestamp information. This is accurate enough
;; for default value of mouse-1-click-follows-link (450msec).
- (timestamp (xterm-mouse-truncate-wrap
+ (timestamp (truncate
(* 1000
(- (float-time)
(or xt-mouse-epoch
(left (nth 0 ltrb))
(top (nth 1 ltrb))
(posn (if w
- (posn-at-x-y (- x left) (- y top) w t)
- (append (list nil 'menu-bar)
+ (posn-at-x-y (- x left) (- y top) w t)
+ (append (list nil 'menu-bar)
(nthcdr 2 (posn-at-x-y x y)))))
(event (list type posn)))
(setcar (nthcdr 3 posn) timestamp)