all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Ola Nilsson <ola.nilsson@gmail.com>
To: martin rudalics <rudalics@gmx.at>
Cc: Lars Magne Ingebrigtsen <larsi@gnus.org>,
	28605@debbugs.gnu.org, Kaushal <kaushal.modi@gmail.com>
Subject: bug#28605: 26.0.60; Part of leftmost character hidden
Date: Tue, 3 Oct 2017 14:12:26 +0200	[thread overview]
Message-ID: <CAKyOKyG2LuF=op8KhivkwkfMMHDk_19e0MDhV8vd+HSxu5X1Gg@mail.gmail.com> (raw)
In-Reply-To: <59D35549.6030905@gmx.at>

On Tue, Oct 3, 2017 at 11:15 AM, martin rudalics <rudalics@gmx.at> wrote:
>> If the frame contains three side-by-side windows and scroll bars on
>> the right I expect to see (from left to right):
>>
>> frame border
>> left fringe for window one
>> window one
>> right fringe for window one
>> scroll bar for window one
>> right fringe for window two
>> window two
>> left fringe for window two
>> scroll bar for window two
>> right fringe for window three
>> window three
>> left fringe  for window three
>> scroll bar for window three
>> frame border
>>
>> Of all the fringes, only the left fringe of window one is visible.
>> Using scroll bars on the left, only the right fringe of window three
>> is visible.
>> In both cases, characters that are next to non-visible/hidden fringes
>> are partially hidden.
>> I'm attaching two screenshots that should show this.
>
> Thanks for the details.  From your initial screenshot it was not clear
> to me that the effect is really that bad.
>
>> I bit the bullet and did a git bisect:
>>
>> 36cf0791ba75ee16dfbedfe437567ec6dd945b8a is the first bad commit
>> commit 36cf0791ba75ee16dfbedfe437567ec6dd945b8a
>> Author: Lars Ingebrigtsen <larsi@gnus.org>
>> Date:   Sun Jul 16 16:50:57 2017 +0200
>>      Remove usage of the GDK_SCALE variable
>>
>>      * src/gtkutil.c (xg_get_gdk_scale): Remove.
>>      (xg_get_default_scrollbar_height)
>>      (xg_get_default_scrollbar_width): Pass in a frame to check for
>>      scaling.
>>      (xg_frame_set_char_size): Use the API for querying scale
>>      instead of looking at the GDK_SCALE variable.
>>      (xg_get_default_scrollbar_width): Ditto.
>>      (xg_get_default_scrollbar_height): Ditto.
>>      (xg_update_scrollbar_pos): Ditto.
>>
>>      * src/xfns.c (x_set_scroll_bar_default_height): Pass in the
>>      frame to get the width.
>
> Great.  Lars, how should we proceed from here?
>
> (1) Revert that commit.
>
> (2) Revert the call of gtk_widget_get_scale_factor only.
>
> (3) Try to fix the build with your change in place.
>
> (4) Provide some option so that users can either use your approach or
>     Jan's.  The default should prefer Jan's setup to avoid that users
>     like Ola have to go through this again.
>
>> I also played with the dividers and horizontal scroll bars.
>>
>> The horizontal scroll bars are not visibla at all with scaling on.
>
> Apparently, the horizontal scroll bar code does not handle scaling.  If
> we fix the current problem, maybe you could help me fix that one too.
>
>> Dividers on the right fixed the hidden character problem but not the
>> hidden fringes,
>
> Yes.  IMHO it's because the scroll bar clearing code hides the dividers
> instead of the text.  If you customize dividers to a sufficiently large
> width you should be able to make the entire text visible and even parts
> of the dividers (on the left side of a window, only - the right sides
> will remain obscured as before).
>
>> I attach some screenshots of this as well.
>
> Very informative, thanks.  One thing that stupefies me about these
> screenshots is that the menu and toolbar items are smaller in
> horizontal-scrollbars-no-dividers.png than in with-hidpi-scaling.png.
>
>> This is with emacs -Q --no-x-resources, dividers off, horizontal
>> scrollbars off.
>>
>> frame pixel: 2034 x 466   cols/lines: 226 x 25   units: 9 x 18
> [...]
>> height header-line: 0  mode-line: 0  divider: 0
>
> All these values are completely as expected so the problem must be
> confined to this x_clear_area call in xg_update_scrollbar_pos in
> gtkutil.c
>
>           /* Clear under old scroll bar position.  */
>           oldw += (scale - 1) * oldw;
>           oldx -= (scale - 1) * oldw;
>           x_clear_area (f, oldx, oldy, oldw, oldh);
>
> where the value of scale is now obtained via
>
>       int scale = xg_get_scale (f);
>
> If you replace the latter by the old
>
>       int scale = xg_get_gdk_scale ();
>
> does your problem go away?  If so, then it would be interesting how the
> values returned by xg_get_scale differ with gtk_widget_get_scale_factor
> and xg_get_gdk_scale called.

