unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Jan Djärv" <jan.h.d@swipnet.se>
To: Eli Zaretskii <eliz@gnu.org>
Cc: "Óscar Fuentes" <ofv@wanadoo.es>, emacs-devel@gnu.org
Subject: Re: Emacs and Gnome Canvas
Date: Thu, 15 Jul 2010 09:53:21 +0200	[thread overview]
Message-ID: <4C3EBE71.7090905@swipnet.se> (raw)
In-Reply-To: <4C3EBCDC.8050709@swipnet.se>

And besides this, you would have to have a GnomeCanvas per Emacs window.

	Jan D.

Jan Djärv skrev 2010-07-15 09.46:
>
>
> Eli Zaretskii skrev 2010-07-15 08.55:
>>
>> . Canvas seems to need GTK+. What does this mean for platforms where
>> GTK+ is unavailable or not maintained? What about supporting the
>> TTY? Do these issues mean we will need to keep the existing
>> display engine in parallel with the Canvas-based one?
>
> Gtk+ is required, you would have to have a parallel display engine for all
> non-Gtk+ cases.
>>
>> . The Canvas redisplay runs from the GTK+ idle handlers. In Emacs,
>> the idle loop, in addition to triggering redisplay, also checks for
>> input from the keyboard and from subprocesses. Does this mean that
>> part of the input handling will need to be run by GTK+?
>
> Yes. Now we run the Gtk+ event loop (or actually not the loop, just a step)
> only when we know there is events pending. Again, parallel implementation for
> non-Gtk+. But normal redisplay for Gtk+ also happens in idle handlers. We are
> in the Gtk+ event loop often enough for this to happen often enough. Sometimes
> though (scroll bars mainly) we force redisplay in Gtk+. I assume you can do
> that for the Canvas also.
>
>>
>> . Canvas redisplay is caused by requests from the application to
>> update some "canvas item" when the underlying application's objects
>> are modified; these requests are then served when GTK+ idle
>> handlers are run. Emacs display engine works differently: changes
>> that require redisplay are not considered until redisplay is
>> entered; the "requests" to update the display are implicitly
>> recorded in the buffers and in the various related data structures
>> (text properties and overlays, display strings, etc.), but not
>> explicitly translated to display terms until redisplay time, and as
>> an inherent part of redisplay itself. These two very different
>> models will need to be reconciled in some reasonably efficient way.
>
> The changes that require redisplay would have to notify the Canvas that things
> changed. I think this style is more efficient.
>
> But I'm not sure it is the right way to go for Emacs unless Gtk+ can run on
> all platforms now. Even if it can, do we want Gtk+ look and feel on W32, OSX,
> Nextstep etc.? TTY is still a separate issue though.
>
> Jan D.



  reply	other threads:[~2010-07-15  7:53 UTC|newest]

