Skip to content
This repository has been archived by the owner on Sep 27, 2023. It is now read-only.

Automatically hiding the taskbar is buggy, flickers and doesn't respond correctly. #36

Open
shanyan-wcx opened this issue Sep 5, 2021 · 38 comments
Labels
bug Something isn't working

Comments

@shanyan-wcx
Copy link

When the taskbar is automatically hidden, the application cannot be full screen, and there will be a process of turning into a fillet when the taskbar is displayed.

屏幕截图 2021-09-05 130900

@shanyan-wcx
Copy link
Author

I found that the former seems to be a bug in win11 system.

@torchgm torchgm added the bug Something isn't working label Sep 18, 2021
@torchgm
Copy link
Collaborator

torchgm commented Sep 18, 2021

Auto-hide isn't completely supported, although it appears you have some additional taskbar mods that may be interfering. Please let me know what they are so I can look into this issue further.

@prakharb5
Copy link

prakharb5 commented Sep 23, 2021

I just tried out the auto-hide taskbar feature while RoundedTB is running.

I observed that when RTB is running, I cannot hover near the bottom edge to bring up the taskbar. Hovering would not bring it up. Pressing Start button or pressing Win+T would still bring it up.

As soon as I closed RTB, it started working correctly again. After running RTB again, taskbar stopped opening on hover again.

@prakharb5
Copy link

prakharb5 commented Sep 26, 2021

I am on the latest version of RoundedTB, and I noticed that after having autohiding taskbar enabled, the taskbar would flicker when bringing the mouse to the bottom, and when trying to open the right click menu on the tray, i would get a busy cursor with the app crashing after a while.

@shanyan-wcx
Copy link
Author

I used trafficmonitor. Can you be compatible with it in the future?

1 similar comment
@shanyan-wcx
Copy link
Author

I used trafficmonitor. Can you be compatible with it in the future?

@prakharb5
Copy link

@shanyan-wcx your request is not connected to this issue. It would be better to either look if there is already an issue or open one yourself :)

@enoversum
Copy link

enoversum commented Sep 29, 2021

I get the same flickering of the whole-length normal taskbar on Windows 11 (Beta) with the current version of RoundedTB when I move my mouse towards the edge of the screen as @Cyberdroid1 reported.
When I move my mouse towards the auto-hidden taskbar, first the whole taskbar appears, then only your mod parts are showing (only docked icons in the middle, or additional systray on the right). No other taskbar mods running. Also, there is a constant flickering (a few pixels high) along the whole width at the bottom as soon as RoundedTB is running.

EdOPiLylAr.mp4

@torchgm
Copy link
Collaborator

torchgm commented Oct 4, 2021

Yeah, turns out Windows' autohide feature directly interferes with RoundedTB as it also tries to set regions. I've given up supporting it.

However, I am working on an alternative autohide mode as part of RoundedTB that should entirely mitigate any flickering issues, be a lot snappier and also have a toggleable animation. No word on when exactly it'll be implemented or if it will even be feasible, but from my initial tests it seems to be something that I can hopefully have ready for the next couple of updates.

@enoversum
Copy link

Yeah, turns out Windows' autohide feature directly interferes with RoundedTB as it also tries to set regions. I've given up supporting it.

However, I am working on an alternative autohide mode as part of RoundedTB that should entirely mitigate any flickering issues, be a lot snappier and also have a toggleable animation. No word on when exactly it'll be implemented or if it will even be feasible, but from my initial tests it seems to be something that I can hopefully have ready for the next couple of updates.

@torchgm Too bad that this is the case so far. Classic MacOS-style docks often hide the taskbar completely and implement their very own (working) version of auto-hiding docks, so I assume there must be ways of achieving this.

Thanks for letting us know you'll be working on some kind of version of that! I understand this takes time. I for one wouldn't want to live without an auto-hiding taskbar, as I barely use it when I actively work in an app for hours :) .

@torchgm
Copy link
Collaborator

torchgm commented Oct 8, 2021

Yeah, most other docks are just windows with their own completely custom animations/triggers. Because it's the process' own window, it has a lot more control in how it customises it.

Meanwhile, the taskbar is a special type of window called an Application Desktop Toolbar, or AppBar. AppBars are pretty cool in that they can automatically snap to monitor edges, resize the work area (the space maximised windows take up), and stack on top of each other.

They can also autohide, which they do by just actually moving the AppBar across the screen (which is also why the autohide animation can be so inconsistent - it depends on how busy DWM is). Problem is it can then run onto other monitors and overhang, so they use a region to prevent that. All of this applies to the taskbar as well, which uses the same autohide behaviour. As a result of it constantly setting a region as it moves, it resets the rounded/split effects that RTB applies. This means the taskbar either becomes solid again as it slides down or it flickers significantly as it moves.

