From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: William Xu Newsgroups: gmane.emacs.devel Subject: macosx(carbon): slow keyboard responsiveness bug fix Date: Mon, 19 Nov 2007 19:38:44 +0900 Organization: the Church of Emacs Message-ID: NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1195469161 16928 80.91.229.12 (19 Nov 2007 10:46:01 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 19 Nov 2007 10:46:01 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Nov 19 11:46:08 2007 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 1Iu48k-0001AC-T5 for ged-emacs-devel@m.gmane.org; Mon, 19 Nov 2007 11:46:07 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Iu48X-0005WK-81 for ged-emacs-devel@m.gmane.org; Mon, 19 Nov 2007 05:45:53 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Iu48T-0005WF-Ma for emacs-devel@gnu.org; Mon, 19 Nov 2007 05:45:49 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Iu48O-0005Vr-6J for emacs-devel@gnu.org; Mon, 19 Nov 2007 05:45:48 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Iu48O-0005Vo-1G for emacs-devel@gnu.org; Mon, 19 Nov 2007 05:45:44 -0500 Original-Received: from main.gmane.org ([80.91.229.2] helo=ciao.gmane.org) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1Iu48N-00030H-Bg for emacs-devel@gnu.org; Mon, 19 Nov 2007 05:45:43 -0500 Original-Received: from list by ciao.gmane.org with local (Exim 4.43) id 1Iu41t-0006U2-Kh for emacs-devel@gnu.org; Mon, 19 Nov 2007 10:39:01 +0000 Original-Received: from gw.community-engine.co.jp ([210.255.51.230]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 19 Nov 2007 10:39:01 +0000 Original-Received: from william.xwl by gw.community-engine.co.jp with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 19 Nov 2007 10:39:01 +0000 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 77 Original-X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: gw.community-engine.co.jp User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.50 (darwin) Cancel-Lock: sha1:+tY38swx7r7u0R3JTG0fTJLYRuY= 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:83629 Archived-At: Latest cvs trunk works on macosx again, finally ! This bug is introduced in: ,----[ src/macterm.c ] | Revision 1.237 - (view) (download) (as text) (annotate) - [select for diffs] | Thu Oct 25 02:38:38 2007 UTC (3 weeks, 4 days ago) by monnier | Branch: MAIN | CVS Tags: lexbind-base | Changes since 1.236: +20 -0 lines | Diff to previous 1.236 | | Make `window-system' into a keyboard-local variable (rather than | frame-local as done originally by multi-tty). | | * startup.el (window-system): Remove. Don't make it frame-local. | | * keyboard.h (struct kboard): Add Vwindow_system. | * keyboard.c (init_kboard): Set a default for Vwindow_system. | (mark_kboards): Mark Vwindow_system. | | * dispnew.c (syms_of_display) : Declare terminal-local. | (init_display): Don't set the obsolete `window-system' frame-param. | | * xterm.c (x_term_init): | * w32term.c (w32_create_terminal): | * term.c (init_tty): Set Vwindow_system. | * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the | multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system. | | * xfns.c (Fx_create_frame, x_create_tip_frame): | * w32fns.c (Fx_create_frame, x_create_tip_frame): | * macfns.c (Fx_create_frame): | Don't set the obsolete `window-system' frame-param. | | * frame.h (Qwindow_system): Remove. | * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well. | (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param. `---- After window-system is changed from frame-local to terminal-local variable, since macosx doesn't support MULTI_KBOARD, it looks like the window-system misses a chance to be properly set.(leaving it as t by default) I doubt other platforms that not yet support MULTI_KBOARD could have a similar problem. Index: src/macterm.c =================================================================== RCS file: /sources/emacs/emacs/src/macterm.c,v retrieving revision 1.238 diff -u -r1.238 macterm.c --- src/macterm.c 1 Nov 2007 03:46:14 -0000 1.238 +++ src/macterm.c 19 Nov 2007 10:28:13 -0000 @@ -12772,7 +12772,7 @@ mac_create_terminal (struct mac_display_info *dpyinfo) { struct terminal *terminal; - + terminal = create_terminal (); terminal->type = output_mac; @@ -12838,6 +12838,9 @@ if (current_kboard == initial_kboard) current_kboard = terminal->kboard; terminal->kboard->reference_count++; +#else + KBOARD *kbp = &the_only_kboard; + kbp->Vwindow_system = intern ("mac"); #endif return terminal; -- William http://williamxu.net9.org