Subject: bug#28605: 26.0.60; Part of leftmost character hidden

From: Ola Nilsson <[email-masked]>
Date: Wed, 4 Oct 2017 08:48:15 +0200

On Tue, Oct 3, 2017 at 6:58 PM, Ola Nilsson <[email-masked]> wrote:
>
>
> On Oct 3, 2017 17:49, "Ola Nilsson" <[email-masked]> wrote:
>
> On Tue, Oct 3, 2017 at 3:08 PM, Robert Pluim <[email-masked]> wrote:
>> Ola Nilsson <[email-masked]> writes:
>>
>>>> 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
>>
>> Through inspection I noticed we're not adjusting the width of the
>> scrollbar for the scale. Does the following help?
>>
>> diff --git a/src/gtkutil.c b/src/gtkutil.c
>> index 0da7039..60ba627 100644
>> --- a/src/gtkutil.c
>> +++ b/src/gtkutil.c
>> @@ -3879,6 +3879,7 @@ xg_update_scrollbar_pos (struct frame *f,
>>        top /= scale;
>>        left /= scale;
>>        height /= scale;
>> +      width /= scale;
>>        left -= (scale - 1) * ((width / scale) >> 1);
>>
>>        /* Clear out old position.  */
>
> This works for me:
>
> @@ -3883,7 +3883,7 @@ xg_update_scrollbar_pos (struct frame *f,
>        top /= scale;
>        left /= scale;
>        height /= scale;
> -      left -= (scale - 1) * ((width / scale) >> 1);
> +      width /= scale;
>
>        /* Clear out old position.  */
>        int oldx = -1, oldy = -1, oldw, oldh;
>
>
> I just realized that I never tested with scaling off.

I did some more tests this morning.

With scaling set to 1 (off) the scroll bars look like the attached screenshot.
But they look like that without the patch I sent too.
I have not noticed this on my other system where I have a normal monitor.

-- 
Ola Nilsson