unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: Ergus <spacibba@aol.com>
Cc: 36858@debbugs.gnu.org, rotim.davor@gmail.com
Subject: bug#36858: 27.0.50; display bugs with display-fill-column-indicator-mode
Date: Wed, 07 Aug 2019 17:38:30 +0300	[thread overview]
Message-ID: <83tvatavmh.fsf@gnu.org> (raw)
In-Reply-To: <20190805152747.4vyzejqoiy33l4ou@Ergus> (message from Ergus on Mon, 5 Aug 2019 17:27:47 +0200)

> Date: Mon, 5 Aug 2019 17:27:47 +0200
> From: Ergus <spacibba@aol.com>
> Cc: 36858@debbugs.gnu.org, Davor Rotim <rotim.davor@gmail.com>
> 
> 1) The condition ends_at_zv_p didn't work as expected, I don't know If
> this is an issue somewhere else, but at least in my tests, the condition
> was always false. (for all the lines implied before and after ZV, where
> there was company window or not)
> 
> So the filter condition I am using now is:
> 
> IT_CHARPOS (*it) < ZV
> 
> which seems to work fine.
> 
> 2) There is a corner case because the indicator is never generated for
> the latest line in the buffer. So a \n is required always at the end of
> the buffer if there is text, which for me is fine (unix format), but I
> don't know if I should correct that, should I?

Unix format has nothing to do with this, as in a buffer we always have
only \n characters at end of line.  But notr having the indicator show
in the last line of a buffer that doesn't end in a newline is
unfortunate.  Which is why I suggested to test the ends_at_zv_p flag.
What exactly didn't work with it?  Can you show me a test case where
the glyph rows past ZV don't have this flag set?  Maybe you should
test the enabled_p flag as well?

> In terminal emacs, in the original emacs-26 code, in the function:
> extend_face_to_end_of_line the code was:
> 
> ```
>  face = FACE_FROM_ID (f, (it->face_before_selective_p
> 			   ? it->saved_face_id
> 			   : it->face_id));
>  (...)
> 
>  if (it->glyph_row->ends_at_zv_p)
>      it->face_id = default_face->id;
>  else
>      it->face_id = face->id;
>  PRODUCE_GLYPHS (it);
> 
>  while (it->current_x <= it->last_visible_x)
>      PRODUCE_GLYPHS (it);
> ```
> 
> So the rest of the line was filled with the last face, (so this issue was
> already there since then, because the rest of the line is filled with an
> underlined face)
> 
> I can change the code to fill the rest of the line with a new merged
> face (as I do for graphical emacs), but I think that this fix is
> unrelated with dfci, so maybe someone else must give a look before to
> prevent me breaking anything.

This is a more general issue, and I will respond to your question on
emacs-devel.

Thanks.





  reply	other threads:[~2019-08-07 14:38 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-30 18:11 bug#36858: 27.0.50; display bugs with display-fill-column-indicator-mode Davor Rotim
2019-08-02  9:16 ` Eli Zaretskii
2019-08-02 10:25   ` Ergus
2019-08-02 11:53     ` Eli Zaretskii
2019-08-05 23:54       ` Ergus
2019-08-05 15:27   ` Ergus
2019-08-07 14:38     ` Eli Zaretskii [this message]
2019-08-07 16:20       ` Ergus
2019-08-07 16:37         ` Eli Zaretskii
2019-08-07 17:06           ` Ergus
2019-08-07 17:29             ` Eli Zaretskii
2019-08-07 19:46               ` Ergus
2019-08-08  7:17                 ` Ergus
2019-08-08 17:33                   ` Eli Zaretskii
2019-08-08 22:29                     ` Ergus
2019-08-08 17:31                 ` Eli Zaretskii
2019-08-08 22:32                   ` Ergus
2019-08-06 10:44 ` Dmitry Gutov
2019-08-10  8:22 ` Eli Zaretskii
2019-08-10  8:35   ` Davor Rotim
2019-08-10  9:58     ` Eli Zaretskii
2019-08-10 10:12       ` Davor Rotim
2019-08-10 10:45         ` Eli Zaretskii
2019-08-10 11:53           ` Eli Zaretskii
2019-08-10 13:21             ` Carsten Dominik
2019-08-10 13:38               ` Eli Zaretskii
2019-08-10 14:17                 ` Carsten Dominik
2019-08-10 14:41                   ` Eli Zaretskii
2019-08-12  7:10                     ` Carsten Dominik
2019-08-12 14:26                       ` Eli Zaretskii
2019-08-10 18:02                 ` Ergus
2019-10-20 22:12 ` bug#36858: (no subject) Ergus via Bug reports for GNU Emacs, the Swiss army knife of text editors
     [not found] <<CAMWA6ANTAsSz4ckRGSTuVRCHJKZMDEd1SsBaJetW3bWRjPTRNQ@mail.gmail.com>
     [not found] ` <<83zhkh8m5n.fsf@gnu.org>
     [not found]   ` <<CAMWA6AMvD5Vt=fDcHjufcrVUPy__tQ00tk9aobYjyrgoaSiF=w@mail.gmail.com>
     [not found]     ` <<83mugh8hqg.fsf@gnu.org>
     [not found]       ` <<CAMWA6ANXJvdCptHYV_qzXuwtfdoXM3Ygo577gPorgLRD1EQAJw@mail.gmail.com>
     [not found]         ` <<83imr58fji.fsf@gnu.org>
     [not found]           ` <<83d0hd8ceh.fsf@gnu.org>
     [not found]             ` <<CADn3Z2Ke4S+BCaniLWYxT3Vf6-gqt-oHCqcHj6rz22tG0ntw8g@mail.gmail.com>
     [not found]               ` <<83a7ch87j8.fsf@gnu.org>
2019-08-10 16:15                 ` bug#36858: 27.0.50; display bugs with display-fill-column-indicator-mode Drew Adams

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=83tvatavmh.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=36858@debbugs.gnu.org \
    --cc=rotim.davor@gmail.com \
    --cc=spacibba@aol.com \
    /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).