clients
clients copied to clipboard
Update alert steals focus while typing in master password
Describe the Bug
After launching the desktop app I will immediately begin typing in my master password. If there is an update, while I'm typing, the alert pops up and takes the focus away from the text field I was currently typing in. This often causes me to perform unintended actions without having a chance to even read the alert.
Steps To Reproduce
- Launch app that needs an update
- Start typing in master password field
- See update alert steal focus
Expected Result
The update alert should not steal focus, not trigger while I'm typing, or wait until I've entered my master password.
Actual Result
The update alert steal focus while I'm typing and causes unintended actions to be taken.
Environment
- Operating system: Windows 10
- Installation method: Downloaded from Bitwarden.com
- Build Version: A version prior to 1.26.3, I don't know the exact version due to the bug itself, but it has been happening consistently for a long time
Additional Context
I really like Bitwarden but this one issue is becoming increasingly frustrating every single time I launch the app. I would love some change to this alert to fix the issue
Can confirm this happens with the upgrade popup from v1.26.4 to v1.26.5 on Windows 10. This not only steals the focus while typing the master password but for all other applications as well. So when you are running a full-screen application, this even minimizes that application, just to notify me bitwarden has an update available. As I see it, bitwarden should use the win10 notifications like any other app, too. No reason to reinvent the wheel here...
This is nagging (me) for quite some time already, would be great to have this issue fixed as soon as possible - as its totally breaking the flow of whatever I'm doing at the time bitwarden shows that popup.
This still happens as of the version before 1.30.0 and it also happens on Windows 11.
It would be great to get some sort of acknowledgment on this issue. It is the one and only frustrating aspect of Bitwarden that I run into almost every time I use Bitwarden. The typical case I run into this:
- One of my sessions expired on a website, etc. and I need to login again. I'm actively working on logging into something so I can continue with what I'm doing.
- I open Bitwarden
- It opens and I start typing in my master password and press enter
- Before I was able to hit enter, but after I started typing, an alert pops up asking me if I want to update Bitwarden
- The alert gets focus and intercepts my enter from submitting my password (<-- this is the bug, I did not want this to happen, but have no time to react)
- Bitwarden immediately closes and starts the update process
- I'm now very annoyed at Bitwarden because I was trying to do something else and there is no change that I will perceive from the update. I just want the update to happen silently on next launch or on close.
Hey @kyldvs, sorry for the late reply. I can understand this would be annoying, especially for patch releases.
How do you think we could improve this? We probably don't want to wait until the user has logged in before offering to update. Maybe a short debounce to wait X seconds after the user has last changed the value of the login form (or pressed a key), just to make sure they're not in the middle of typing?
Either wait to prompt until X seconds after last input or maybe defer the prompt until next application launch.
Well funded applications might display a small banner at the top of the window during the session if an update is available (and/or downloaded) but I think either aforementioned behavior is good enough to make the user experience much better.
Thanks for the response @eliykat !
My ideal implementation would be:
Updates are split between critical/non-critical. Critical updates can maintain the same alerting behavior that steals focus, they are critical, I don't mind if you throw them in my face as much. Non-critical updates on the other hand don't show up until you have logged in and just display as a banner at the top, or some badge in the interface indicating that an update is available, but never as an alert that takes focus.
That seems like a fair bit of work, so your solution of waiting for X seconds of inactivity before alerting would be a great first step. I still believe the alert that would pop up once I'm logged in will still be annoying, but much less so since it will be less likely to intercept an "enter" press.
One situation I could see with this change that would make the entire situation worse would be if the alert makes the window grab focus at the operating system level. I don't recall if that is the case, but if I'm in another application and the now debounced alert makes bitwarden grab focus from my current application that would be worse than the current behavior.
I think the solution is even simpler: Don't make the check whether an update is available while the password prompt is visible. Do it before that (app-launch-screen).
I (and probably most people) watch my screen when I open an app to see if I have the expected input prompt and start typing as soon as I find it. What is then disturbing me is the lose of focus midway. This means the check is currently happening in parallel - while I prefer the sequential approach in this case. And since the update might render the input 'useless' I prefer the update check before the password prompt. For performance reasons, this could be done at app start only, not every time it's opened.
If needed: Afterwards, the check can happen periodically or when the ui is opened, and then a banner can appear - this can happen in parallel, since it's not as intrusive and hinders workflows.
Thanks for your feedback, all very useful. I've raised it with our design team and I'll see what we can do to improve the autoupdate process.
Another issue I've noticed is that the "accept" option is automatically focused and "space" triggers the focused item in the alert. It seems to me the "do nothing" option should be the default focus in most alerts, and they should only trigger on "enter" (but perhaps the keys that trigger it is a native windows thing).
What if we just block the update dialog's buttons for say 5 seconds before accepting inputs again? Like one of those buttons with a countdown on them? i.e. "(5s)"
This should: a) prevent the Enter key from accepting the update b) give the user enough time to properly respond to the dialog
I certainly did not know that it would even steal focus from other applications (even for full screen ones), because I always start Bitwarden only when I need it and it will have my full attention anyways. I don't mind it prompts me with the latest update ASAP and tries to stop me from finishing my password. If I find the update worthwhile, this will end up saving me some time typing my full password twice!
If this simple fix is acceptable, I wish this to be fixed ASAP. We might open another issue for the "stealing (other application's) focus" part of the issue.
I would prefer it not prompt at all when I'm typing in my password.
I'd like to suggest (as I did in the duplicate ticket) utilizing the Windows notification system. Here's an example of a well-designed update notification (PowerToys by Microsoft):
Some options for non-disruptive alerts:
A. a dialog box in the background (not great) B. an in-app notification, such as an icon or new text in the menu or other navigation bar (better) C. native OS notification system (can be managed by user preferences on OS, best solution) D. a change of system tray/application icon badge to indicate the new update being available, possibly in conjunction with option B or C. E. Prompt only when opening and closing the application, with options to defer (i.e. Install Now, Ask Later)
Edit: Additionally I must note that the current behavior does not seem to even check if a fullscreen application (such as a game) is running, and will take the user out of that application when it steals focus.
Any updates on this?
It is the single most annoying thing about Bitwarden that almost every time I type my (very long) master password the update dialog pops up halfway through, one of my keystrokes triggers the update option, and it closes the application.
How is this still not fixed? This is completely embarrassing and should've never been implemented like this in the first place.
The update notification also steals focus when minimized to tray. Has caused issues when I'm playing fullscreen games, some of which do not alt+tab gracefully. Would prefer an OS-native notification.
This problem annoys me since i use Bitwarden, the update should not be a popup notification, it should only be a yellow bar on top of the app or sth. like that.
This bug hits me literally every time there's an update. I don't keep bitwarden running in the background and the only time I start the application is when I want to look up a password right then, so I'll start typing my master password only to have the application disappear and the UAC prompt show up because the update dialog popped up while I was typing causing me to curse the developers for the minute or two while it updates before I can get the password I was trying to look up.
@eliykat would it be possible to get an update on the status of this since it's been 2 years and this is still a common frustration among users?