nextcloud / gallery

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

Create custom detailsview for the slideshow #119

Open oparoz opened 8 years ago

oparoz commented 8 years ago

From @oparoz on March 1, 2016 22:18

Feature request

User type: All

User level: All

Description

We can't re-use the sidebar designed for Files as it only works in Files, especially since plugins used in tabs target the Files app (#548), so we'll have to design our own. We can probably re-use the tabs logic to be able to easily show additional information and in order to not interfere with the slideshow itself, the information should be kept in a separate container, next to the slideshow.

Like this:

detailsview_slideshow

Basic info

None

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

Copied from original issue: owncloud/gallery#549

oparoz commented 8 years ago

@bugsbane @jancborchardt @blizzz If you have ideas on what this should look like.

oparoz commented 8 years ago

I've added a screenshot. Also @setnes @demattin

oparoz commented 8 years ago

From @jancborchardt on March 4, 2016 21:6

Is there absolutely no way we can just use exactly the same? The sidebar should be a component, and especially since pictures are all files it should be the same.

cc @PVince81 @Deepdiver1975

oparoz commented 8 years ago

No way in its current state. It's a component in Files and sidebar plugins target Files. It's the same problem with the upload class (https://github.com/owncloud/core/issues/19563) and the current position of core is to let apps rewrite everything. That would require an additional Gallery maintainer focusing exclusively on keeping everything in sync with changes in core.

oparoz commented 8 years ago

From @jancborchardt on March 6, 2016 18:36

Would really be cool if we can find a way to have the core one reusable. Otherwise it will result in a really strange UX. @karlitschek @PVince81 @DeepDiver1975

oparoz commented 8 years ago

Otherwise it will result in a really strange UX.

Or complaints by users because of the lack of core features in apps. One cool alternative is being discussed in the grid view issue where apps would directly render their content in the Files app.

oparoz commented 8 years ago

From @PVince81 on March 7, 2016 9:14

I'm not sure whether it's a good idea to make that class public. But maybe there could be another mechanism to let apps inject a sidebar into their apps, for example a method var detailsView = OC.Apps.enableDetailsView();. Then they can register their own panels there.

However, note that the details view is a more complicated topic. It's not just a panel, we also need to figure out whether the panel should automatically display all default tabs (sharing, comments, etc) if a file is given as input. And it becomes even more complicated when people are using the details view for non-files, in which case they'd have to implement their own sharing, comments, etc views.

A ticket was raised here to discuss this: https://github.com/owncloud/core/issues/18170.

Or is this only about having an empty panel on the right that has the same styling as in core ?

oparoz commented 8 years ago

Or is this only about having an empty panel on the right that has the same styling as in core ?

The business case for using the Files sidebar was opened here: https://github.com/owncloud/gallery/issues/548 The idea is to be able to use any tabs available in Files, although we might remove some of the tabs, and to add our own.

The issue here was created to discuss about an alternative way of doing things where we would probably offer non-interactive views for things like comment and re-use the sharingview component in order to get rid of the dropdown.

I'll share my views on possible implementations on owncloud/core#18170

Thanks @PVince81

oparoz commented 8 years ago

While we wait we could have a very simple sidebar implementation:

  1. User clicks on action button
  2. Sidebar slides out containing only the information relevant to the pressed button i.e. comments, sharing panel, meta data

If the user presses on a different button while the sidebar is open, the proper content can slide-out covering the previous one, which would be removed/hidden afterwards.

In the end, I don't think that it would be too much of a problem to have a different sidebar in the slideshow as that's another component all together, presenting a detailed view of an image or video. The header would be different anyway, since there wouldn't be any thumbnail, the star for favourite doesn't need to be repeated there if it's already in the slideshow UI, etc.