terminal icon indicating copy to clipboard operation
terminal copied to clipboard

Please provide a new setting: verticalScrollBarWidth

Open ghost opened this issue 4 years ago • 25 comments

Please provide an option in the config.json to:

  • set the width of the vertical scrollbar to some fixed width - for e.g.: 32px
  • there should be something in the config like: "verticalScrollBarWidth" or something similar

Why should users use this?

The new behaviour of the vertical scrollbar in windows terminal provides no advantage. It's confusing the users. Many users want to use windows terminal as replacement for the dos box and this new behaviour drives them crazy.

Example: "defaults": { "scrollBarState" : "visible", "verticalScrollBarWidth" : 32 } ... and this will set the vertical scrollbar to a fixed width

ghost avatar Feb 19 '21 10:02 ghost

This makes sense to group with the rest of the "theming" asks in #3327. Thanks!

(also related: #3454)

zadjii-msft avatar Feb 19 '21 12:02 zadjii-msft

Just popping in to say that this would be appreciated very much! I don't like the current scrollbar behavior. Thanks!

WesleyM77 avatar Sep 01 '21 15:09 WesleyM77

I need this as well, because it is too slim and this makes it difficult to click it with the mouse pointer. it's actually identically as slim as msedge's, perhaps I should also ask this to Edge team as well.

mailinglists35 avatar Oct 01 '21 12:10 mailinglists35

Workaround: activating "Arero Lite Theme" gives you back the scroll bar.

As used in this script: https://github.com/mhgschmidt/w10install/blob/master/scripts/modify-desktoptheme.cmd Config for Aerolite is here: https://github.com/mhgschmidt/w10install/blob/master/scripts/config/aerolite.theme

Works for me. Givin up and closing this ticket.

ghost avatar Oct 03 '21 09:10 ghost

@mhgschmidt please leave it open. I don't want to alter the theme.

mailinglists35 avatar Oct 04 '21 11:10 mailinglists35

if you don't want to get notifications of this issue, you can unsubscribe from it. but there are others who don't want the theme workaround. and it's a workaround, not a solution to the issue you opened

mailinglists35 avatar Oct 04 '21 11:10 mailinglists35

Reopened. @zadjii-msft : This looks like an easy and small task for me. Can you do something here ?

ghost avatar Oct 04 '21 11:10 ghost

If you'd like to contribute, we'd happily review the PR. I'm not sure there's an easy way to change the width of a XAML scrollbar, but if there is, this would be the place to start:

https://github.com/microsoft/terminal/blob/e5293b78143bdbb7bff4f83fadd5cf5c080608e9/src/cascadia/TerminalControl/TermControl.xaml#L92-L105

zadjii-msft avatar Oct 04 '21 12:10 zadjii-msft

lmao it works but looks insane: image

@StephenLPeters (sorry you're my go to "winui on GH person" now) Any ideas if there's an easy way to set the thickness of the thumb too? This obviously looks insane. At least the whole track works for hit testing, though, the up/down buttons don't.

zadjii-msft avatar Feb 07 '22 14:02 zadjii-msft

Note to self: <x:Double x:Key="ScrollBarSize">16</x:Double> might be the key I'm looking for.

zadjii-msft avatar Feb 07 '22 14:02 zadjii-msft

@zadjii-msft this is the resource that drives this value: https://github.com/microsoft/microsoft-ui-xaml/blob/e4c5d3443caa0242be0953010dd5ab3ddb4c2925/dev/CommonStyles/ScrollBar_themeresources.xaml#L785 unfortunately it is a StaticResource defined in a Non-ThemeDictionary in Winui2 which, because of some... quirks... in the resource lookup system means that you will not be able to override this propety from Terminal. Therefore I think the only option you have is to retemplate the control. We could/should fix this in winui2 and make it a ThemeResource which would allow you to override it in the visual tree.

StephenLPeters avatar Feb 07 '22 18:02 StephenLPeters

@StephenLPeters thanks for the follow up. Seems to me like the best course of action would be:

  • Provide this setting now, under the experimental. namespace, because it looks a little silly but works
  • Use https://github.com/microsoft/microsoft-ui-xaml/issues/6684 to drive changing the VerticalThumb Width to a ThemeResource.
  • When there's a version with the above fix in it available for the Terminal to ingest, we remove the experimental. bit from the setting and use that themeresource to fix the appearance.

Sound like a plan?

zadjii-msft avatar Feb 07 '22 20:02 zadjii-msft

Yes, although we should confirm that this resource is the only one that you need access to in order to fulfill your design. Its possible that you'd also need to change the roundedness of the corners or the margin from the edge of the well, or something like that. Maybe we can pull the nuget package from our PR pipeline and test that terminal is able to make the changes you need. I'll make the PR now.

StephenLPeters avatar Feb 07 '22 21:02 StephenLPeters

Team discussion:

  • yeeting a experimental feature into the OS as a bugfix is not the right move, especially one that we don't have runway to remove the experimental aspect before snapping the last OS build.
  • We should just patch the scrollbar width for what it used to be. That would be the simplest fix......

Oh look at that. He just fixed it like that, because he's the best. https://github.com/microsoft/microsoft-ui-xaml/pull/6686. Thanks!

That might change our previously discussed plans. More discussion to follow tomorrow, I'm sure.

zadjii-msft avatar Feb 07 '22 23:02 zadjii-msft

I suspect there is more that is needed to make this look correct.. for instance the chevrons are also miss sized so we'll need to figure out the set of resources that are needed.

StephenLPeters avatar Feb 07 '22 23:02 StephenLPeters

I'm sorry, I need to downvote this. I completely agree that the scrollbars are too thin, but we really should not be configuring scrollbars separately for every app. Scrollbars have gotten too thin everywhere (Feedback hub, Window News, Xbox apps, every single Electron app, the list goes on.) This really needs to be pushed up to some Microsoft UI team so we can control this globally at the OS level for all apps.

jvincent-siplay avatar Aug 17 '22 20:08 jvincent-siplay

until you find the right place to file the issue with microsoft, downvoting this helps no one. other than that, I agree this needs to be addressed system wide. even in the edge browser I am typing now there is inconsistence between the width of the page scroll bar and the scroll bar of the vertical tabs 🙈

mailinglists35 avatar Aug 19 '22 13:08 mailinglists35

Actually, you know what? I'm inclined to agree with @jvincent-siplay. No other application in common use today offers this kind of customization--if it would, does it offer a switch for making the buttons smaller or larger? Or making the status bar taller or shorter? The caption controls smaller, redder, or more translucent?--and so I don't think we should either. I would say that downvoting this issue has helped us, as I think it's going to clear this thing off our backlog that shouldn't be on it.

The Terminal team is able to funnel these feature requests to the right people, but we have no special ability to make sure they get acted on.

DHowett avatar Aug 19 '22 19:08 DHowett

no application offers customization

the problem is microsoft terminal is a rebel citizen in windows 10

see how other native microsoft apps have their scrollbars in windows 10:

device manager, command prompt, explorer, task manager, edge, uwp settings app

mailinglists35 avatar Aug 21 '22 20:08 mailinglists35

image

mailinglists35 avatar Aug 21 '22 20:08 mailinglists35

what all these scrollbars have in common? they're all usable. they're usable interactive ui elements, not just page progress indicators like terminal does. yes, you can click terminal scroll bar, but at the high cost of wasted time due to terrible low mouse grab precision which ends up giving up using it.

if you call customization the ability to be usable... then I am left with no other argument.

mailinglists35 avatar Aug 21 '22 20:08 mailinglists35

too damn hard to grab even notice where the scroll bar is at .. lol while title bar is wide as ocean. Try to find the scroll bar. image

Why can't this version be default? It's soo much better. But only shows up when you hover on the thin line.

image

shinebayar-g avatar Dec 03 '22 10:12 shinebayar-g

too damn hard to grab even notice where the scroll bar is at .. lol

while title bar is wide as ocean. Try to find the scroll bar.

image

Why can't this version be default? It's soo much better.

I presume that the team/person in charge has prioritized visibility/aestethics over usability.

They must think "the bar is just an indicator, nobody actually clicks it to scroll, everyone simply usees the mouse wheel for scrolling".

The scary thought is however, "what if they guessed right, and we - users of precision click and drag on scrollbar - are now just a minority?"

There can be no other explanation for this monstruous absurdity, a huge wide titlebar and a tiny scrollbar.

mailinglists35 avatar Dec 13 '22 21:12 mailinglists35

Why can't this version be default? It's soo much better. But only shows up when you hover on the thin line. [screenshot]

FWIW, that was added in #14047, and is shipping in 1.17.


We also changed the width of the Terminal's scrollbar to align with the rest of the OS's scrollbar's in #12608, back in 1.14. We're a WinUI-style scrollbar, with a ComCtl-style width now.


They must think "the bar is just an indicator, nobody actually clicks it to scroll

9218-whinging-000

🤔

In general, the Terminal repo isn't the right place for feedback on the design of the WinUI scroll bars. A better place for your feedback would be: https://github.com/microsoft/microsoft-ui-xaml/discussions/7422

zadjii-msft avatar Dec 13 '22 22:12 zadjii-msft

They must think "the bar is just an indicator, nobody actually clicks it to scroll, everyone simply usees the mouse wheel for scrolling". The scary thought is however, "what if they guessed right, and we - users of precision click and drag on scrollbar - are now just a minority?"

I also use scroll bar to track where am I in the jungle of huge command line output.

FWIW, that was added in https://github.com/microsoft/terminal/pull/14047, and is shipping in 1.17.

Thanks! Eagerly waiting for the release then.

shinebayar-g avatar Dec 13 '22 22:12 shinebayar-g

With Windows Terminal v1.12.1073, the scrollbar looks like this:

good

however starting with the next version, Windows Terminal v1.12.1098, the scrollbar is narrow:

bad

and in future versions even rounded at the corners. I find these changes distracting. Also, they are different from my browser Mozilla Firefox:

firefox

My editor Vim:

vim

and even Windows Explorer:

explorer

this is quite annoying, I wish Microsoft would just focus on making the terminal itself better, and not spend time on these "bikeshed" issues, especially in regards to changes that are difficult or impossible for users to revert. in my case I am now forced to use the old version forever.

ghost avatar Apr 05 '23 22:04 ghost

Please consider visually impaired users too - the current indicator is also too small

molesmoke avatar Aug 21 '23 01:08 molesmoke