[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Emacs canvas support

From: Eli Zaretskii
Subject: Re: Emacs canvas support
Date: Thu, 30 Apr 2020 21:42:49 +0300

> From: Stefan Monnier <address@hidden>
> Cc: address@hidden,  address@hidden
> Date: Thu, 30 Apr 2020 14:22:02 -0400
> > I don't think I understand how this would fit into the current
> > redisplay framework.
> I think it should basically not require touching xdisp.c.
> It should work at the level of `update_window` only.

I _am_ talking about update_frame and update_window.  They have their
own ideas about which parts of the screen need to be updated and which
don't, and how they should be updated (whether by scrolling or by
deletion and insertion or by overwriting).  Those ideas are based on
the assumption that they know what is currently on the glass.  That
knowledge comes from the glyph matrices.  If the canvasses are drawn
independently of the glyph matrices, then update_window will make
wrong decisions, and the result will be a royal mess on the screen.

Maybe I'm missing something, but you didn't actually explain on any
level of detail how do you propose to "compose" the "normal" display
with the canvasses.  How about if you try to describe your ideas in
two simple use cases: (1) when a canvas that was on display,
overlaying some text, is deleted (and nothing else is changed); and
(2) when update_window decides to scroll some part of a window which
has a canvas partially overlaying the text in the part to be scrolled?

reply via email to

[Prev in Thread] Current Thread [Next in Thread]