;;; xt-mouse.el --- support the mouse when emacs run in an xterm
;; Copyright (C) 1994, 2000, 2001, 2002, 2003,
-;; 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+;; 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
;; Keywords: mouse, terminals
(defun turn-on-xterm-mouse-tracking-on-terminal (&optional terminal)
"Enable xterm mouse tracking on TERMINAL."
- (when (and xterm-mouse-mode (eq t (terminal-live-p terminal)))
+ (when (and xterm-mouse-mode (eq t (terminal-live-p terminal))
+ ;; Avoid the initial terminal which is not a termcap device.
+ ;; FIXME: is there more elegant way to detect the initial terminal?
+ (not (string= (terminal-name terminal) "initial_terminal")))
(unless (terminal-parameter terminal 'xterm-mouse-mode)
;; Simulate selecting a terminal by selecting one of its frames ;-(
(with-selected-frame (car (frames-on-display-list terminal))
;; Only send the disable command to those terminals to which we've already
;; sent the enable command.
(when (and (terminal-parameter terminal 'xterm-mouse-mode)
- (eq t (terminal-live-p terminal)))
+ (eq t (terminal-live-p terminal))
+ ;; Avoid the initial terminal which is not a termcap device.
+ ;; FIXME: is there more elegant way to detect the initial terminal?
+ (not (string= (terminal-name terminal) "initial_terminal")))
;; We could remove the key-binding and unset the `xterm-mouse-mode'
;; terminal parameter, but it seems less harmful to send this escape
;; command too many times (or to catch an unintended key sequence), than