[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Question about display engine
From: |
martin rudalics |
Subject: |
Re: Question about display engine |
Date: |
Fri, 6 Sep 2019 10:22:48 +0200 |
Thanks for the new patch. It applies and Emacs builds here on Windows
without problems.
> The issue is actually related with the fact that
> extend_face_id is never restarted to face_id when going back from an
> extend to a non_extend face between lines (for example when mark is
> active and the iterator crosses the pointer to outside the selected
> region like in the picture).
The end of the region is a stop position for the iterator. It can
occur in the middle of a line, so handling this problem at the
beginning of a display line would be neither sufficient nor useful.
When the stop position coinciding with the end of the region is
processed, the extend_face_id has to be reset to some new face_id at
that position.
I'm yet too silly to understand your patch so I cannot figure out
where this should happen. But the following parts appear somehow
suspicious:
/* Update the faces id and extend. */
it->face_id = new_face_id;
if (FACE_EXTENSIBLE_P (new_face))
it->extend_face_id = new_face_id;
At the end of the region this may get you a new_face that is not
extensible. But that means that you do not reset it->extend_face_id
although you should (IMHO).
Just to make sure that we see the same things: Is my interpretation
correct that in your screenshot you use blue for the region and black
as default background and the regions starts at line 9 of your window?
martin
- Re: Question about display engine, (continued)
- Re: Question about display engine, Eli Zaretskii, 2019/09/03
- Re: Question about display engine, martin rudalics, 2019/09/03
- Re: Question about display engine, Ergus, 2019/09/04
- Re: Question about display engine, martin rudalics, 2019/09/04
- Re: Question about display engine, Ergus, 2019/09/04
- Re: Question about display engine, martin rudalics, 2019/09/05
- Re: Question about display engine, Ergus, 2019/09/05
- Re: Question about display engine, Ergus, 2019/09/05
- Message not available
- Re: Question about display engine, Ergus, 2019/09/05
Re: Question about display engine, Ergus, 2019/09/05
- Re: Question about display engine,
martin rudalics <=
- Re: Question about display engine, Ergus, 2019/09/06
- Re: Question about display engine, martin rudalics, 2019/09/07
- Re: Question about display engine, Eli Zaretskii, 2019/09/07
- Re: Question about display engine, Eli Zaretskii, 2019/09/07
- Re: Question about display engine, Ergus, 2019/09/07
- Re: Question about display engine, martin rudalics, 2019/09/08
- Re: Question about display engine, Ergus, 2019/09/08
- Re: Question about display engine, martin rudalics, 2019/09/09
- Re: Question about display engine, Ergus, 2019/09/09
- Re: Question about display engine, Eli Zaretskii, 2019/09/09