From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel,gmane.emacs.pretest.bugs Subject: Re: 23.0.60; customize or whatever to disable gpm-mouse-mode Date: Tue, 10 Jun 2008 17:14:09 -0400 Message-ID: References: <87ej7gzsg6.fsf@blah.blah> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1213132469 2056 80.91.229.12 (10 Jun 2008 21:14:29 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 10 Jun 2008 21:14:29 +0000 (UTC) Cc: emacs-pretest-bug@gnu.org To: Kevin Ryde Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Jun 10 23:15:12 2008 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1K6BBP-00065J-IZ for ged-emacs-devel@m.gmane.org; Tue, 10 Jun 2008 23:15:11 +0200 Original-Received: from localhost ([127.0.0.1]:33564 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1K6BAc-0000Zy-1Z for ged-emacs-devel@m.gmane.org; Tue, 10 Jun 2008 17:14:22 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1K6BAX-0000ZX-QY for emacs-devel@gnu.org; Tue, 10 Jun 2008 17:14:17 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1K6BAV-0000Z6-Bw for emacs-devel@gnu.org; Tue, 10 Jun 2008 17:14:16 -0400 Original-Received: from [199.232.76.173] (port=50800 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1K6BAV-0000Z3-50 for emacs-devel@gnu.org; Tue, 10 Jun 2008 17:14:15 -0400 Original-Received: from fencepost.gnu.org ([140.186.70.10]:35572) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1K6BAV-00010w-15 for emacs-devel@gnu.org; Tue, 10 Jun 2008 17:14:15 -0400 Original-Received: from mx10.gnu.org ([199.232.76.166]:36859) by fencepost.gnu.org with esmtp (Exim 4.67) (envelope-from ) id 1K6B8X-0000Ra-Po for emacs-pretest-bug@gnu.org; Tue, 10 Jun 2008 17:12:13 -0400 Original-Received: from Debian-exim by monty-python.gnu.org with spam-scanned (Exim 4.60) (envelope-from ) id 1K6BAR-00010a-Do for emacs-pretest-bug@gnu.org; Tue, 10 Jun 2008 17:14:14 -0400 Original-Received: from ironport2-out.pppoe.ca ([206.248.154.182]:54667 helo=ironport2-out.teksavvy.com) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1K6BAR-00010O-25 for emacs-pretest-bug@gnu.org; Tue, 10 Jun 2008 17:14:11 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AsoEAHmLTkhMCpcZ/2dsb2JhbACBW7AQ X-IronPort-AV: E=Sophos;i="4.27,619,1204520400"; d="scan'208";a="22382436" Original-Received: from smtp.pppoe.ca (HELO smtp.teksavvy.com) ([65.39.196.238]) by ironport2-out.teksavvy.com with ESMTP; 10 Jun 2008 17:14:09 -0400 Original-Received: from pastel.home ([76.10.151.25]) by smtp.teksavvy.com (Internet Mail Server v1.0) with ESMTP id QBY50009; Tue, 10 Jun 2008 17:14:09 -0400 Original-Received: by pastel.home (Postfix, from userid 20848) id 420C582F1; Tue, 10 Jun 2008 17:14:09 -0400 (EDT) In-Reply-To: <87ej7gzsg6.fsf@blah.blah> (Kevin Ryde's message of "Mon, 02 Jun 2008 08:44:09 +1000") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.60 (gnu/linux) X-detected-kernel: by monty-python.gnu.org: Genre and OS details not recognized. X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:98895 gmane.emacs.pretest.bugs:22603 Archived-At: > I had some trouble disabling gpm-mouse-mode, which is on by default in > the recent cvs. > I tried M-x customize-variable gpm-mouse-mode and saving, which turned > it off, but on the next startup it was enabled again. Then I tried > "(gpm-mouse-mode 0)" in my .emacs, but that didn't have any effect at > all. (defalias 'gpm-mouse-mode 'ignore) will do the trick. But no, this is not the way it should be, I agree. Can you try the patch below to see if it works more like what you'd expect? Stefan Index: lisp/t-mouse.el =================================================================== RCS file: /sources/emacs/emacs/lisp/t-mouse.el,v retrieving revision 1.21 diff -u -r1.21 t-mouse.el --- lisp/t-mouse.el 6 May 2008 07:57:53 -0000 1.21 +++ lisp/t-mouse.el 10 Jun 2008 21:12:51 -0000 @@ -41,6 +41,27 @@ ;; Prevent warning when compiling in an Emacs without gpm support. (declare-function gpm-mouse-start "term.c" ()) +(defun gpm-mouse-enable () + "Try to enable gpm mouse support on the current terminal." + (let ((activated nil)) + (unwind-protect + (progn + (unless (fboundp 'gpm-mouse-start) + (error "Emacs must be built with Gpm to use this mode")) + (when gpm-mouse-mode + (gpm-mouse-start) + (set-terminal-parameter nil 'gpm-mouse-active t) + (setq activated t))) + ;; If something failed to turn it on, try to turn it off as well, + ;; just in case. + (unless activated (gpm-mouse-disable))))) + +(defun gpm-mouse-disable () + "Try to disable gpm mouse support on the current terminal." + (when (fboundp 'gpm-mouse-stop) + (gpm-mouse-stop)) + (set-terminal-parameter nil 'gpm-mouse-active nil)) + ;;;###autoload (define-obsolete-function-alias 't-mouse-mode 'gpm-mouse-mode "23.1") ;;;###autoload @@ -52,21 +73,14 @@ This allows the use of the mouse when operating on a GNU/Linux console, in the same way as you can use the mouse under X11. It relies on the `gpm' daemon being activated." - :global t :group 'mouse - (let ((activated nil)) - (unwind-protect - (progn - (unless (fboundp 'gpm-mouse-start) - (error "Emacs must be built with Gpm to use this mode")) - (when gpm-mouse-mode - (gpm-mouse-start) - (setq activated t))) - ;; If the user asked to turn it off do that. - ;; If something failed to turn it on, try to turn it off as well, - ;; just in case. - (when (and (fboundp 'gpm-mouse-stop) (not activated)) - (setq gpm-mouse-mode nil) - (gpm-mouse-stop))))) + :global t :group 'mouse :init-value t + (dolist (terminal (terminal-list)) + (when (and (eq t (terminal-live-p terminal)) + (not (eq gpm-mouse-mode + (terminal-parameter terminal 'gpm-mouse-active)))) + ;; Simulate selecting a terminal by selecting one of its frames ;-( + (with-selected-frame (car (frames-on-display-list terminal)) + (if gpm-mouse-mode (gpm-mouse-enable) (gpm-mouse-disable)))))) (provide 't-mouse) Index: lisp/term/linux.el =================================================================== RCS file: /sources/emacs/emacs/lisp/term/linux.el,v retrieving revision 1.13 diff -u -r1.13 linux.el --- lisp/term/linux.el 7 Jun 2008 02:42:21 -0000 1.13 +++ lisp/term/linux.el 10 Jun 2008 21:12:51 -0000 @@ -9,7 +9,7 @@ ;; It can't really display underlines. (tty-no-underline) - (ignore-errors (gpm-mouse-mode 1)) + (ignore-errors (if gpm-mouse-mode (gpm-mouse-enable))) ;; Make Latin-1 input characters work, too. ;; Meta will continue to work, because the kernel