nextcloud / gallery

DEPRECATED Gallery app was replaced by Photos
https://github.com/nextcloud/photos
GNU Affero General Public License v3.0
109 stars 58 forks source link

Share drop down in gallery is not properly shown #352

Closed danxuliu closed 6 years ago

danxuliu commented 6 years ago

There are some design issues with the share drop down shown for albums in the gallery:

*The social sharing menu and toggle icon are shown only if at least one of the social sharing apps is enabled.

Share drop down in gallery: gallery-sharedropdown

Share drop down in slideshow (for reference, no issues here): gallery-slideshow-sharedropdown

The first three issues are caused by the rules for .actions input, .actions button, .actions .button. As the share drop down in the gallery is a descendant of the actions bar its elements end being floats with no margins.

It is not possible to use .actions :not(.shareDropDown) input, ... to prevent the rules to be applied on the share drop down elements because if the element has any other ancestor before the share drop down that elements would match :not(.shareDropDown) and the rules will be applied anyway (see last note).

Overriding the float rule with .actions .shareDropDown input, ... { float: none; } is easy, but the margin that is being overriding with margin: 0; depends on the element type. Moreover, overriding the margin again to restore the overridden value feels a little hacky and not very maintainable ;-) (for example, the overridden margin for input elements comes from the server).

Maybe it would be better to add another class to the inputs and buttons that are shown in the action bar so the problematic rules can be applied just to them? Or maybe cause the share drop down to be added as a sibling of the actions bar instead of a child of it? Please note that those are just untested ideas, I do not know what side effects they could have ;-)

Regarding the fourth issue it is just that the social sharing menu is moved to the right only in the slideshow.

@nextcloud/designers

jancborchardt commented 6 years ago

So I wonder if it's even warranted to put more work in the Gallery app regarding this, or if the work should rather be done on a proper grid view for the Files app. There we already have the sidebar and other elements like the sidebar tabs etc. Recreating this all in the old Gallery code seems unnecessary and a lot of work.

MorrisJobke commented 6 years ago

So I wonder if it's even warranted to put more work in the Gallery app regarding this, or if the work should rather be done on a proper grid view for the Files app. There we already have the sidebar and other elements like the sidebar tabs etc. Recreating this all in the old Gallery code seems unnecessary and a lot of work.

Full ack.

oparoz commented 6 years ago

So I wonder if it's even warranted to put more work in the Gallery app regarding this, or if the work should rather be done on a proper grid view for the Files app. There we already have the sidebar and other elements like the sidebar tabs etc. Recreating this all in the old Gallery code seems unnecessary and a lot of work.

It doesn't really matter if Files gets a grid view. A sidebar should be made available as a component so that any app can use it to let users perform basic actions such as sharing otherwise we end up with dozens of different implementations which will degrade the user experience of the product when using multiple apps.

MorrisJobke commented 6 years ago

It doesn't really matter if Files gets a grid view. A sidebar should be made available as a component so that any app can use it to let users perform basic actions such as sharing otherwise we end up with dozens of different implementations which will degrade the user experience of the product when using multiple apps.

Correct - we started a ticket in the server repo for this: https://github.com/nextcloud/server/issues/7738

danxuliu commented 6 years ago

I wonder if it's even warranted to put more work in the Gallery app regarding this

For this specific issue, I say it is. It is not like changing the full implementation or making a complete redesign that will be thrown away. It is a menu that is out of place. It is right in front of the user, it looks bad, and it needs just a small fix.

Users do not care if in the future the gallery is going to use components provided by the server. They click the button, they see the menu out of place and they think "Seriously? Haven't the developers noticed this? Or didn't they care? Meh..." (OK, that is what a mean user would think; other users would say "Yay! I found a bug! Let's report it so they can improve the app! :-D" ;-) ).

jancborchardt commented 6 years ago

@danxuliu yeah, good point about this specific thing. In general though we should really focus on the grid view though. :)

@oparoz absolutely agree there, but that seems to take much more investment.