gallery/README.md
Alex A. Naanou cad5e6ea58 notes...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2023-08-18 18:08:44 +03:00

80 lines
2.1 KiB
Markdown

# Gallery prototype
## ToDo
- Save current gallery (zip)
- ~~Views: Gallery / Details / Lightbox~~
- Details: populate fields
- ~~toolbar -- floating over gallery~~
- ~~info (current)~~ -- should this be floating over image??
- ~~select / deselect (current / all)~~
- ~~delete / clear deleted (current / all)~~
- crop
- load
- ~~styling and icons...~~
- ~~draggable?~~
- ~~handle wrapping better (collapsed / expandend)~~
might still need to resize to content on multiline...
- Lightbox: hide cursor on timeout...
- Gallery/Lightbox/Details: handle dragging image out of browser...
- Lightbox: hover indicators:
- start/end (a-la ImageGrid.Viewer??)
- next/prev
- ~~count~~
- ~~selection~~
- ~~Gallery: Adaptable image justification in grid~~
- ~~Gallery: Spacial navigation (up/down/left/right)~~
- **auto focus image iff the gallery is visible**
- handle focus / tabindex (???)
- ~~option: .loop_images~~
- ~~Up/Down: might be a good idea to select an image based on
longest border instead of closest center (current)...~~
- Gallery: PageUp/PageDown, home/end + allow page navigation
- **Gallery: focus visible...**
- ~~Gallery/Lightbox: Selection of images (space / ctrl-a / ctrl-d / ctrl-i)~~
- ~~Lightbox: show selection marker~~
- **Gallery: constructor...**
```
Gallery([options])
Gallery(urls[, options])
Gallery(dom[, options])
Gallery(dom, urls[, options])
```
- **Gallery: view crop**
- open/change/close
- crop stack (a-la ImageGrid.Viewer)
- actions:
- "from selection"
- ~~Gallery: drag-n-drop~~
- ~~drop files/images~~
- ~~drag to sort~~
- **drag marked**
- touch...
- ~~Gallery: remove image~~
- ~~basic delete~~
- ~~delete marked~~
- ~~mark images for deletion + delete marked~~
- ~~Gallery: serialize / deserialize~~
- ~~Lightbox: navigation (keyboard / mouse)~~
- ~~Lightbox: fullscreen mode~~
- Gallery: web component (???)
- ~~Would be nice to retain the scroll position on refresh...~~
- ...
## Install
Before testing this needs icon fonts to be available:
```
$ npm install
```
## Architecture
XXX
<!-- vim:set ts=4 sw=4 : -->