Bright scrollbars in dark mode

The behaviour described in the bug report is either by design, or would be far too complex/time-consuming to be changed

Moderators: white, Hacker, petermad, Stefan2

User avatar
Usher
Power Member
Power Member
Posts: 1675
Joined: 2011-03-11, 10:11 UTC

Bright scrollbars in dark mode

Post by *Usher »

There are still bright scrollbars in dark mode on empty Ignore list. If I understood explanations correctly, they should be hidden.
Observed in TC 9.50b6: 32-bit in Windows XP, 64-bit in Windows 7.
Andrzej P. Wozniak
Polish subforum moderator
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48021
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Re: Bright scrollbars in dark mode

Post by *ghisler(Author) »

Sorry, it's currently not possible to change them.
Author of Total Commander
https://www.ghisler.com
User avatar
Usher
Power Member
Power Member
Posts: 1675
Joined: 2011-03-11, 10:11 UTC

Re: Bright scrollbars in dark mode

Post by *Usher »

Could you hide them when they are unneeded? There is NOTHING to scroll in empty list.
Andrzej P. Wozniak
Polish subforum moderator
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48021
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Re: Bright scrollbars in dark mode

Post by *ghisler(Author) »

Unfortunately the control doesn't seem to have the option "show scrollbars only when needed".

Btw, they are dark in Windows 10 1809 and newer, where the system natively supports dark scrollbars.
Author of Total Commander
https://www.ghisler.com
User avatar
Usher
Power Member
Power Member
Posts: 1675
Joined: 2011-03-11, 10:11 UTC

Re: Bright scrollbars in dark mode

Post by *Usher »

ghisler(Author) wrote: 2019-11-26, 15:43 UTCUnfortunately the control doesn't seem to have the option "show scrollbars only when needed".
There are NO scrollbars in "Auto Switch Mode" empty list of Rules and in other lists. It means that you use different control for "Ignore" list. Is it really needed?
Andrzej P. Wozniak
Polish subforum moderator
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48021
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Re: Bright scrollbars in dark mode

Post by *ghisler(Author) »

The problem is that it's NOT a listbox, it's a multi-line edit control.
Author of Total Commander
https://www.ghisler.com
User avatar
Usher
Power Member
Power Member
Posts: 1675
Joined: 2011-03-11, 10:11 UTC

Re: Bright scrollbars in dark mode

Post by *Usher »

OK. So let edit control be activated only on mouse click, "Edit" button click, Tab, whatever… When opening this tab there should be read-only list visible with no scrollbars at all. It will be more fool proof.
Andrzej P. Wozniak
Polish subforum moderator
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48021
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Re: Bright scrollbars in dark mode

Post by *ghisler(Author) »

I have now removed the scrollbars entirely in dark mode. I tried showing them on click only, but this doesn't work.
Author of Total Commander
https://www.ghisler.com
User avatar
Usher
Power Member
Power Member
Posts: 1675
Joined: 2011-03-11, 10:11 UTC

Re: Bright scrollbars in dark mode

Post by *Usher »

