Less intrusive automatic update notifications
Reported by elliott94 on 2012-04-20 18:00 Ok, so I've just had my first experience of automatic updates, and have some suggestions.
I was typing, and the dialog literally popped up on my screen, and automatically took focus. Before I knew what was going on, I had hit space, and the donate dialog had appeared. I hit the Not Now button, which started the download of the update. Figuring that I would update later, I hit the Cancel button which disappeared, but the download continued.
So, here are some suggestions:
- Create some kind of audible notification to alert the user to a new update (this could maybe appear in the notification area). In my opinion, this would not only be a nicer way than a dialog that automatically takes focus, but the user could choose when they wanted to actually update.
- Make the Cancel button of the download process functional, which would close the download and remove the temperary launcher from the temp directory.
- Alert the user as to when the update had been installed, as aposed to closing the installer and relaunching the new copy of NVDA. Blocking #5197
Comment 1 by briang1 on 2012-04-21 10:46 Hmm with a nod to my ticket 55 about this, maybe the way to go then is to download the update in any case with no intervention, and present the user with some audible warning that a new update has been downloaded and saved. Then the user can decide when or if to run it and update. This has the added side effect of keeping all updates and thus if reinstallation is needed, one can do it with the latest version.
I've noticed quite a few free software seems to do it this way. Of course it does mean you might, in the end fill your drive up with old versions, but I guess you could make it just keep the latest one or over write the earlier one, though for snapshots this could be a dangerous course!
Comment 2 by jteh (in reply to comment description) on 2012-04-22 21:57 Replying to elliott94:
- Create some kind of audible notification to alert the user to a new update (this could maybe appear in the notification area). In my opinion, this would not only be a nicer way than a dialog that automatically takes focus,
If we do use a balloon in the notification area, it should probably be just like every other notification area experience; i.e. no custom sounds, etc.
but the user could choose when they wanted to actually update.
They already can. The dialog has a "Remind me later" button. That said, I think an application can only display one balloon at a time and this can't stay around forever, so you'd have to do a manual check for updates if you waited too long.
- Make the Cancel button of the download process functional, which would close the download and remove the temperary launcher from the temp directory.
I kinda forgot to implement this button. :) That's a bug which I'll address in a separate ticket.
- Alert the user as to when the update had been installed, as aposed to closing the installer and relaunching the new copy of NVDA.
I honestly don't understand the point of this. It's just extra unnecessary interaction. You're already alerted to the update starting and then to its completion through the disappearance of the progress dialog and accompanying beeps. I guess i feel this would be like displaying a dialog every time the user finishes copying a file.
Comment 3 by elliott94 (in reply to comment 2) on 2012-04-23 16:09 Replying to jteh:
Replying to elliott94:
- Create some kind of audible notification to alert the user to a new update (this could maybe appear in the notification area). In my opinion, this would not only be a nicer way than a dialog that automatically takes focus,
If we do use a balloon in the notification area, it should probably be just like every other notification area experience; i.e. no custom sounds, etc.
The problem I can see with this approach is that if this was implimented, the user might miss the notification if they were typing, etc. This is why I suggested the sound in addition to the baloon hint.
but the user could choose when they wanted to actually update.
They already can. The dialog has a "Remind me later" button. That said, I think an application can only display one balloon at a time and this can't stay around forever, so you'd have to do a manual check for updates if you waited too long.
- Make the Cancel button of the download process functional, which would close the download and remove the temperary launcher from the temp directory.
I kinda forgot to implement this button. :) That's a bug which I'll address in a separate ticket.
- Alert the user as to when the update had been installed, as aposed to closing the installer and relaunching the new copy of NVDA.
I honestly don't understand the point of this. It's just extra unnecessary interaction. You're already alerted to the update starting and then to its completion through the disappearance of the progress dialog and accompanying beeps. I guess i feel this would be like displaying a dialog every time the user finishes copying a file.
On second thoughts, I agree.
I guess the main reason for me opening this ticket is that I think that an alternative method of alerting the user to updates should be added. While I do want to be notified of new updates, I would rather not have a dialog take focus of whatever I was doing, which is why I think a Windows Update style process would be suited for this.
Comment 4 by jteh on 2012-05-09 02:58 59b9e3704a41414d6e69aa047118fe1c8802f2f0 sets the initial focus to the "Remind me later" button for automatic updates to avoid accidental triggering of updates. This isn't a perfect solution, but it does solve the issue until we can implement something better in a subsequent release.
Btw, the Cancel button now works while downloading the update.
Comment 5 by jteh on 2012-05-09 02:59 Changes: Changed title from "Improve friendlyness of automatic updates" to "Less intrusive automatic update notifications"
Comment 7 by briang1 on 2015-07-06 07:59 When I raised the new ticket, Iwas mainly thinking along the lines of only having a check at the start up of nvda with the start of a system, or log in of a user. I did a search for several words and this ticket was not in the list, by the way.
I notice that soom software does indeed change its tray to something else, dropbox does this when its syncing and some anti virus programs do as well
Comment 8 by nvdakor on 2015-07-10 06:50 Hi, As for playing a sound, this might be doable for Windows 8 and later, as one can integrate with toast system if given permission to do so.
If this is accepted, it could be like this:
- Have a setting in general settings to control update notifications. Users would be able to choose between an update dialog (current behavior and set as the default) or as a balloon notification with or without playing a custom sound (I'm concerned about this, see below).
- When the update is ready, use the help balloon notification system to announce availability up an update. For Windows XP/Vista/7, it will be a help balloon, and for Windows 8/8.1, it will be a toast notification, and for Windows 10 and if it can be done, a notification displayed in Action Center.
- As explained earlier, the user should react to this event quickly, otherwise the message will be gone. The only exception so far will be Windows 10 variant, in that users can open Action Center, select the update notification and choose how to respond (see a note about this below).
- I'd limit this option to installed copies, as one must download the full installer to update portable copiey and users will not use temporary copies just for updating NVDA.
Few concerns:
- I'd rather not let NVDA play a sound when updates are available. Not only this may distract some users, it isn't ideal on a remote server where sound might be turned off.
- Users must act quickly, otherwise one must use NVDA menu to check for updates. For some, the way this work may sound like repeating some steps. Also, in Windows 10, one can go to Action Center to select the notification itself.
- Only Windows 8 and later provides easier procedure to activate the response routine: Activating toasts (Windows+V) on Windows 8.x and Action Center in Windows 10.
- For Windows XP/Vista/7, one must use help balloon tooltip control from Windows API to display these notifications, whereas in Windows 8 and later, Windows must be told to display toasts by letting apps specify this feature in manifests (can be done for WinRT/universal apps, but not sure if this can be done for desktop apps like NVDA).
Thanks.
@jcsteh Does the branch cited in https://github.com/nvaccess/nvda/issues/2257#issuecomment-155297185 fully resolve this issue, or are there portions of this ticket which remain to be addressed?
This still isn't addressed. The commit I mentioned is already included and just helps to mitigate accidental installation while typing.
In addition to using balloons and system notifications instead of a dialog, one other idea is to show an "Update ready to install" entry or similar as the first item in the NVDA menu until it is dismissed. This way, if the user misses the notification, they have another chance to see it.
That is a good idea. I find that often the update screen itself never gets focus, so some kind of reminder would be welcome I think.
Maybe a unique sound when an update is ready also. Brian
[email protected] Sent via blueyonder. Please address personal email to:- [email protected], putting 'Brian Gaff' in the display name field.
I'd like to see update notifications in the windows 10 actions center. For windows 7 I think a simple speech message woult do the trick.
I disagree, as updates are not very often encountered in use, but you do want to know when a major one has arrived surely. Brian
[email protected] Sent via blueyonder. Please address personal E-mail to:- [email protected], putting 'Brian Gaff' in the display name field.
In my view, a notification in the windows system tray would be the best option. That notification could appear every few minutes until the user decides to postpone the update until next start of NVDA. This is the trend in many software solutions from what I can see.
I thought about this a bit in the days when it was likely to be my job to implement it. For what it's worth (remembering my opinion doesn't carry so much weight these days :) ), I'd say that:
- Update notifications should be delivered using the appropriate system mechanism. On Windows 8.1 and earlier, this is help balloons. In Windows 10, this is the Action Center. I think help balloons actually get mapped to the Action Center, so implementing one might give us both. I also vaguely recall something about recent versions of wx having a framework to make OS notifications easier, but I might be wrong.
- Because these can be missed and/or users might not think/know how to access them, we should also add an item to the top of the NVDA menu indicating that an update is available. This way, next time the user opens the NVDA menu, they will see this and will be able to easily activate it if they wish.
Hi,
I ran an experiment in July 2019 that simulates this feature for add-on updates. The potential is there - in order to fully use this, wxPython 4.1.0 (powered by wsWidgets 3.1.x) and Windows 8 or later are required (an actionable toast is a better approach, in that it allows users to perform tasks such as view release notes, update then, or postpone it). This cannot be done for Windows 7 at the moment for two important reasons:
- We have no facility to click help balloons, as that's what wx.NotificationMessage will generate on Windows releases other than 10.
- Windows 7 is going out of support in 2020, so we need to take this into consideration.
Thanks.
Hi,
Now that wxPython 4.1.0 is out, let's get this conversation going again (I expect this won't happen for a while).
Thanks.
Blocked by #11057.
Hi,
2021 update: I think a block on #11057 is not needed at this time.
As a follow-up to my note on wxPython 4.1.0, in order to generate toasts properly, a specific function must be called before creating the first toast. This function wants app shortcut and app model string, meaning that an installed copy of NVDA is a must (at least for now). My earlier reminder on Windows 7 still applies (out of support and not easy to click help balloons).
Thanks.
Still having my read all interrupted when not at the keyboard, still frustrated. Any update on this?
@ctoth - seems like a good candidate to be part of #13915, adding it there