Add-on store: add warning dialog#15246
Conversation
Qchristensen
left a comment
There was a problem hiding this comment.
Great work, thanks Sean!
See test results for failed build of commit 707222d8fa |
|
+1 to @michaelDCurran's proposed revision.
This shouldn't need to be verbose. People know what add-ons are, and if not
they have the manual. A brief reminder should be all that is needed.
|
|
Actually, @seanbudd, I would prefer to see this as an one-time dialog that comes
up on store first open, that gives the warning, and then gets far far out of the
way thereafter. Possibly with a "don't show this again".
Then no in-dialog nag would be required.
Just an alternate opinion.
|
|
If it were a one-time dialog, which I would also support, then the
original message is okay I think.
|
|
I also support the one-time dialog. A disclaimer at each use of the add-on store is too invasive IMO. more so when it adds a tab keypress to the navigation flow. In addition, I think that the disclaimer in the User Guide should be more explicit (and longer than the one of the GUI if needed). A disclaimer paragraph located just after the introduction of the add-on store's global description would be the best IMO, i.e. a 13.1 paragraph inserted after the introduction of section 13 and before the current paragraph 13.1. At last, if you stick with the disclaimer in the add-on store's GUI:
|
|
@seanbudd, I have tested the new version of this code. I have various remarks:
|
|
I second the comment from @CyrilleB79 |
|
@seanbudd: |
Raised in #15246 (comment) Summary of the issue: Sometimes a custom modal dialog is required, instead of just using gui.message.messageBox. For example, adding additional buttons or controls instead of just message text and ok/cancel/yes/no buttons. However gui.message.messageBox adds special handling to ensure users are warned if actions are blocked by an open modal dialog. Description of user facing changes Users are warned when trying to perform a task (e.g opening the NVDA menu) when modal dialogs from the add-on store are waiting a response. Other modal dialogs have also been addressed, unless they are non-blocking (i.e. started in a separate thread). These might be worth addressing too, on a case-by-case basis. Description of development approach Create a helper function to show a dialog as a modal dialog, while performing the necessary handling of messageBox Testing strategy: Test opening various Add-on store dialogs and performing nvda+n
Link to issue number:
None
Summary of the issue:
Users should be informed of the risk of installing add-ons
Description of user facing changes
When opening the add-on store, a warning dialog is shown.
There is a checkbox to not show the warning again.
Description of development approach
Uses similar approach to the user stats dialog
Move banner creation to helper function
Added typing to
guiHelper.BoxSizerHelper. Fix bug where if aStaticBoxSizeris used with an intflag of buttons,BoxSizerHelper.addDialogDismissButtonswouldn't work correctlyAdd support for creating labelled checkboxes using the
BoxSizerHelper,LabelledControlHelperandassociateElementsTesting strategy:
Test banner using
--disable-addonsTest with sample code in source code for
addDialogDismissButtonsbug.Test the warning nag - ensure the checkbox to hide the warning works
Known issues with pull request:
None
Change log entries:
N/A
Code Review Checklist: