all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: Alexander Miller <alexanderm@web.de>
Cc: 26445@debbugs.gnu.org, npostavs@users.sourceforge.net
Subject: bug#26445: 26.0.50; Scroll margin and cursor movement working incorrectly when scrolling over different height lines
Date: Fri, 14 Apr 2017 10:06:41 +0300	[thread overview]
Message-ID: <83tw5rh3i6.fsf@gnu.org> (raw)
In-Reply-To: <858e2c55-9e4c-2293-3070-c091372bb8b2@web.de> (message from Alexander Miller on Thu, 13 Apr 2017 23:07:48 +0200)

> Cc: 26445@debbugs.gnu.org
> From: Alexander Miller <alexanderm@web.de>
> Date: Thu, 13 Apr 2017 23:07:48 +0200
> 
> On 13/04/17 22:05, Noam Postavsky wrote:
> > Yes, maybe the answer to this bug is just not to set
> > scroll-conservatively so high then.
> That does help with the height difference introduced by thinly boxed 
> text. Unfortunately there are
> still other cases where where a scroll stutter still remains, caused by 
> unicode symbols.
> For example using prettify-symbols-mode to replace -> with ⭢ or configs 
> for programs like
> polybar which naturally contain a host of characters like    🔇 ⏭.

That depends on what font you have installed that's used to display
those characters.  It is best to have fonts of approximately the same
height.

> I guess if you guys say it cannot be reasonably done I'll consider 
> getting rid of my margin altogether,

There's no need to get rid of margins, as I think the problem you
describe is purely aesthetic, and quite expected when you have lines
of different height.  Why does it bother you so much?

> though I'm still curious why there's no problem when the cursor is at 
> the very start of the line.

Because the window layout begins at the first screen line, and the
y-coordinate of a screen line is its top edge.  So the display engine
can always position the first screen line exactly, whereas where the
last screen line ends depends on what is in-between, and the scroll
margin at the end of the window forces the last pixel of the point's
line to be above the margin.

I also think that if you produce text where lines have more than just
2 different heights, you will see a similar problem while scrolling
up as well.

> Then there's also the second part the bug report - the cursor switching 
> columns when scrolling.

That's not a bug: the button-face line is slightly longer than the
lines in the default face, and scrolling attempts to preserve the
x-coordinate of point, not the column (because the same column could
be at very different x-coordinate due to fonts, faces, inline images,
etc.).  You can see what's going on if you put the cursor on a
boxed-text line, then scroll: you will see a small jitter of the
cursor in the horizontal direction.





  reply	other threads:[~2017-04-14  7:06 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-04-11 16:50 bug#26445: 26.0.50; Scroll margin and cursor movement working incorrectly when scrolling over different height lines Alexander Miller
2017-04-13 19:09 ` Noam Postavsky
2017-04-13 19:39   ` Eli Zaretskii
2017-04-13 20:05     ` Noam Postavsky
2017-04-13 21:07       ` Alexander Miller
2017-04-14  7:06         ` Eli Zaretskii [this message]
2017-04-14  7:46           ` Eli Zaretskii
2017-04-14 10:56           ` Alexander Miller
2017-04-14 12:16             ` Eli Zaretskii
     [not found]               ` <fa0f7cdf-fda4-ce15-9ff8-37ea1767c771@web.de>
2017-04-14 16:07                 ` Eli Zaretskii
2017-04-14  6:50       ` Eli Zaretskii

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

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=83tw5rh3i6.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=26445@debbugs.gnu.org \
    --cc=alexanderm@web.de \
    --cc=npostavs@users.sourceforge.net \
    /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 external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.