Luckily, Windows lets programs specify the work area themselves, and also alter the visibility, opacity etc. of windows, which means I can implement my own autohide. This was a very early experimental attempt just to see if it'd be possible, it'll obviously be more fully-fleshed out and customisable by the time it makes it into an update:

AggravatingSoupyIvorybilledwoodpecker.mp4

@enoversum
Copy link

@torchgm Man, that is a very well-explained way of describing the problems with the taskbar and its auto-hiding. I'm surprised how easily understandable you made that - got it! As for the animation, that looks very pleasing, and I'm happy to see you found your way around the native auto-hide feature. By all means, take your time, I'm nonetheless looking forward to testing it out.
I assume you'll also give users the option to choose an animation style for the hide feature?

@torchgm
Copy link
Collaborator

torchgm commented Oct 10, 2021

Animations are hard with how limited customisation of the taskbar is, but the current plan is for an (optional) fade-in/out.

@enoversum
Copy link

Thanks for letting me know 🙂!

@szeredniklaszlo
Copy link

szeredniklaszlo commented Oct 19, 2021

Can we get a compiled early version with this included? :D This is awesome!

This was referenced Oct 27, 2021
@XXVtc
Copy link

XXVtc commented Nov 6, 2021

Hey man, I would love to test this feature already.
Is there any way for interested people to test it out for now?

@torchgm
Copy link
Collaborator

torchgm commented Nov 8, 2021

Not yet - I've actually stripped out all the code for it. It was in some Canary build from a while ago but I'm focusing on finalising R3.1 first as that fixes a lot of other minor issues that cause confusion.

@crutchcorn
Copy link

Please be patient with @torchgm regarding this feature and others. There are many many reasons a developer may not want to share RC/beta/alpha code or builds.

Torch, I wish I could contribute more meaningfully via code, but unfortunately do not have much experience with native code

@torchgm torchgm changed the title Automatically hide taskbar issues Automatically hiding the taskbar is buggy, flickers and doesn't respond correctly. Nov 16, 2021
@Peedee2002
Copy link

Thanks for working on this issue - honestly even windows's implementation of autohide sucks (some apps will not let you see the taskbar when you move cursor to bottom, and the popups for stuff like language settings and start are built without the autohide feature in mind). A fade-in fade-out sounds more promising than the pop-in pop-out that exists.

@stephtr
Copy link

stephtr commented Dec 12, 2021

That looks awesome!
An additional feature I would be really interested in would be to show the taskbar as long as it isn't (partially) covered by another window and automatically hide it as soon as there's an overlap (not only for maximized windows), similar to some docks on Linux.
I guess that's a feature which can be worked on once auto-hiding itself is finished 🙂

@bigQY
Copy link

bigQY commented Dec 19, 2021

That looks awesome! An additional feature I would be really interested in would be to show the taskbar as long as it isn't (partially) covered by another window and automatically hide it as soon as there's an overlap (not only for maximized windows), similar to some docks on Linux. I guess that's a feature which can be worked on once auto-hiding itself is finished 🙂

2021-12-19.15-09-44.mp4

The solution of this project(https://github.com/ChanpleCai/SmartTaskbar) may be helpful to you

But when my mouse pointer moves to the bottom of the screen, the taskbar still doesn't appear normally.This is the problem caused by RoundedTB

@stephtr
Copy link

stephtr commented Dec 19, 2021

Ah, I actually used that app a few years ago. Unfortunately, their approach doesn't work well with multiple monitors.
I'm already curious to see @torchgm's code 😁

@TechStudent10
Copy link

Animations are hard with how limited customisation of the taskbar is, but the current plan is for an (optional) fade-in/out.

So when are we gonna get something like this in a canary/RC build: https://twitter.com/TorchCTI/status/1478450406837653509?cxt=HHwWisC42fqzwYQpAAAA?

@rysiekku
Copy link

rysiekku commented Jun 7, 2022

I don't know why, but I found out, that auto-hide works perfectly fine, when you have TranslucentTB on, and margin set to zero.

@pallebone
Copy link

I don't know why, but I found out, that auto-hide works perfectly fine, when you have TranslucentTB on, and margin set to zero.

You are a legend. Works perfect.

@parazite7
Copy link

Yep that works perfectly, seems as though having a tiny sliver of the taskbar at the bottom of the screen visible even when "hidden" by setting the margin to 0 or 1 (so your mouse can actually overlap it) makes it work

@italoacr
Copy link

italoacr commented Aug 2, 2022

Apparently the flicking bug is gone 🤩

Apparently.the.flicking.bug.is.gone.mp4

@Peedee2002
Copy link

Apparently the flicking bug is gone 🤩
Apparently.the.flicking.bug.is.gone.mp4

oooh what build is this? and what version of windows?

@italoacr
Copy link

italoacr commented Aug 2, 2022

Hi :)
RoundedTB version 3.1

