mattermost / desktop

Mattermost Desktop application for Windows, Mac and Linux
Apache License 2.0
1.97k stars 793 forks source link

[MM-54863] Add permissions manager UI in Edit Server modal, improve permission checks to be less missable #3059

Closed devinbinnie closed 2 weeks ago

devinbinnie commented 4 weeks ago

Summary

This PR adds new UI elements to the Edit Server modal, where a user can view/grant/revoke the permissions that are set for each of their servers. Revoking will set the permission to Always Deny, and granting will set it to accept. This should hopefully help users who have missed the prompt, misclicked, or need to change one of the settings. The UI will also include links to System Preferences when we know permissions were denied, or if we can't read the permissions (in the case of notifications).

What I've also done is tried to be a bit more deliberate about some of the permission prompts, so that they will pop as a result of a user's action in most cases:

UX Note: This is still using the old modal interface as it will be a lot more work to reskin these modals to use our new modal interface, so I've decided that since this functionality was more important we should try and get it working as quickly as possible, especially for the upcoming ESR. @abhijit-singh please take that into account when reviewing UX, in that we shouldn't be too worried about pixel-perfection since the plan should be to replace all these modals' UI with something newer (need to get rid of Bootstrap :P)

Screenshots

Screenshot 2024-06-10 at 2 57 19 PM

Ticket Link

https://mattermost.atlassian.net/browse/MM-54863

Add permissions manager UI in Edit Server modal, improve permission checks to be less missable
devinbinnie commented 4 weeks ago

@enzowritescode I've asked for a quick security pass since this changes affect server permissions, has the app open the OS's system preferences, and exposes new functionality to the internal front-end.

I'm not particularly concerned about anything here, but a quick look makes sense to me given what's being touched.

devinbinnie commented 3 weeks ago

@enzowritescode I've asked for a quick security pass since this changes affect server permissions, has the app open the OS's system preferences, and exposes new functionality to the internal front-end.

I'm not particularly concerned about anything here, but a quick look makes sense to me given what's being touched.

cc @jupenur

devinbinnie commented 2 weeks ago

Looks good @devinbinnie, thanks! Also, heads up that the map-marker-outline icon is now in compass and we can use that for the location permission instead of the pin icon.

image

Done! image