Made no difference what I can see, except a lot of messages :

(emacs:2302): Gtk-CRITICAL **: gtk_distribute_natural_allocation:
assertion 'extra_space >= 0' failed

I tested with dividers and horizontal scrollbars with the same results
as before.

-- 
Ola Nilsson





  parent reply	other threads:[~2017-10-03 12:12 UTC|newest]

Thread overview: 99+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-09-26  9:52 bug#28605: 26.0.60; Part of leftmost character hidden Ola Nilsson
2017-09-27  8:12 ` martin rudalics
2017-09-29  7:45   ` Ola Nilsson
2017-09-29  8:36     ` martin rudalics
2017-09-29 10:46       ` Ola Nilsson
2017-09-29 18:18         ` martin rudalics
2017-10-02  9:18           ` Ola Nilsson
2017-10-03  9:15             ` martin rudalics
2017-10-03  9:28               ` Lars Ingebrigtsen
2017-10-03 12:12               ` Ola Nilsson [this message]
2017-10-03 13:08                 ` Robert Pluim
2017-10-03 15:49                   ` Ola Nilsson
2017-10-03 16:58                     ` Ola Nilsson
2017-10-04  6:48                       ` Ola Nilsson
2017-10-04  9:05                         ` martin rudalics
2017-10-04  9:05                     ` martin rudalics
2017-10-04  9:59                       ` Ola Nilsson
2017-10-04 11:56                         ` Robert Pluim
2017-10-05  8:10                           ` martin rudalics
2017-10-05  9:42                             ` Robert Pluim
2017-10-05 12:46                               ` Robert Pluim
2017-10-06  8:18                                 ` martin rudalics
2017-10-06  8:37                                   ` Robert Pluim
2017-10-06  9:35                                     ` martin rudalics
2017-10-06 11:50                                       ` Robert Pluim
2017-10-07  8:08                                         ` martin rudalics
2017-10-07 11:53                                           ` Lars Ingebrigtsen
2017-10-09  8:00                                             ` martin rudalics
2017-10-09  8:25                                               ` Lars Ingebrigtsen
2017-10-09  9:16                                                 ` Robert Pluim
2017-10-09 12:21                                                 ` martin rudalics
2017-10-08  9:51                                           ` Robert Pluim
2017-10-09  8:00                                             ` martin rudalics
2017-10-09  8:26                                               ` Lars Ingebrigtsen
2017-10-09 12:22                                                 ` martin rudalics
2017-10-09 13:37                                                   ` Robert Pluim
2017-10-10  8:13                                                     ` martin rudalics
2017-10-10  8:44                                                       ` Robert Pluim
2017-10-10  9:16                                                         ` martin rudalics
2017-10-10  9:31                                                           ` Eli Zaretskii
2017-10-10  9:54                                                             ` Robert Pluim
2017-10-10 11:11                                                               ` Robert Pluim
2017-10-10 13:26                                                               ` martin rudalics
2017-10-10 14:00                                                                 ` Robert Pluim
2017-10-11  8:32                                                                   ` martin rudalics
2017-10-11  8:37                                                                     ` Robert Pluim
2017-10-09 14:18                                                   ` Lars Ingebrigtsen
2017-10-10  8:14                                                     ` martin rudalics
2017-10-10  8:39                                                       ` Robert Pluim
2017-10-10  9:15                                                         ` martin rudalics
2017-10-10  9:46                                                           ` Robert Pluim
2017-10-10 13:25                                                             ` martin rudalics
2017-10-10  8:54                                                       ` Lars Ingebrigtsen
2017-10-10 13:05                                         ` Ola Nilsson
2017-10-10 13:26                                           ` martin rudalics
2017-10-10 15:32                                             ` Robert Pluim
2017-12-15 18:16                                               ` martin rudalics
2017-12-18 15:58                                                 ` Robert Pluim
2017-12-19  7:02                                                   ` martin rudalics
2017-12-19  7:56                                                     ` Eli Zaretskii
2017-12-19  8:10                                                       ` Robert Pluim
2017-12-19 16:09                                                         ` Eli Zaretskii
2017-12-20  8:53                                                           ` martin rudalics
2020-09-04  5:05                                                             ` Lars Ingebrigtsen
2017-10-11  6:57                                             ` Ola Nilsson
2017-10-11  8:32                                               ` martin rudalics
2017-10-11  8:49                                                 ` Robert Pluim
2017-10-11  9:28                                                   ` martin rudalics
2017-10-11 10:36                                                     ` Robert Pluim
2017-10-11 13:11                                                 ` Ola Nilsson
2017-10-12  8:04                                                   ` martin rudalics
2017-10-12  9:31                                                     ` Robert Pluim
2017-10-13  8:56                                                       ` martin rudalics
2017-10-13  9:58                                                         ` Robert Pluim
2017-10-13 12:46                                                           ` martin rudalics
2017-10-13 13:01                                                             ` Robert Pluim
2017-10-14  8:36                                                               ` martin rudalics
2017-10-14  8:57                                                                 ` Robert Pluim
2017-10-14  9:21                                                                   ` martin rudalics
2017-10-16 11:41                                                                     ` Robert Pluim
2017-10-17  8:57                                                                       ` martin rudalics
2017-10-17 10:30                                                                         ` Robert Pluim
2017-10-17 13:09                                                                           ` martin rudalics
2017-10-19 12:44                                                                             ` Robert Pluim
2017-10-20  7:55                                                                               ` martin rudalics
2017-10-20 13:41                                                                                 ` Robert Pluim
2017-10-21  8:04                                                                                   ` martin rudalics
2017-10-23 10:01                                                                                     ` Robert Pluim
2017-10-23 11:54                                                                                       ` martin rudalics
2017-10-23 12:12                                                                                         ` Robert Pluim
2017-10-24  9:17                                                                                           ` martin rudalics
2017-10-13 16:18                                                     ` Ola Nilsson
2017-10-14  8:36                                                       ` martin rudalics
2017-10-06  8:18                               ` martin rudalics
2017-10-06  8:52                                 ` Robert Pluim
2017-10-06  9:35                                   ` martin rudalics
2017-10-05 11:57                             ` Ola Nilsson
2017-10-04  9:03                 ` martin rudalics
2017-10-03 15:26               ` Kaushal Modi

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='CAKyOKyG2LuF=op8KhivkwkfMMHDk_19e0MDhV8vd+HSxu5X1Gg@mail.gmail.com' \
    --to=ola.nilsson@gmail.com \
    --cc=28605@debbugs.gnu.org \
    --cc=kaushal.modi@gmail.com \
    --cc=larsi@gnus.org \
    --cc=rudalics@gmx.at \
    /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.