# HG changeset patch # User Nick Roberts # Date 1174509683 0 # Node ID 384739d4e5e7c793b524a00a6f6bf25d9eaaee62 # Parent ee5fbf83e7324f9ad38f2ce8224d23124aa34a69 (xt-mouse-epoch): New variable. (xterm-mouse-event): Use float-time. diff -r ee5fbf83e732 -r 384739d4e5e7 lisp/xt-mouse.el --- a/lisp/xt-mouse.el Wed Mar 21 20:33:26 2007 +0000 +++ b/lisp/xt-mouse.el Wed Mar 21 20:41:23 2007 +0000 @@ -105,6 +105,8 @@ (defvar xterm-mouse-y 0 "Position of last xterm mouse event relative to the frame.") +(defvar xt-mouse-epoch nil) + ;; Indicator for the xterm-mouse mode. (defun xterm-mouse-position-function (pos) @@ -125,7 +127,11 @@ (x (- (xterm-mouse-event-read) #o40 1)) (y (- (xterm-mouse-event-read) #o40 1)) (time (current-time)) - (timestamp (+ ( * (nth 1 time) 1000 ) (/ (nth 2 time) 1000))) + (timestamp (truncate + (* 1000 + (- (float-time) + (or xt-mouse-epoch + (setq xt-mouse-epoch (float-time))))))) (mouse (intern ;; For buttons > 3, the release-event looks ;; differently (see xc/programs/xterm/button.c,