From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#21500: 24.5; Graphical glitch with display property lines in GUI Emacs Date: Thu, 17 Sep 2015 10:05:37 +0300 Message-ID: <83wpvp5xvi.fsf@gnu.org> References: <83a8sm6s3b.fsf@gnu.org> <20150916203402.GA3145@odonien.fritz.box> <837fnp7id8.fsf@gnu.org> <20150917063416.GA597@odonien.fritz.box> Reply-To: Eli Zaretskii NNTP-Posting-Host: plane.gmane.org X-Trace: ger.gmane.org 1442473588 19729 80.91.229.3 (17 Sep 2015 07:06:28 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 17 Sep 2015 07:06:28 +0000 (UTC) Cc: 21500@debbugs.gnu.org To: Vasilij Schneidermann Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Thu Sep 17 09:06:12 2015 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1ZcTGj-0000sL-ND for geb-bug-gnu-emacs@m.gmane.org; Thu, 17 Sep 2015 09:06:09 +0200 Original-Received: from localhost ([::1]:56505 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZcTGj-0002as-2Q for geb-bug-gnu-emacs@m.gmane.org; Thu, 17 Sep 2015 03:06:09 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:32845) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZcTGf-0002Zl-Oo for bug-gnu-emacs@gnu.org; Thu, 17 Sep 2015 03:06:06 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZcTGc-00018r-IR for bug-gnu-emacs@gnu.org; Thu, 17 Sep 2015 03:06:05 -0400 Original-Received: from debbugs.gnu.org ([208.118.235.43]:43482) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZcTGc-00018n-GB for bug-gnu-emacs@gnu.org; Thu, 17 Sep 2015 03:06:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1ZcTGc-0002yr-4n for bug-gnu-emacs@gnu.org; Thu, 17 Sep 2015 03:06:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 17 Sep 2015 07:06:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 21500 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 21500-submit@debbugs.gnu.org id=B21500.144247354311433 (code B ref 21500); Thu, 17 Sep 2015 07:06:02 +0000 Original-Received: (at 21500) by debbugs.gnu.org; 17 Sep 2015 07:05:43 +0000 Original-Received: from localhost ([127.0.0.1]:35692 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZcTGI-0002yK-H1 for submit@debbugs.gnu.org; Thu, 17 Sep 2015 03:05:42 -0400 Original-Received: from mtaout21.012.net.il ([80.179.55.169]:33135) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZcTGD-0002y6-QF for 21500@debbugs.gnu.org; Thu, 17 Sep 2015 03:05:40 -0400 Original-Received: from conversion-daemon.a-mtaout21.012.net.il by a-mtaout21.012.net.il (HyperSendmail v2007.08) id <0NUT003007H06F00@a-mtaout21.012.net.il> for 21500@debbugs.gnu.org; Thu, 17 Sep 2015 10:05:36 +0300 (IDT) Original-Received: from HOME-C4E4A596F7 ([84.94.185.246]) by a-mtaout21.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0NUT003CC7PB6Y00@a-mtaout21.012.net.il>; Thu, 17 Sep 2015 10:05:36 +0300 (IDT) In-reply-to: <20150917063416.GA597@odonien.fritz.box> X-012-Sender: halo1@inter.net.il X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:106681 Archived-At: > Date: Thu, 17 Sep 2015 08:34:16 +0200 > From: Vasilij Schneidermann > Cc: 21500@debbugs.gnu.org > > > That's the default Emacs implementation of cursor display on GUI > > frames: we erase the character at point, then draw that character > > again with cursor colors (normally, in reverse video). For > > "white-space" characters, such as TAB and the stretch of white space > > created by the 'space' display property, Emacs by default draws the > > cursor using the width of the font's SPC character. And that's > > exactly what you saw. > > Interesting. Now that I've checked again, it's indeed that a terminal > frame does not show any reverse video effects at all with the cursor, so > that explains this display oddity. Emacs doesn't draw the cursor on text-mode frames. It only moves it to the proper place, and can turn it off if needed. But the cursor drawing and blinking is something done by the terminal itself. By contrast, on GUI frames, it's Emacs that draws the cursor, in the way I described. > > Yes. But the face needs to have that as part of its definition. > > OK, which face would it be in this case, the cursor or the line face? The line, of course. That's the face you want to see, even when its foreground and background colors are identical. > > Anyway, I see no relation between what you were wondering about and > > the effect of cursor display that I believe was the trigger for this > > bug report. If you have questions about face rendering, I suggest to > > ask them on emacs-devel. > > Well, I do. If putting the cursor on a special space has a different > effect in GUI than in textual frames, I'd like to know what's causing it > and whether there is any way of fixing it. See above: what's causing it is the fact that Emacs doesn't draw the cursor on text-mode frames. And I see no way of "fixing" it. Nor do I think there's a problem here: this surprising effect happens only when you have a stretch of white space wider than a single SPC character, and then only when the cursor is at that buffer position. E.g., in your scenario add some character, say 'x', before the whitespace, and move point to that character -- you will see the rest of the line displayed constantly with no "glitches". > > Can we now close the bug? > > I still don't have a tangible solution at hand for fixing this display > glitch. Altering `x-stretch-cursor` is a workaround, but not as good as > altering, say, the line face to be displayed under every condition by > altering its definition. I don't think there's a glitch here, and I see no way of "fixing" that without losing the important indication of the cursor position.