ImageGrid/ui/TODO.otl
Alex A. Naanou 0ff8bb0636 added loading animations (disabled), cursor now auto-hides...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2013-06-01 18:21:48 +04:00

273 lines
8.0 KiB
Plaintext
Executable File

Roadmap
[_] 44% Pre-Alpha - limited preview
[_] 75% navigation
[X] image next/prev
[X] ribbon next/prev
[X] screen next/prev
[_] marks next/prev
[_] 26% editing
[_] 0% ribbon
[_] merge up/down
[_] flatten
[_] sort
[_] 57% image
[X] shift up/down
[_] shift left/right
[X] mark/unmark (selection)
[X] rotate left/right
[_] crop
[_] 0% metadata
[_] tag
[_] note
[X] open with external software
[_] 14% marked (selected) set
[X] crop (marked only mode)
[_] tag
[_] shift up/down
[_] shift left/right
[_] group
[_] note
[_] save as set
[_] 33% crop selection via
[X] marked
[_] tag
[_] date
[_] 39% storage and loading
[_] 75% ImageGrid cache
[X] generate
[X] load
[X] save
[_] update
| needs revision...
[_] 25% fav tree
[X] generate
[_] load
[_] save
[_] update
[_] 25% xmp files
[X] generate
[_] load
[_] save
[_] update
[_] 33% raw directory tree
[X] load
[_] save
[_] update
[_] 36% UI
[_] 40% modes
[_] cropped mode
| show only selected images
[X] single image
[_] slideshow (single image)
[X] ribbon
[_] single ribbon
[_] 33% other
[_] load/open
[_] select saved set
[X] keyboard help
[_] general help
[_] settings
[X] image info
[_] 0% Alpha - limited preview
[_] 0% Beta - public?
[_] 0% 1.0 - public
[_] 23% Gen 3 current todo
[_] 46% High priority
[_] BUG: aligning still sometimes gets off...
| ...after rotating a number of images
|
| happens when:
| - getScreenWidthInImages() < 2
| - looking through images in one direction and back, some get misaligned
| ...this is stable behaviour by centerRibbon(...),
| calling it again will not fix this.
| moving next/prev will fix the issue until it comes back again
| - affected by LOAD_SCREENS and number of images in ribbon
| current figures:
| Ribbon: 18
| Position going forward: 4
| Position going back: 1
| LOAD_SCREENS: 6
| NOTE: changing LOAD_SCREENS moves the affected positions.
| NOTE: had a similar bug where some images still kept their
| prior sizing after recycling...
| ...check if centerRibbon(...) and correctImageProportionsForRotation(...)
| are called in right sequence...
[_] BUG: changing window size in single image modes messes things up...
| until we cycle to ribbon mode and back...
[_] BUG: sometimes duplicate images get loaded...
| this happens when jumping back and forth on the mid ribbon until
| the last element shows up and then moving left until the frame
| around the image disappears...
| at this point, this will return 2:
|
| $('[order='+$('.current.image').attr('order')+']').length
|
[_] BUG: jumping screen images does not load the adjacent ribbons...
| positioning is OK but ribbons are not fully visible...
[_] ASAP: test on Android...
[_] empty view (no data) usable...
[_] propper system init (start w.o. any data)
[_] default STUB image...
| or a loading animation..
|
| ...would be good to make something pixilated so as to look nise
| on various magnifications.
|
| keep always cached.
[_] tweak image pre-caching size -- keep as many images cached as possible.
| might be good to always cache the smaller previews so as to make things
| look faster...
[_] slideshow mode...
[_] single ribbon mode
| should this have up/down navigation?
|
| something like showGidsAsRibbon(gids) would be generic and logical...
[_] image sorting (reverse/date/name/...)
[_] add ability to save/load ranges of images and the structures around them
| e.g.load image 100 to current ribbon -> will load 100 images
| for current ribbon and all the in between images from other
| ribbons above and below...
[_] build cache in background...
| this must be done while updating IMAGES live...
[_] 6% mark-based operations
[_] 33% cropping selection
[X] marked
[_] by tag/collection
[_] by group
[_] shift up/down
[_] tag
[_] group
| a group should behave as a single image but is
| viewable/expandable as a ribbon...
|
| should be two types of groups:
| - strict - always as a single image
| like a set of versions, processed and processing
| versions of the same image.
| (auto-group?)
| - loose - similar images, could be named collections
| viewed individually, but can be accessed either from
| a list or a member image (primary).
[_] collection
| make or add to existing collection
[_] 50% Undo/Redo
[X] basic one step (revert to last save)
[_] push/pop state stack
[_] 0% grouping / meta-image
[_] versions w. label image
| a set of images that is represented by one of the group
[_] collection
[_] 75% UI elements
[X] indicators
[X] image info
[X] stub info dialog
[_] detailed image info
[_] 0% gesture support
[_] up/down - shift
[_] left/right - navigate
[_] 0% CSS
[_] cleanup
[_] split themes and layout
[_] 0% manual ordering
[_] 0% tweak loader
[_] thresholds and frame size
[_] remove extra and repetitive actions
[_] caching config
[X] import fav dirs (wo. index)...
[X] ASAP: load/view un-cached directories...
[X] ASAP: support relative paths in cache...
[X] ASAP: account for image rotation with screen proportions while positioning
| getRelativeVisualPosition(...) gives an odd position when:
| - image is rotated
| - image is screen-proportioned
[X] NOTE: rotating might still produce alignment errors
| this is due:
| - most outerWidth/outerHeight being used do not account for margins...
[X] ASAP: rotate images in the viewer...
| This is a tad complicated by:
| - marks
| - image elem proportions that can change
[X] 100% themes
[X] light
[X] gray
[X] dark
[X] make focus up/down chose a closest independently of direction...
| navigation should be stable and moving up then down should yield
| exactly the same result...
[X] ASAP: rewrite binSearch!!
| linSearch obviously is not usable for large sets of data...
[X] split saving/loading into files and localStorage
| DATA
| - stored in localStorage
| - stored in file
| IMAGES
| - stored only in files (does not change)
|
[X] 100% modes
[X] ribbon
[X] single-image
[X] Save/load state
[X] 100% action visual indication
[X] first/last image
[X] shift up/down
[_] Low priority
[_] Help
[_] Keyboard config
[_] general config
[_] 58% Gen 3 UI implementation
[X] 100% Infinite ribbon (lib)
[X] cyclic ribbon
[X] image block generation
[X] image block update
[X] ribbon head/tail management
| must be adaptive to current user scroll speed...
|
| at least a couple of screens at current zoom level...
[_] Partial save/load
| save only a block or changed data...
[X] Adaptive preview size (lib)
[X] Multiple ribbon (reuse)
[_] 0% User actions
| see [[controls.otl]] for basic actions...
|
| additional actions:
[X] 100% toggle mark image
[X] mark between
| mark all images between closest marks
[X] mark all/none
[X] mark invert
[X] show marked only in ribbon (crop selection)
[_] crop image
| shows a red/blue rectangle around image
|
| can be:
| turned +/- 90 deg
| turned arbitrarily
| scaled with constrained proportions
[_] show crop as red rectangle
[_] show only cropped area
[_] show crop as black veil
[_] add note to image
| a-la flickr notes...
[_] edit IPCT
[X] rotate image
[_] 66% UI modes
[_] 0% single ribbon
[_] show images shifted (all / above only / below only) in current ribbon
[_] show marked only
[X] 100% multiple ribbons
[X] show images above/below
[X] show marked only
[X] 100% single image
.
| vim:set spell :