dimsemenov / PhotoSwipe

JavaScript image gallery for mobile and desktop, modular, framework independent
http://photoswipe.com
MIT License
24.27k stars 3.31k forks source link

Fetaure Request: Make moving in gallery stage possible in all directions, not just left and right. #1017

Open COLABORATI opened 9 years ago

COLABORATI commented 9 years ago

Ok, this is a little bit over-reaching feature request maybe, but anyway: I just would like to break free from the left-right direction paradigm that is dictated by most galleries and also by photoswipe - I would like to build a path through large image collections that can go in any direction. Think reveal.js as a gallery, and maybe without a clear idea of what a "page" might be, but with totally free positioning, like on a real light table.

mjau-mjau commented 9 years ago

what image in order would be displayed when going up/down, and how will the visitor understand the logic? Unless that can be established, the visitor would only be navigating around randomly without purpose.

COLABORATI commented 8 years ago

I just think it is ok to have that feature available so it could be possible to realize some navigation that is not only fixed to left-right paradigm. Limitations are never good. I think there are many ways to make that a good interface and not let the user navigate randomly. There are many examples for this already established since years, many games offer the user to navigate to all directions. That way photoswipe could be used as a display component for visualizations that are not using the 'gallery' paradigm. Add react components to the mix and it starts to be really useful :)

mjau-mjau commented 8 years ago

So if there are for example 15 images in a gallery, and the visitors is currently viewing image # 2, what image # would be displayed if they navigate up or down?

COLABORATI commented 8 years ago

This would be completely left to your imaginative power as a developer. The ability to create that kind of navigation is only an implementation detail, the real creativity goes into answering exactly the question that you are asking. I see many interesting ways that would enable very powerful navigation features, however this thread is only about the implementation detail - currently it is not possible to create such a navigation as it is limited to a left-right navigation pattern.

But this brings up an interesting point: photoswipe should not decide about navigation paths, it does of course make sense to provide some common defaults, but it would be very useful for a picture viewing component to let developers determine navigation paths. This also opens the possibility to make this configurable to the user and let the user decide, what should happen when he navigates up or down. Yes, this is moves a little beyond the traditional idea of what is known as 'gallery', more to a generic visual navigation component. I would very welcome this kind of development. BTW you might take a look at html5 presentation tools like reveal.js to get an idea of how things might work. reveal.js unfortunately is not optimized for displaying images.

rogerbinns commented 8 years ago

Here are two examples where this could be useful. Say you have a gallery of a long varied trip (eg London, Paris & New York). At the "top" level you could have one photo of each location. If you go down from that level, you then get ten photos of each location. Going down again gets you 100 photos of each location. This means you navigate down to see more, and up to see less, while left and right retain their current meaning.

You could have a navigation path like those choose your own adventure books. eg if on a picture of a hotel you could have captions along the lines of "swipe up to see the view from the room, swipe down to see dinner, swipe right to see the evening show".

mjau-mjau commented 8 years ago

BTW you might take a look at html5 presentation tools like reveal.js to get an idea of how things might work. reveal.js unfortunately is not optimized for displaying images.

Reveal.js certainly is a good example of such behavior. I just don't see how you would want a photo-popup plugin to be optimized for such behavior.