From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: =?ISO-8859-1?Q?Jan_Dj=E4rv?= Newsgroups: gmane.emacs.devel Subject: Re: Emacs 23 Mac port Date: Tue, 12 Jan 2010 10:28:46 +0100 Message-ID: <4B4C40CE.60106@swipnet.se> References: <2282B3B4-D844-4E26-BB94-9F79EEA2E847@gmail.com> <4B4C2FD7.8070406@swipnet.se> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: Quoted-Printable X-Trace: ger.gmane.org 1263288824 24971 80.91.229.12 (12 Jan 2010 09:33:44 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 12 Jan 2010 09:33:44 +0000 (UTC) Cc: Leo , emacs-devel@gnu.org To: YAMAMOTO Mitsuharu Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Jan 12 10:33:36 2010 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 1NUd84-0004HU-Dk for ged-emacs-devel@m.gmane.org; Tue, 12 Jan 2010 10:33:36 +0100 Original-Received: from localhost ([127.0.0.1]:46778 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NUd84-00044X-QS for ged-emacs-devel@m.gmane.org; Tue, 12 Jan 2010 04:33:36 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NUd3b-0007a9-4j for emacs-devel@gnu.org; Tue, 12 Jan 2010 04:28:59 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NUd3W-0007WE-CP for emacs-devel@gnu.org; Tue, 12 Jan 2010 04:28:58 -0500 Original-Received: from [199.232.76.173] (port=34159 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NUd3W-0007W2-0z for emacs-devel@gnu.org; Tue, 12 Jan 2010 04:28:54 -0500 Original-Received: from proxy2.bredband.net ([195.54.101.72]:46157) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1NUd3Q-0000m4-Sm for emacs-devel@gnu.org; Tue, 12 Jan 2010 04:28:53 -0500 Original-Received: from ipb2.telenor.se (195.54.127.165) by proxy2.bredband.net (7.3.140.3) id 4AD3E1BC02504588 for emacs-devel@gnu.org; Tue, 12 Jan 2010 10:28:47 +0100 X-SMTPAUTH-B2: X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AqhFALXPS0tV4S1uPGdsb2JhbACBRIZukxsBAQEBN7lyhDAEjTQ X-IronPort-AV: E=Sophos;i="4.49,261,1262559600"; d="scan'208";a="25941872" Original-Received: from c-6e2de155.25-1-64736c10.cust.bredbandsbolaget.se (HELO coolsville.localdomain) ([85.225.45.110]) by ipb2.telenor.se with ESMTP; 12 Jan 2010 10:28:46 +0100 Original-Received: from [172.20.199.2] (gaffa [172.20.199.2]) by coolsville.localdomain (Postfix) with ESMTP id 5386B7FA01A; Tue, 12 Jan 2010 10:28:46 +0100 (CET) User-Agent: Thunderbird 2.0.0.23 (X11/20090817) In-Reply-To: X-detected-operating-system: by monty-python.gnu.org: Genre and OS details not recognized. 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:119856 Archived-At: YAMAMOTO Mitsuharu skrev: >>>>>> On Tue, 12 Jan 2010 09:16:23 +0100, Jan Dj=E4rv said: >=20 >>> This seems to be because Apple event handlers are bound in >>> special-event-map. A similar behavior can be observed with >>> dran-and-drop, which is also bound in special-event-map, even on >>> the GTK+ build. >>> >>> 1. emacs -Q >>> 2. Drag-and-drop some C file (such as foo.c) into the Emacs frame. >>> 3. Click the Emacs frame title bar to get focus. >>> 4. C-c C-e >>> =3D> not found though it is bound to c-macro-expand >>> 5. C-c C-e >>> =3D> handled correctly >>> >=20 >> I've checked in a fix for this. Keymaps weren't recalculated after >> a command from the special event map was run. >=20 > Thanks. But then a special event such as SIGUSR1 cancels an > incomplete key sequence being typed. How about doing this only when > the current buffer is changed by the special event? >=20 It makes sense. Can you install it? A dnd in the middle of a key sequence would still cancel the sequence, bu= t I=20 guess we can't do any better in that case? Jan D. > YAMAMOTO Mitsuharu > mituharu@math.s.chiba-u.ac.jp >=20 > =3D=3D=3D modified file 'src/keyboard.c' > *** src/keyboard.c 2010-01-12 08:42:52 +0000 > --- src/keyboard.c 2010-01-12 08:46:27 +0000 > *************** > *** 3187,3192 **** > --- 3187,3193 ---- > int count =3D SPECPDL_INDEX (); > record_single_kboard_state (); > #endif > + struct buffer *prev_buffer =3D current_buffer; > =20 > last_input_event =3D c; > Fcommand_execute (tem, Qnil, Fvector (1, &last_input_event), Qt= ); > *************** > *** 3205,3214 **** > unbind_to (count, Qnil); > #endif > =20 > ! /* The command may have changed the keymaps. Pretend there is = input > ! in another keyboard and return. This will recalculate keyma= ps. */ > ! c =3D make_number (-2); > ! goto exit; > } > =20 > /* Handle things that only apply to characters. */ > --- 3206,3221 ---- > unbind_to (count, Qnil); > #endif > =20 > ! if (current_buffer !=3D prev_buffer) > ! { > ! /* The command may have changed the keymaps. Pretend there > ! is input in another keyboard and return. This will > ! recalculate keymaps. */ > ! c =3D make_number (-2); > ! goto exit; > ! } > ! else > ! goto retry; > } > =20 > /* Handle things that only apply to characters. */