all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "Jan D." <jan.h.d@swipnet.se>
To: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: emacs-devel@gnu.org
Subject: Re: Cairo branch.
Date: Thu, 12 Feb 2015 16:01:11 +0100	[thread overview]
Message-ID: <54DCC037.7030202@swipnet.se> (raw)
In-Reply-To: <jwvpp9g86gf.fsf-monnier+emacs@gnu.org>

Stefan Monnier skrev den 2015-02-11 22:49:
>> I have pushed a cairo branch.
>
> Can you give a short summary of what it brings (and/or what it could
> bring)?
>


YAMAMOTO Mitsuharu made the patch to demonstrate printing, so that is 
new (see x-print-frames-dialog or the Printing section in xfns.c).

Otherwise it is just a step to keep up with the times, i.e. server side 
(as in X11 server) rendering is going away as it seems.  So Emacs must 
at some point develop client side (cairo) rendering.

It could form a basis for porting to other window systems like Wayland, 
that has no rendering of its own, but relies on cairo.  That takes more 
effort, the cairo branch is X only.  Note that porting to Wayland isn't 
as simple as switching rendering, the whole event handling must be 
implemented.

As for user visible changes, there is nothing, except printing.  The 
current X rendering is still better, for speed and image support.
Image support when using cairo is lacking, PNG only.  Work needs to be 
done here (hint, hint :-).

I think using cairo and going double buffer in Emacs is easier than 
making X double buffered.  The main obstacle to double buffering is the 
way Emacs does redraw, i.e. not in the GUI loop, but outside it.  This 
is tricky to change, as there are lots of flags in the redraw code that 
gets set and reset at various points.  Figuring all that stuff out is 
not easy.

	Jan D.




  reply	other threads:[~2015-02-12 15:01 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-02-11 15:16 Cairo branch Jan Djärv
2015-02-11 21:49 ` Stefan Monnier
2015-02-12 15:01   ` Jan D. [this message]
2015-02-12 16:04     ` Eli Zaretskii
2015-02-12 19:17       ` Jan D.
2015-02-12 20:06         ` Eli Zaretskii
2015-02-12 20:51           ` Jan D.
2015-02-12 16:18     ` Stefan Monnier
2015-02-12 19:20       ` Jan D.

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=54DCC037.7030202@swipnet.se \
    --to=jan.h.d@swipnet.se \
    --cc=emacs-devel@gnu.org \
    --cc=monnier@iro.umontreal.ca \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.