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 Mac port Date: Wed, 17 Apr 2013 07:08:25 +0200 Message-ID: References: <83ip3p72mz.fsf@gnu.org> <83d2tw73h7.fsf@gnu.org> <8361zo6um1.fsf@gnu.org> <8338us6oz9.fsf@gnu.org> <838v4j55si.fsf@gnu.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 (Mac OS X Mail 6.3 \(1503\)) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1366175314 14841 80.91.229.3 (17 Apr 2013 05:08:34 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 17 Apr 2013 05:08:34 +0000 (UTC) Cc: Eli Zaretskii , Stefan Monnier , emacs-devel@gnu.org To: YAMAMOTO Mitsuharu Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Apr 17 07:08:38 2013 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1USKbl-0002KZ-Fa for ged-emacs-devel@m.gmane.org; Wed, 17 Apr 2013 07:08:37 +0200 Original-Received: from localhost ([::1]:37990 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1USKbl-0007C9-0s for ged-emacs-devel@m.gmane.org; Wed, 17 Apr 2013 01:08:37 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:52796) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1USKbh-0007C0-Ph for emacs-devel@gnu.org; Wed, 17 Apr 2013 01:08:35 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1USKbg-0000lh-N6 for emacs-devel@gnu.org; Wed, 17 Apr 2013 01:08:33 -0400 Original-Received: from mailout.melmac.se ([62.20.26.67]:42837) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1USKbg-0000kj-Fk for emacs-devel@gnu.org; Wed, 17 Apr 2013 01:08:32 -0400 Original-Received: from mail01.melmac.se (mail01.melmac.se [62.20.26.80]) by mailout.melmac.se (Postfix) with ESMTP id 185BBC312 for ; Wed, 17 Apr 2013 07:08:27 +0200 (CEST) Original-Received: (qmail 10654 invoked by uid 89); 17 Apr 2013 05:07:43 -0000 Original-Received: from h-46-59-42-18.na.cust.bahnhof.se (HELO coolsville.localdomain) (boel.djarv@bdtv.se@46.59.42.18) by mail01.melmac.se with ESMTPA; 17 Apr 2013 05:07:43 -0000 Original-Received: from [172.20.199.13] (zeplin [172.20.199.13]) by coolsville.localdomain (Postfix) with ESMTPSA id 3E8B37FA058; Wed, 17 Apr 2013 07:08:26 +0200 (CEST) In-Reply-To: X-Mailer: Apple Mail (2.1503) X-detected-operating-system: by eggs.gnu.org: Solaris 10 X-Received-From: 62.20.26.67 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:158970 Archived-At: 17 apr 2013 kl. 01:52 skrev YAMAMOTO Mitsuharu = : >=20 > My proof-of-concept cairo port was primarily intended for the printing > support, not for screen drawing (though it does both). >=20 > http://lists.gnu.org/archive/html/emacs-devel/2009-04/msg00390.html >=20 > Screen drawing in the cairo port is not so efficient for several > reasons. To make it more efficient, one would need some modest > modifications to the current drawing model in Emacs. >=20 > 1. Don't draw during redisplay, but mark the updated area dirty so > the upcoming exposure event can trigger the actual redraw for the > area to be updated. > 2. Restrict the actual drawings to those in response to exposure > events. This is the standard way in GTK+ and Cocoa. That would > make double-buffering straightforward in GTK+ builds. Double buffering in the Gtk+ is not turned off because of the expose = handler, but because Gtk+ can not double buffer text/images not drawn = with Gtk/Gdk primitives, and Emacs uses X primitives. So changing the = way expose handler works does absolutely nothing to make Gtk+ double = buffering easier. Jan D.