GNU bug report logs - #37667
27.0.50; Tab Bar display problems with more than 5 tabs

Previous Next

Package: emacs;

Reported by: Eli Zaretskii <eliz <at> gnu.org>

Date: Tue, 8 Oct 2019 18:57:02 UTC

Severity: normal

Found in version 27.0.50

Full log


View this message in rfc822 format

From: Eli Zaretskii <eliz <at> gnu.org>
To: Juri Linkov <juri <at> linkov.net>
Cc: 37667 <at> debbugs.gnu.org
Subject: bug#37667: 27.0.50; Tab Bar display problems with more than 5 tabs
Date: Sat, 02 Nov 2019 21:28:44 +0200
> From: Juri Linkov <juri <at> linkov.net>
> Cc: 37667 <at> debbugs.gnu.org
> Date: Sat, 02 Nov 2019 21:06:05 +0200
> 
> >  . Always display both of them, but make one or both of them do
> >    nothing when scrolling in that direction makes no sense.
> 
> Or maybe to disable (visually using a grey shadow) the button
> that can't do scrolling?

Yes, possible.

> >  . Display one arrow on the left and another on the right, and decide
> >    whether or not to display the right one in display_mode_line,
> >    depending on whether you hit (last_visible_x - arrow_width) while
> >    producing glyphs.
> 
> Do you mean displaying the arrow on the right using fringe?

No, I meant displaying them like you do now, just move the right arrow
to the right of the last visible tab.

> > The first one sounds the easiest to me.
> 
> The first one is easy to implement, but it can't do auto-scrolling,
> i.e. when the current tab becomes invisible, automattically reduce
> the number of tabs in front of it to make it visible.

Is that such a serious problem?  Browsers don't auto-scroll.

> > If you want to implement the last one, then you need a function
> > that calls display_mode_line and returns a truncation indication
> > depending on the state of it.glyph_row->truncated_on_right_p.  The
> > simplest way to achieve that is to add a new argument to
> > display_mode_line, which, when non-NULL, will be a pointer to the flag
> > where to return to the caller the truncation indication; then make
> > display_mode_line set that flag according to the truncated_on_right_p
> > flag.
> 
> Modifying display_mode_line is one way.  I thought maybe simpler
> would be to copy some relevant code from display_mode_line
> to a new function.

I think you end up copying almost all of it.  But if I'm wrong, sure,
that's possible.




This bug report was last modified 4 years and 276 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.