From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: =?utf-8?Q?=C3=93scar_Fuentes?= Newsgroups: gmane.emacs.devel Subject: Re: Emacs and Gnome Canvas Date: Thu, 15 Jul 2010 16:18:47 +0200 Message-ID: <87fwzkbzg8.fsf@telefonica.net> References: <4C3CD120.4040905@swipnet.se> <5A91499A-0470-43FD-9F48-560CEAD3424C@mit.edu> <83wrsyr068.fsf@gnu.org> <83iq4hhjww.fsf@gnu.org> <87sk3lbvv0.fsf@telefonica.net> <83hbk1grnq.fsf@gnu.org> <4C3EBCDC.8050709@swipnet.se> <83d3upgmwj.fsf@gnu.org> <4C3ECB4C.6050208@swipnet.se> <83aaptgly1.fsf@gnu.org> <4C3ED4F9.4080603@swipnet.se> <83630hgi0r.fsf@gnu.org> <4C3EE8D6.3020607@swipnet.se> <8339vlgcax.fsf@gnu.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: dough.gmane.org 1279203614 28626 80.91.229.12 (15 Jul 2010 14:20:14 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Thu, 15 Jul 2010 14:20:14 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Jul 15 16:20:13 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.69) (envelope-from ) id 1OZPIG-0000D5-HX for ged-emacs-devel@m.gmane.org; Thu, 15 Jul 2010 16:20:12 +0200 Original-Received: from localhost ([127.0.0.1]:35155 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OZPIC-0007rn-DK for ged-emacs-devel@m.gmane.org; Thu, 15 Jul 2010 10:20:04 -0400 Original-Received: from [140.186.70.92] (port=38573 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OZPI1-0007nY-BR for emacs-devel@gnu.org; Thu, 15 Jul 2010 10:20:00 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OZPH7-0001v9-GC for emacs-devel@gnu.org; Thu, 15 Jul 2010 10:19:02 -0400 Original-Received: from lo.gmane.org ([80.91.229.12]:42765) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OZPH7-0001ut-7v for emacs-devel@gnu.org; Thu, 15 Jul 2010 10:18:57 -0400 Original-Received: from list by lo.gmane.org with local (Exim 4.69) (envelope-from ) id 1OZPH5-0007vE-B8 for emacs-devel@gnu.org; Thu, 15 Jul 2010 16:18:55 +0200 Original-Received: from 83.42.13.171 ([83.42.13.171]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Thu, 15 Jul 2010 16:18:55 +0200 Original-Received: from ofv by 83.42.13.171 with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Thu, 15 Jul 2010 16:18:55 +0200 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 23 Original-X-Complaints-To: usenet@dough.gmane.org X-Gmane-NNTP-Posting-Host: 83.42.13.171 User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) Cancel-Lock: sha1:I5nazksdSOqZpNnxT9tQppqLx08= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) 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:127353 Archived-At: Eli Zaretskii writes: [snip] Thanks Eli and Jan for your comments. >From your discussion it seems that the only serious "problem" with Emacs and Gnome's canvas (or any other canvas) is coupling the Emacs display system with it. AFAIK the display system have evolved from the tty one by incremental updates, which makes it very complex and hard to maintain. My plan is radical: bypass the current Emacs display system and implement a new one on top of the canvas. This would be purely event-driven, hopefully with very little special cases for the platforms where Emacs runs, and substantially simpler because the canvas would take care of the low level chores. On the long term, this could allow to remove the GUI code from the current display system and left the tty code alone. If the display system is decoupled from the buffer-handling code, the high-level event system (Elisp hooks, etc) and the rest of Emacs in general, it could be doable with a reasonable amount of work for a single developer. Maybe I'm being too optimistic.