Windows 11 Home Single Language
Version 21H2
Compilação do SO 22000.795

@enoversum
Copy link

enoversum commented Aug 9, 2022

I can confirm, no more flickering. Only on Windows 11 22621.440 (Beta Preview), RoundedTB in Dynamic Mode isn't centred completely by default but needs a re-setting in the Windows Taskbar settings to be centred again (it would be centered, but the taskbar still goes to the very left edge, until you re-set it in settings). Other than that, consider me happy!

@FreeTurk
Copy link

FreeTurk commented Dec 18, 2022

for @torchgm, I have an idea for the auto-hide issue but I am not sure about it.

From what I have seen, what triggers autohide is a 1px tall border on top of the taskbar, which you can slightly see when the unmodified taskbar is hidden. If you cannot hover over that border, in a case such as roundedTB's margins hiding that border, you cannot make it appear. What can be done (as I said, if possible, I don't know it's feasibility on the code side) is to show that top border while the TB is hidden, and hide it back again when the TB is up.

Or you can custom make some sort of pressure-activated auto-hide, which I would prefer. Honestly, f*ck the way Windows handles auto-hide where my slightest touch makes it appear. But for this one, I know it would be heavy for you, so don't even count it as a suggestion 😛

So what basically should be done is to drop the top margin to 0 while taskbar is hidden and back to whatever value it was when it is risen. I think it can be done since you mentioned the windows class of TB does the autohide by shifting the window (correct me if I am wrong) so you can watch the vertical position of the TB and change depending on that.

-Emir Öven

@edluksss
Copy link

edluksss commented Jan 18, 2023

for @torchgm and for everyone that wants to fix the auto-hide issue and start to use this amazing personalitation-tool. This bug can be fixed easily if you click on "..." and set each parameter to -0. This is going to solutionate your problems :)
This solution can make the task bar start blinking if you also have translucentTB and the compatibility option activated, you simply have to deactivate it and everything will work perfectly.

@Soumya-Prakash-Biswal
Copy link

taskbar not showing on hover... i want to fix this bug....please help

@Jannik02x
Copy link

for @torchgm and for everyone that wants to fix the auto-hide issue and start to use this amazing personalitation-tool. This bug can be fixed easily if you click on "..." and set each parameter to -0. This is going to solutionate your problems :) This solution can make the task bar start blinking if you also have translucentTB and the compatibility option activated, you simply have to deactivate it and everything will work perfectly.

Thank you! This works perfectly for me. :D

@Dobby-progam
Copy link

I got the auto hide to work fine with no problems on windows 11 Home 22621.1413 22H2

@gloatoriginal
Copy link

2023-04-16.15-14-38.mp4

Currently receiving the flashing like from the OP post, Windows 11 Version 22H2, Build: 22624.1610 with the following settings:
image

@Manas-P
Copy link

Manas-P commented Apr 25, 2023

When the taskbar is automatically hidden, the application cannot be full screen, and there will be a process of turning into a fillet when the taskbar is displayed.

屏幕截图 2021-09-05 130900

Just update the margin to 0 or 1
image

@Void48
Copy link

Void48 commented Sep 4, 2023

Yeah, most other docks are just windows with their own completely custom animations/triggers. Because it's the process' own window, it has a lot more control in how it customises it.

Meanwhile, the taskbar is a special type of window called an Application Desktop Toolbar, or AppBar. AppBars are pretty cool in that they can automatically snap to monitor edges, resize the work area (the space maximised windows take up), and stack on top of each other.

They can also autohide, which they do by just actually moving the AppBar across the screen (which is also why the autohide animation can be so inconsistent - it depends on how busy DWM is). Problem is it can then run onto other monitors and overhang, so they use a region to prevent that. All of this applies to the taskbar as well, which uses the same autohide behaviour. As a result of it constantly setting a region as it moves, it resets the rounded/split effects that RTB applies. This means the taskbar either becomes solid again as it slides down or it flickers significantly as it moves.

Luckily, Windows lets programs specify the work area themselves, and also alter the visibility, opacity etc. of windows, which means I can implement my own autohide. This was a very early experimental attempt just to see if it'd be possible, it'll obviously be more fully-fleshed out and customisable by the time it makes it into an update:

AggravatingSoupyIvorybilledwoodpecker.mp4

Do you still plan on releasing this? The current default auto hide animation in Windows 11 is terrible

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests