(xterm-mouse-event): Compute a timestamp using
[bpt/emacs.git] / lisp / xt-mouse.el
index de59563..39333f7 100644 (file)
   (let* ((type (- (xterm-mouse-event-read) #o40))
         (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)))
         (mouse (intern
                 ;; For buttons > 3, the release-event looks
                 ;; differently (see xc/programs/xterm/button.c,
          xterm-mouse-y y)
     (setq
      last-input-event
-     (if w
-        (list mouse (posn-at-x-y (- x left) (- y top) w t))
-       (list mouse
-            (append (list nil 'menu-bar) (nthcdr 2 (posn-at-x-y x y w t))))))))
+     (list mouse 
+          (let ((event (if w
+                           (posn-at-x-y (- x left) (- y top) w t)
+                         (append (list nil 'menu-bar)
+                                 (nthcdr 2 (posn-at-x-y x y w t))))))
+            (setcar (nthcdr 3 event) timestamp)
+            event)))))
 
 ;;;###autoload
 (define-minor-mode xterm-mouse-mode