OK, I understand. Now long lines are wrapped and only scroll down works (but it's hard to know it without vertical scrollbar). I'm not sure how other users like it.
Andrzej P. Wozniak
Polish subforum moderator
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48021
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Re: Bright scrollbars in dark mode

Post by *ghisler(Author) »

They are still there on Windows 10 1809 and newer, although they were not dark by accident - will be fixed in beta 9.
Author of Total Commander
https://www.ghisler.com
User avatar
yiuimex
Junior Member
Junior Member
Posts: 62
Joined: 2019-03-28, 08:02 UTC

Re: Bright scrollbars in dark mode

Post by *yiuimex »

Usher wrote: 2019-11-25, 13:34 UTC There are still bright scrollbars in dark mode on empty Ignore list. If I understood explanations correctly, they should be hidden.
Observed in TC 9.50b6: 32-bit in Windows XP, 64-bit in Windows 7.
the Scrollbar is still a mystery for me how to get "Control" over it.

like every Control it have a WM_CTLCOLOR*

https://docs.microsoft.com/en-us/windows/win32/Controls/wm-ctlcolorscrollbar
WM_CTLCOLORSCROLLBAR
so it is easy when it is "just" a Scrollbar.

now have a look at all Control
https://docs.microsoft.com/de-de/cpp/mfc/reflected-window-message-ids?view=vs-2019
WM_CTLCOLORDLG
we know that Scrollbar appear when it does not "fit" into Dialog.
now "that" Scrollbar is not the same like a single Scrollbar.

there is no Event "Scrollbar arrive" so you can react on it an get a Handle to color it :(

---

my Workaround : set ALL Scrollbar to Darkmode with

Code: Select all

DLLFUNCTION SetSysColors(n,@s,@v) USING STDCALL FROM USER32.DLL
DLLFUNCTION GetSysColor(n) USING STDCALL FROM USER32.DLL

PROCEDURE MAIN
   SetSysColors(1, {COLOR_SCROLLBAR}, {56,56,56})
RETURN
https://docs.microsoft.com/en-us/windows/desktop/api/winuser/nf-winuser-setsyscolors
An array of COLORREF values that contain the new red, green, blue (RGB) color values for the display elements in the array pointed to by the lpaElements parameter.
https://docs.microsoft.com/en-us/windows/desktop/api/winuser/nf-winuser-getsyscolor
The function returns the red, green, blue (RGB) color value of the given element.
Note ! : this Setting will only work as long as User is login. when re-login all Color get deuaflt Value so i start my App in "Start UP" Folder
User avatar
Usher
Power Member
Power Member
Posts: 1675
Joined: 2011-03-11, 10:11 UTC

Re: Bright scrollbars in dark mode

Post by *Usher »

2yiuimex
These functions are available already in Windows 2000 so it's a thing worth to try.
Andrzej P. Wozniak
Polish subforum moderator
User avatar
HolgerK
Power Member
Power Member
Posts: 5406
Joined: 2006-01-26, 22:15 UTC
Location: Europe, Aachen

Re: Bright scrollbars in dark mode

Post by *HolgerK »

yiuimex wrote: 2019-12-15, 04:09 UTC ---

my Workaround : set ALL Scrollbar to Darkmode with

Code: Select all

DLLFUNCTION SetSysColors(n,@s,@v) USING STDCALL FROM USER32.DLL
DLLFUNCTION GetSysColor(n) USING STDCALL FROM USER32.DLL

PROCEDURE MAIN
   SetSysColors(1, {COLOR_SCROLLBAR}, {56,56,56})
RETURN
https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-setsyscolors wrote:Remarks

The SetSysColors function sends a WM_SYSCOLORCHANGE message to all windows to inform them of the change in color. It also directs the system to repaint the affected portions of all currently visible windows.

It is best to respect the color settings specified by the user.
If you are writing an application to enable the user to change the colors, then it is appropriate to use this function
.
However, this function affects only the current session. The new colors are not saved when the system terminates.
This is no solution for TC.
This would change the colors of all classic desktop programs (notepad.exe,....)

Regards
Holger
Make our planet great again
User avatar
yiuimex
Junior Member
Junior Member
Posts: 62
Joined: 2019-03-28, 08:02 UTC

Re: Bright scrollbars in dark mode

Post by *yiuimex »

Usher wrote: 2019-12-15, 12:01 UTC 2yiuimex
These functions are available already in Windows 2000 so it's a thing worth to try.
have you try it under Window 10 :?:
these COLOR-* Constante are still valid ... but not many Programmer use it any more.
that is what i say : back to Basic
User avatar
yiuimex
Junior Member
Junior Member
Posts: 62
Joined: 2019-03-28, 08:02 UTC

Re: Bright scrollbars in dark mode

Post by *yiuimex »

hi,
HolgerK wrote: 2019-12-15, 12:48 UTC
yiuimex wrote: 2019-12-15, 04:09 UTC my Workaround : set ALL Scrollbar to Darkmode with
This is no solution for TC.
This would change the colors of all classic desktop programs (notepad.exe,....)
as i say it is my Workaround
did you have any Solution for Scrollbar :?:
Post Reply