Thread overview: 118+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-07-13 19:02 Emacs, QT and Cairo Was: Re: Efforts to attract more users? Stephen Eilert
2010-07-13 19:29 ` Chong Yidong
2010-07-13 19:51   ` Chad Brown
2010-07-13 20:48 ` Jan Djärv
2010-07-13 22:30   ` Emacs, QT and Cairo Chad Brown
2010-07-14  1:39     ` Stephen J. Turnbull
2010-07-14  2:32       ` Óscar Fuentes
2010-07-14  7:29     ` Eli Zaretskii
2010-07-14 18:37       ` Chad Brown
2010-07-14 20:45         ` Eli Zaretskii
2010-07-14 21:24           ` Óscar Fuentes
2010-07-15  6:55             ` Emacs and Gnome Canvas (was: Emacs, QT and Cairo) Eli Zaretskii
2010-07-15  7:46               ` Emacs and Gnome Canvas Jan Djärv
2010-07-15  7:53                 ` Jan Djärv [this message]
2010-07-15  8:36                   ` joakim
2010-07-15  8:40                   ` Eli Zaretskii
2010-07-15  8:50                     ` Jan Djärv
2010-07-15  8:38                 ` Eli Zaretskii
2010-07-15  8:48                   ` Jan Djärv
2010-07-15  8:59                     ` Eli Zaretskii
2010-07-15  9:29                       ` Jan Djärv
2010-07-15 10:24                         ` Eli Zaretskii
2010-07-15 10:54                           ` Jan Djärv
2010-07-15 12:27                             ` Eli Zaretskii
2010-07-15 14:18                               ` Óscar Fuentes
2010-07-15 15:14                                 ` Eli Zaretskii
2010-07-16  6:33                                   ` Miles Bader
2010-07-15 16:00                                 ` Chong Yidong
2010-07-15 16:27                                   ` Óscar Fuentes
2010-07-15 17:06                                     ` Eli Zaretskii
2010-07-15 17:48                                       ` Óscar Fuentes
2010-07-15 18:06                                         ` Eli Zaretskii
2010-07-15 21:27                                           ` Óscar Fuentes
2010-07-16  8:17                                             ` Eli Zaretskii
2010-07-16 14:24                                               ` Óscar Fuentes
2010-07-16 15:19                                                 ` Eli Zaretskii
2010-07-16 16:07                                                   ` Óscar Fuentes
2010-07-16 18:43                                                     ` Eli Zaretskii
2010-07-16 21:21                                                       ` Óscar Fuentes
2010-07-16 23:44                                                         ` Chad Brown
2010-07-17  0:08                                                           ` Óscar Fuentes
2010-07-17  7:57                                                             ` Eli Zaretskii
2010-07-17  8:34                                                               ` Andreas Schwab
2010-07-17  9:10                                                                 ` Eli Zaretskii
2010-07-17  9:40                                                                   ` Andreas Schwab
2010-07-17 10:23                                                                     ` Eli Zaretskii
2010-07-17 13:49                                                                       ` Óscar Fuentes
2010-07-17  7:27                                                         ` Eli Zaretskii
2010-07-17 13:42                                                           ` Óscar Fuentes
2010-07-17 15:27                                                             ` Eli Zaretskii
2010-07-17 21:53                                                               ` Óscar Fuentes
2010-07-18  1:42                                                               ` Miles Bader
2010-07-18  2:45                                                                 ` Óscar Fuentes
2010-07-18  8:06                                                                   ` Chad Brown
2010-07-18 14:43                                                                     ` Óscar Fuentes
2010-07-21  8:34                                                             ` Stefan Monnier
2010-07-22 14:26                                         ` Stefan Monnier
2010-07-15 17:22                                     ` Chong Yidong
2010-07-15 18:02                                       ` Óscar Fuentes
2010-07-15 22:10                                         ` Stephen Eilert
2010-07-16  7:52                                           ` Eli Zaretskii
2010-07-16  2:14                                   ` YAMAMOTO Mitsuharu
2010-07-16  7:33                                     ` Jan Djärv
2010-07-16  9:52                                       ` Eli Zaretskii
2010-07-16 10:15                                         ` YAMAMOTO Mitsuharu
2010-07-16 10:39                                           ` Eli Zaretskii
2010-07-16 12:42                                             ` Jan Djärv
2010-07-17  3:50                                               ` YAMAMOTO Mitsuharu
2010-07-17  8:33                                                 ` Jan Djärv
2010-07-17  8:38                                                   ` YAMAMOTO Mitsuharu
2010-07-17  9:18                                                     ` Jan Djärv
2010-07-17  9:25                                                       ` YAMAMOTO Mitsuharu
2010-07-17 10:26                                                         ` Jan Djärv
2010-07-18  3:51                                                           ` YAMAMOTO Mitsuharu
2010-07-18  7:10                                                             ` Jan Djärv
2010-07-18  7:45                                                               ` YAMAMOTO Mitsuharu
2010-07-18  9:06                                                                 ` Jan Djärv
2010-07-19  0:50                                                                   ` YAMAMOTO Mitsuharu
2010-07-17  1:00                                             ` YAMAMOTO Mitsuharu
2010-07-17  1:40                                               ` YAMAMOTO Mitsuharu
2010-07-17  8:04                                               ` Eli Zaretskii
2010-07-17  8:25                                                 ` YAMAMOTO Mitsuharu
2010-07-16 12:21                                         ` Jan Djärv
2010-07-16 10:01                                       ` YAMAMOTO Mitsuharu
2010-07-16 12:26                                         ` Jan Djärv
2010-07-16 14:05                                           ` Davis Herring
2010-07-16 17:38                                             ` Jan Djärv
2010-07-17  1:12                                               ` YAMAMOTO Mitsuharu
2010-07-17  7:14                                                 ` Eli Zaretskii
2010-07-17  7:31                                                   ` YAMAMOTO Mitsuharu
2010-07-17  8:12                                                     ` Eli Zaretskii
2010-07-17  8:32                                                       ` YAMAMOTO Mitsuharu
2010-07-15 14:24                               ` Jan Djärv
2010-07-15 14:35                                 ` Eli Zaretskii
2010-07-15 15:16                                   ` Jan Djärv
2010-07-15 15:20                                     ` Eli Zaretskii
2010-07-15 17:14                                       ` Jan Djärv
2010-07-15  9:20               ` Andy Wingo
2010-07-15 18:41               ` Emacs and Gnome Canvas (was: Emacs, QT and Cairo) Dirk-Jan C. Binnema
2010-07-15 21:51                 ` Emacs and Gnome Canvas Óscar Fuentes
2010-07-15 22:21                   ` Bruce Stephens
2010-07-27 21:24     ` Emacs, QT and Cairo Stefan Monnier
2010-07-27 21:36       ` Chad Brown
2010-07-28  3:05         ` Eli Zaretskii
2010-07-14  8:59 ` Emacs, QT and Cairo Was: Re: Efforts to attract more users? YAMAMOTO Mitsuharu
2010-07-14  9:41   ` Emacs, QT and Cairo David Engster
2010-07-14  9:56     ` Jan Djärv
2010-07-14 13:50     ` Drew Adams
2010-07-14 14:14       ` David Engster
2010-07-14 14:28         ` joakim
2010-07-14 15:41   ` Emacs, QT and Cairo Was: Re: Efforts to attract more users? Chong Yidong
2010-07-14 16:17     ` joakim
2010-07-14 18:04       ` Jan Djärv
2010-07-15 23:15 ` Andrew W. Nosenko
2010-07-16  7:41   ` Jan Djärv
2010-07-16 10:24     ` Andrew W. Nosenko
2010-07-16 12:36       ` Jan Djärv
  -- strict thread matches above, loose matches on Subject: below --
2010-07-17 19:02 Emacs and Gnome Canvas grischka

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

  List information: https://www.gnu.org/software/emacs/

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

  git send-email \
    --in-reply-to=4C3EBE71.7090905@swipnet.se \
    --to=jan.h.d@swipnet.se \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=ofv@wanadoo.es \
    /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 public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).