Subject: bug#16760: closed (Re: bug#16760: Ellipses lose all decorative features when 'invisible' overlay starts at a point where underlying text changes its 'face' property.)

From: [email-masked] (GNU bug Tracking System)
Date: Fri, 12 Feb 2016 20:16:02 +0000

Your bug report

#16760: Ellipses lose all decorative features when 'invisible' overlay starts at a point where underlying text changes its 'face' property.

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
16760: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16760
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#16760: Ellipses lose all decorative features when 'invisible' overlay starts at a point where underlying text changes its 'face' property.
From: Marcin Borkowski <[email-masked]>
To: Eli Zaretskii <[email-masked]>
Cc: [email-masked], [email-masked]
Date: Fri, 12 Feb 2016 21:15:23 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

On 2016-02-08, at 04:29, Eli Zaretskii <[email-masked]> wrote:

>> From: Marcin Borkowski <[email-masked]>
>> Cc: [email-masked], [email-masked]
>> Date: Sun, 07 Feb 2016 23:24:37 +0100
>> 
>> >> The screenshot was taken with GNU Emacs 25.1.50.1, started as emacs -Q.
>> >
>> > Strange.  Is that current master?  I cannot reproduce this, neither on
>> > master nor on emacs-25.  Here, the dots on the 2nd line are of correct
>> > size and their color is red.
>> 
>> Magit says: eb0643c master.
>
> That's almost a month ago.  It's possible that the fix was merged to
> master later than that.  Can you try a more recent repository?  Or
> build the emacs-25 branch?
>
> Thanks.

Hi, Eli,

I finally checked this and it is indeed fixed in master.  Also, the
problem with ellipses not scaling together woth the text in Org-mode
(which I suspected was related to this) seems also to be fixed.  That is
really great, thank you!  I'm closing this bug.

Best

-- 
Marcin Borkowski
http://octd.wmi.amu.edu.pl/en/Marcin_Borkowski
Faculty of Mathematics and Computer Science
Adam Mickiewicz University

Subject: Ellipses lose all decorative features when 'invisible' overlay starts at a point where underlying text changes its 'face' property.
From: Pontus Michael <[email-masked]>
To: [email-masked]
Date: Sat, 15 Feb 2014 03:40:36 +0400
List-Id: <debbugs-submit.debbugs.gnu.org>

I am able to reproduce this issue running emacs -Q with "GNU Emacs
24.3.50.1 (i686-pc-linux-gnu, GTK+ Version 3.6.3)".
I've wrote a snippet that will allow me to demonstrate this issue:

    (let ((str (concat (propertize "red" 'face '((:foreground "red")))
                       (propertize "green" 'face '((:foreground "green")))
                       (propertize "blue" 'face '((:foreground "blue")))))
          (printer (lambda (offset)
                     (let* ((pos1 (+ offset (point)))
                            (pos2 (+ 1 (length str) pos1)))
                       (insert str ?\s str ?\n)
                       (overlay-put (make-overlay pos1 (+ 3 pos1))
                                    'face '((:inverse-video t)))
                       (overlay-put (make-overlay pos2 (+ 3 pos2))
                                    'invisible 'outline)))))
      (with-current-buffer (get-buffer-create "*test*")
        (setq buffer-invisibility-spec '((outline . t)))
        (text-scale-set 4)
        (display-buffer (current-buffer))
        (erase-buffer)
        (mapc printer '(2 3 4))))

After running this code you will be able to see, in a new buffer, 3 lines
of 2 words, all words are the same, each line features three-letter long
overlay over each of the words, highlighting letters underneath them on
left side, and hiding them behind ellipses on right side.

Whenever an overlay spans from a point where there's a change to 'face'
text-property, produced ellipsis doesn't adopt face decoration of neither
side. Furthermore, ellipsis part of the buffer appears to ignore current
text-scale setting, which is being set to 4 for temporary buffer in my
example.

Thank you for your attention.
All corrections that may help me improve my further reports are welcomed.