-
Notifications
You must be signed in to change notification settings - Fork 829
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Dialog to confirm requested permissions #609
Conversation
Thanks @yuya-oc! I can ask one of our designers to help with a design mock up for it. Questions:
|
|
Hey @yuya-oc, sorry for the delay on this. Sent you a note on pre-release and added notes on this Google presentation: https://docs.google.com/presentation/d/1uyIQxcscGzKcXPHUMMb3Rg7Loxld1ztmOE7t4d0z_nA/edit#slide=id.g28d3453657_0_16 I think we're close after a minor change to the dialog design and positioning. Regarding 2), not sure how much work this would be? Thinking of a use case where the user receives the dialog while the app is minimized, without realizing it until much later. It could be a bad user experience if they didn't receive any notifications during this time period. |
1 - I'm still evaluating the options. Will get back to you For the dialog, are we able to get close to the Chrome "request permission" dialog? This would mean
|
2 - I need to consider the case where many requests are coming. At least a day would be needed. Dialog: It would be more complex flow because it's combination of main and renderer process though, possibe by using Popover of react-bootstrap. https://react-bootstrap.github.io/components.html#popovers |
@yuya-oc How much more complex would it be? The reason why having a "nicer" dialog would be good is that the majority of users will see this dialog (given most have desktop notifications enabled). So it's worth spending some the time to improve them. However, if it's a lot of work we can consider keeping the original design and just changing the texts. The other dialogs we're adding (navigating to external pages, uncaught exception errors) are more rare and only a few people will ever see them. |
I feel it's difficult to describe enough in sentences... It's surely complex because two asynchronous things work together, so I need to manage the state in each processes. But the flow is almost similar in both cases. However, I need to implement the dialog itself in addition to logical flow. |
Of course I agree to create nicer dialog. |
This is a prototype for the dialog. Icons are chosen from Bootstrap glyphicons for now. https://getbootstrap.com/docs/3.3/components/#glyphicons |
aee4c4a
to
46d01fa
Compare
Implemented the dialog with asynchronous flow. https://circleci.com/gh/yuya-oc/desktop/471#artifacts |
This looks great to me. Just two minor questions/notes:
|
|
|
d29f52f
to
f47a1af
Compare
Rebased to solve conflicts. #600 is still working fine. |
Before submitting, please confirm you've
npm run lint:js
for proper code formattingPlease provide the following information:
Summary
Use
session.setPermissionRequestHandler()
to confirm permissions when they're requested.Results of the dialog are saved to
AppData\Roaming\Mattermost\permissions.json
.This implementation is naive. The dialog pause the application until selecting a choice.
Issue link
https://mattermost.atlassian.net/browse/PLT-7458
Test Cases
Additional Notes
https://circleci.com/gh/yuya-oc/desktop/411#artifacts