Subject: Re: bug#66041: 30.0.50; Should 'flymake-note-echo' inherit from 'compilation-info'?

From: João Távora <[email-masked]>
Date: Mon, 25 Sep 2023 17:55:45 +0100

On Mon, Sep 25, 2023 at 3:19 PM Eli Zaretskii <[email-masked]> wrote:
>
> > From: João Távora <[email-masked]>
> > Date: Mon, 25 Sep 2023 14:52:07 +0100
> > Cc: [email-masked], [email-masked]
> >
> > > Does this explain what happens?
> >
> > Yes, it does.  Although I would expect that when two overlays
> > that compete for the same resource (in this case, the
> > same  portion of the left fringe) the overlay with the highest
> > priority would win that competition -- not the "last one".
>
> There's no built-in mechanism for the display engine to do that, and
> the fact that overlays are processed one by one in the order they are
> encountered doesn't help: when processing an overlay the display
> engine has no idea there are other overlays in the same screen line
> that will "compete" for the fringe display.

Could it be changed, as it analyses a line, to keep a record of
which overlays have already touched the left fringe for that line
(and then clear this record as it moves on to other lines).

This would be easiest to implement if the the display doesn't
sometimes consider only a fraction of a line.I don't know if this
holds true.  I assume it does, since otherwise that would mean that
if a line is scrolled near the beginning and truncated, the current
"last one" criteria you described before also doesn't always
hold true.

> Did you try using that here?

No.  It should work, though, but seems fairly complex to implement.
Also sounds a bit slow, though the optimizations maybe solve that.

IMHO this should be automatic and based on relative overlay
priorities.  It's too heavy a burden to place on overlay
clients.

João