System tray improvements#1084
Open
ahayzen wants to merge 5 commits into
Open
Conversation
Before in all cases we would wait for the system tray for a period of time, this would block users who don't have autohide enabled and don't have a system tray from seeing the window. Instead flip this around to either hide the window at startup if autohide is enabled and show if it isn't. Then if we have opened hidden wait a period of time and check if system tray is available, if it isn't then force the window to be shown. This provides much better UX for the general cases. Closes debauchee#1024
Member
|
Looks great on a preliminary review, will look a little deeper later. Thanks a lot for working on this and sorry for the delay in reviewing. |
This was referenced Nov 10, 2021
|
Hi, could you rebase it here ? input-leap/input-leap#1084 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
I have changed how the timer works for ensuring that the user does not get stuck with a hidden window. Instead of always waiting for the system tray to become available before deciding if to disable autohide or show the window. Now we perform showing the window or starting hidden. If we start hidden and the systemtray was not available, we then wait a period of time to check it's not being slow at becoming available, then we force the window to show.
As you can see in the table below this removes the potential for waiting at startup from the 4 different startup procedures to just 1. And this use case is an unlikely scenario now that the settings are disabled if the system tray isn't available (the user would have had to enable autohide when the system tray was available and then disable the system tray on their system).