RoundedTB/RoundedTB

Remove the Aliasing on the Taskbar

jayneogithub opened this issue · 12 comments

Aliased edges
I noticed that the taskbar has weird aliasing when it comes to corners, leading to annoying aliased round edges, here's my prediction on how it would look like fixed:
Anti-Aliased edges
Replying would be appreciated!

The readme says this is impossible but it should not be. It's a lot more work but should be doable using layered windows. See UpdateLayeredWindow and related functions.

I did have an experiment with UpdateLayeredWindow but it seems that like with a bunch of other API calls that offer the option to customise the position of Windows (MoveWindow, SetWindowPos) they're just outright disabled for the taskbar. I will have a bit more of an experiment with it, but it wouldn't surprise me if it was blocked.

I did have some alternative ideas, including calling SetWindowCompositionAttribute to make the taskbar transparent then drawing a background underneath it, but this would break a lot of other taskbar modifications, which isn't something I'm willing to sacrifice.

If you can get UpdateLayeredWindow working for you at all, let me know; entirely possible my Explorer is just cursed 😂

:< It make my taskbar ugly, pls fix it

Please read the prior comment.

You could just make an option that would only work for the standard options (light/dark standard colors only) that uses rounded endcaps that are PNG images, not sure if the antialiasing would affect that too though...

Well actually if you set the corner radius properly it would not look so bad as you think

Corner radius is a personal preference, not a setting that should have a specific method of use. It likely also depends on the monitor you have for how visible it is. The only way I have found to disguise it is using a dark mode, with a somewhat darker background that kind of gives off the illusion that the pixelation is not there.

If you say so. I simply mean that the corner would not look very aliased when setting the corner radius to a certain amount. Of course, it depends on the monitor you have. A dark mode would help too~

The whole point of the app and the corner radius setting being adjustable is literally so you can customize it how you want and it should just work regardless -and match the quality of the modern operating system it was made for.

I'm not saying that you should set the corner radius to make it look more anti-aliased. I'm just describing a situation in which the round corners look better. I totally agree it's a personal preference. It's up to the user to decide the amount of corner radius. I hope I make sense.

Would be great to see anti-aliasing implemented in some way at least for default border radius value on Windows 11 (same as windows and tray popups). Like in FrostedGlass plugin for Rainmeter — I believe it uses some trick to provide default W11 corners for widgets (maybe SetWindowAttribute here?), and with no ability to change it. It could be fine for RoundedTB as well, as most users probably will be fine with taskbar corners matching all default W11 corners.

I think I have solved this issue in my own repo ClippedTB, but it is still experimental.