Since version 1.8, the client includes a sharing dialog that makes fast file/folder sharing available from the file explorer. Since then, many new sharing capabilities have been included to the server, the growing complexity calls for a redesign.
After the inclusion of multiple-link shares on OC 10.0 (https://github.com/owncloud/core/issues/22327) the client could adapt to include this feature in the sharing file/folder dialog. Some options on how to implement this:
This respects the design already used in the sharing dialog:
... however, this many options make the dialog a bit overwhelming and confusing. Notice the inclusion of the permalink (https://github.com/owncloud/client/issues/5023) button to copy the local link and the redistribution of the checkboxes in tables to make the layout cleaner and avoid issues like the change button that does nothing here:
This would follow the same idea (list all the created links on a scrollable list) but applying the server's sidebar same approach: separate the two sections (currently done by a horizontal rule) in two tabs user- and link- sharing:

This layout is the best way to further extend the information shown in the dialog (e.g. history, comments, etc...) if considered in the future.
Notice in the list view I've included 2 download buttons to try to address also https://github.com/owncloud/client/issues/5627 and I've removed the hyperlinks everywhere from the mockups since with all the copy-link buttons these are no longer needed (indirectly solves #5626)
This would open the sharing dialog directly on the browser, abstracting all the sharing logic (both users and links) for a cleaner experience on the desktop. The reason to support this option would be the growing complexity on the dialog, having more and more information to edit and display:
Also, as internet connection is always required for all these actions, they can be delegated to the web-UI without much loss on the client side. My only reservation about this would be the focus on the webUI, since all the sharing options are displayed on the sidebar and not highlighted somehow to make obvious that the input is required there. Maybe this can be solved by directly opening the new modals introduced in the sharing workflow:

Again, as it happens for #5023, the best UX in this scenario can be achieved if this is carried out together with #633
cc/ @pmaier1
How I guess the cross-compatibility matrix should look:
| | pre oC 10.x server | oC 10.x+ server |
|---------------------------------------------------|:-------------------------:|:------------------------------------------------------------------------------------------:|
| legacy Desktop client - display existing share(s) | displays the only share | Displays the first share |
| legacy Desktop client - edit existing share(s) | edits the only share | Edits the fist share, note: https://github.com/owncloud/client/issues/5658 |
| legacy Desktop client - delete existing share(s) | delete the only share | Deletes the fist share, behaves like a stack, see gif below |
| future Desktop client - display existing share(s) | displays the only share | https://github.com/owncloud/client/issues/5655#issue-217242274 |
| future Desktop client - add existing share(s) | not allowed (button disabled) | https://github.com/owncloud/client/issues/5655#issue-217242274 |
| future Desktop client - edit existing share(s) | edits the only share | https://github.com/owncloud/client/issues/5655#issue-217242274 |
| future Desktop client - delete existing share(s) | deletes the only share | https://github.com/owncloud/client/issues/5655#issue-217242274 |
Awesome, thanks for the work @SamuAlfageme, great stuff! I'm in favor of the server-like approach as it keeps the client UI reasonably clean and is consistent with the workflow in the webUI.
Maybe some other opinions @michaelstingl @felixheidecke ?
Regarding the permanent links: Not sure if there is another ticket yet but I think it should not be placed in the sharing dialog since it does not involve sharing in the first place. IMO it should be located in the right-click menu split into two actions:
@michaelstingl
Regarding the cross-compatibility matrix this looks perfect to me :+1:
(sry for spamming^)
@pmaier1 for the permalink, we have this one: https://github.com/owncloud/client/issues/5023
I agree the server-like design looks nice and will take a look.
@pmaier1 @SamuAlfageme Pull request and images at: https://github.com/owncloud/client/pull/5695, feedback is welcome.
Closing! The redesign is proving to be neat after some weeks of use. Will continue opening follow-up issues is something comes up.
Awesome work @ckamm!
Most helpful comment
I agree the server-like design looks nice and will take a look.