| 
									
										
										
										
											2013-05-28 20:07:32 +04:00
										 |  |  | Roadmap | 
					
						
							| 
									
										
										
										
											2013-07-06 21:38:34 +04:00
										 |  |  | 	[_] 50% Pre-Alpha - limited preview | 
					
						
							|  |  |  | 		[_] 50% UI | 
					
						
							| 
									
										
										
										
											2013-06-03 00:20:48 +04:00
										 |  |  | 			[_] 0% Tablet-specific | 
					
						
							|  |  |  | 				[_] screen buttons | 
					
						
							| 
									
										
										
										
											2013-07-06 21:38:34 +04:00
										 |  |  | 			[_] 80% modes | 
					
						
							| 
									
										
										
										
											2013-06-02 04:59:30 +04:00
										 |  |  | 				[_] cropped mode | 
					
						
							|  |  |  | 				| show only selected images | 
					
						
							|  |  |  | 				[X] single image | 
					
						
							|  |  |  | 				[X] slideshow (single image) | 
					
						
							|  |  |  | 				[X] ribbon | 
					
						
							| 
									
										
										
										
											2013-07-06 21:38:34 +04:00
										 |  |  | 				[X] single ribbon | 
					
						
							|  |  |  | 			[_] 71% other | 
					
						
							| 
									
										
										
										
											2013-06-11 04:57:10 +04:00
										 |  |  | 				[X] load/open | 
					
						
							| 
									
										
										
										
											2013-07-06 21:38:34 +04:00
										 |  |  | 				[X] browse for location (open) | 
					
						
							|  |  |  | 				[X] select saved set | 
					
						
							| 
									
										
										
										
											2013-06-02 04:59:30 +04:00
										 |  |  | 				[X] keyboard help | 
					
						
							|  |  |  | 				[_] general help | 
					
						
							|  |  |  | 				[_] settings | 
					
						
							|  |  |  | 				[X] image info | 
					
						
							| 
									
										
										
										
											2013-05-28 20:07:32 +04:00
										 |  |  | 		[_] 75% navigation | 
					
						
							|  |  |  | 			[X] image next/prev | 
					
						
							|  |  |  | 			[X] ribbon next/prev | 
					
						
							|  |  |  | 			[X] screen next/prev | 
					
						
							|  |  |  | 			[_] marks next/prev | 
					
						
							| 
									
										
										
										
											2013-07-06 21:38:34 +04:00
										 |  |  | 		[_] 54% editing | 
					
						
							| 
									
										
										
										
											2013-06-03 04:40:55 +04:00
										 |  |  | 			[_] 66% ribbon | 
					
						
							|  |  |  | 				[X] merge up/down | 
					
						
							|  |  |  | 				| via. marking...  | 
					
						
							|  |  |  | 				| | 
					
						
							|  |  |  | 				| still thinking if this is the right way... | 
					
						
							| 
									
										
										
										
											2013-05-28 20:07:32 +04:00
										 |  |  | 				[_] flatten | 
					
						
							| 
									
										
										
										
											2013-06-02 04:59:30 +04:00
										 |  |  | 				[X] sort | 
					
						
							| 
									
										
										
										
											2013-06-05 00:21:11 +04:00
										 |  |  | 			[_] 75% image | 
					
						
							| 
									
										
										
										
											2013-05-28 20:07:32 +04:00
										 |  |  | 				[X] shift up/down | 
					
						
							| 
									
										
										
										
											2013-06-03 00:18:57 +04:00
										 |  |  | 				[X] shift left/right | 
					
						
							| 
									
										
										
										
											2013-05-28 20:07:32 +04:00
										 |  |  | 				[X] mark/unmark (selection) | 
					
						
							|  |  |  | 				[X] rotate left/right | 
					
						
							| 
									
										
										
										
											2013-06-05 00:21:11 +04:00
										 |  |  | 				[X] flip H/V | 
					
						
							| 
									
										
										
										
											2013-05-28 20:07:32 +04:00
										 |  |  | 				[_] crop | 
					
						
							|  |  |  | 				[_] 0% metadata | 
					
						
							|  |  |  | 					[_] tag | 
					
						
							|  |  |  | 					[_] note | 
					
						
							|  |  |  | 				[X] open with external software | 
					
						
							| 
									
										
										
										
											2013-07-06 21:38:34 +04:00
										 |  |  | 			[_] 42% marked (selected) set | 
					
						
							| 
									
										
										
										
											2013-05-28 20:07:32 +04:00
										 |  |  | 				[X] crop (marked only mode) | 
					
						
							|  |  |  | 				[_] tag | 
					
						
							| 
									
										
										
										
											2013-06-03 00:18:57 +04:00
										 |  |  | 				[X] shift up/down | 
					
						
							| 
									
										
										
										
											2013-05-28 20:07:32 +04:00
										 |  |  | 				[_] shift left/right | 
					
						
							|  |  |  | 				[_] group | 
					
						
							|  |  |  | 				[_] note | 
					
						
							| 
									
										
										
										
											2013-07-06 21:38:34 +04:00
										 |  |  | 				[X] save as set | 
					
						
							| 
									
										
										
										
											2013-05-28 20:07:32 +04:00
										 |  |  | 			[_] 33% crop selection via | 
					
						
							|  |  |  | 				[X] marked | 
					
						
							|  |  |  | 				[_] tag | 
					
						
							|  |  |  | 				[_] date | 
					
						
							| 
									
										
										
										
											2013-07-06 21:38:34 +04:00
										 |  |  | 		[_] 60% storage and loading | 
					
						
							| 
									
										
										
										
											2013-05-28 20:07:32 +04:00
										 |  |  | 			[_] 75% ImageGrid cache | 
					
						
							|  |  |  | 				[X] generate | 
					
						
							|  |  |  | 				[X] load | 
					
						
							|  |  |  | 				[X] save | 
					
						
							|  |  |  | 				[_] update | 
					
						
							|  |  |  | 				| needs revision... | 
					
						
							| 
									
										
										
										
											2013-07-06 21:38:34 +04:00
										 |  |  | 			[_] 75% fav tree | 
					
						
							| 
									
										
										
										
											2013-05-28 20:07:32 +04:00
										 |  |  | 				[X] generate | 
					
						
							| 
									
										
										
										
											2013-06-08 23:53:35 +04:00
										 |  |  | 				[X] load | 
					
						
							| 
									
										
										
										
											2013-07-06 21:38:34 +04:00
										 |  |  | 				[X] save | 
					
						
							| 
									
										
										
										
											2013-05-28 20:07:32 +04:00
										 |  |  | 				[_] update | 
					
						
							| 
									
										
										
										
											2013-07-06 21:38:34 +04:00
										 |  |  | 				| at this time images are added to the tree but not removed... | 
					
						
							| 
									
										
										
										
											2013-05-28 20:07:32 +04:00
										 |  |  | 			[_] 25% xmp files | 
					
						
							|  |  |  | 				[X] generate | 
					
						
							|  |  |  | 				[_] load | 
					
						
							|  |  |  | 				[_] save | 
					
						
							|  |  |  | 				[_] update | 
					
						
							| 
									
										
										
										
											2013-07-06 21:38:34 +04:00
										 |  |  | 			[_] 66% raw directory tree | 
					
						
							| 
									
										
										
										
											2013-05-28 20:07:32 +04:00
										 |  |  | 				[X] load | 
					
						
							| 
									
										
										
										
											2013-07-06 21:38:34 +04:00
										 |  |  | 				[X] save | 
					
						
							| 
									
										
										
										
											2013-05-28 20:07:32 +04:00
										 |  |  | 				[_] update | 
					
						
							| 
									
										
										
										
											2013-06-02 05:07:07 +04:00
										 |  |  | 		[_] 14% build targets | 
					
						
							|  |  |  | 			[X] 100% Windows | 
					
						
							|  |  |  | 				[X] CEF (Python/...) | 
					
						
							| 
									
										
										
										
											2013-06-08 23:53:35 +04:00
										 |  |  | 				[X] node-webkit | 
					
						
							|  |  |  | 			[_] MacOS X (node-webkit) | 
					
						
							| 
									
										
										
										
											2013-06-02 05:07:07 +04:00
										 |  |  | 			[_] Android (PhoneGap) | 
					
						
							|  |  |  | 			[_] iOS (PhoneGap) | 
					
						
							|  |  |  | 			[_] Windows 8 (Native?) | 
					
						
							| 
									
										
										
										
											2013-06-08 23:53:35 +04:00
										 |  |  | 			[_] Linux (node-webkit) | 
					
						
							| 
									
										
										
										
											2013-06-02 05:07:07 +04:00
										 |  |  | 			[_] Windows Phone 8 (PhoneGap/Native) | 
					
						
							| 
									
										
										
										
											2013-05-28 20:07:32 +04:00
										 |  |  | 	[_] 0% Alpha - limited preview | 
					
						
							|  |  |  | 	[_] 0% Beta - public? | 
					
						
							|  |  |  | 	[_] 0% 1.0 - public | 
					
						
							|  |  |  | 	 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-06-14 21:47:37 +04:00
										 |  |  | [_] 29% Gen 3 current todo | 
					
						
							| 
									
										
										
										
											2013-07-03 07:11:25 +04:00
										 |  |  | 	[_] 59% High priority | 
					
						
							|  |  |  | 		[_] 0% Priority tasks | 
					
						
							| 
									
										
										
										
											2013-06-16 02:42:29 +04:00
										 |  |  | 			[_] full archive index | 
					
						
							|  |  |  | 				[_] segmented loading of images and data | 
					
						
							|  |  |  | 				[_] ribbon separation | 
					
						
							| 
									
										
										
										
											2013-06-15 20:08:23 +04:00
										 |  |  | 				| split ribbon into manageable chunks | 
					
						
							|  |  |  | 				| | 
					
						
							|  |  |  | 				| this can be done naturally by: | 
					
						
							|  |  |  | 				| 	- date | 
					
						
							|  |  |  | 				| 	- event | 
					
						
							|  |  |  | 				|	- tag | 
					
						
							| 
									
										
										
										
											2013-06-16 02:42:29 +04:00
										 |  |  | 				[_] index and group ALL files in an archive | 
					
						
							|  |  |  | 				[_] import metadata | 
					
						
							|  |  |  | 				[_] real GIDs | 
					
						
							| 
									
										
										
										
											2013-07-07 19:46:45 +04:00
										 |  |  | 		[_] % Thumbnail generation strategies | 
					
						
							|  |  |  | 			[_] extract existing raw thumbnails | 
					
						
							|  |  |  | 			[_] make a preview just bigger than the screen first | 
					
						
							|  |  |  | 			| ...to prevent loading the high-res | 
					
						
							|  |  |  | 			| | 
					
						
							|  |  |  | 			| this should be done BEFORE loading the image -- pre-load phase... | 
					
						
							|  |  |  | 			[_] prioritize making thumbs for the ribbon (~350px)  | 
					
						
							| 
									
										
										
										
											2013-07-03 21:14:43 +04:00
										 |  |  | 		[_] BUG: shifting last image out of a ribbon misaligns the current ribbon | 
					
						
							|  |  |  | 		| i.e. the prev ribbon was deleted and the new focused ribbon | 
					
						
							|  |  |  | 		| is aligned as if it was not current... | 
					
						
							| 
									
										
										
										
											2013-06-23 03:14:04 +04:00
										 |  |  | 		[_] BUG: sometimes loading a raw directory stops at "error loading data.json" | 
					
						
							|  |  |  | 		| and some times it does not err.. | 
					
						
							| 
									
										
										
										
											2013-06-19 16:34:22 +04:00
										 |  |  | 		[_] BUG: jumping in ribbon sometimes does not load the ribbon correctly... | 
					
						
							|  |  |  | 		| Example 1: | 
					
						
							| 
									
										
										
										
											2013-06-20 16:39:26 +04:00
										 |  |  | 		| 	first ribbon in (loaded at first image): | 
					
						
							| 
									
										
										
										
											2013-06-19 16:34:22 +04:00
										 |  |  | 		|	 "file:///L:/mnt/hdd13 (photo)/NTFS1/media/img/my/work/- 20130616Y.001/DCIM/preview (RAW)/" | 
					
						
							| 
									
										
										
										
											2013-06-20 16:39:26 +04:00
										 |  |  | 		|	 "F:\work\ImageGrid\cur\ImageGrid\src\ui\BUGS\ribbon loading error\" | 
					
						
							| 
									
										
										
										
											2013-06-19 16:34:22 +04:00
										 |  |  | 		|	jumping to the end will result in an inconsistent view: | 
					
						
							|  |  |  | 		|		- ribbon not loaded at the correct spot | 
					
						
							|  |  |  | 		|		- wrong image is .current | 
					
						
							|  |  |  | 		| | 
					
						
							|  |  |  | 		| Example 2: | 
					
						
							|  |  |  | 		| 	load same data at same position as in #1 | 
					
						
							|  |  |  | 		| 		- shift-F2 to marked-only view | 
					
						
							|  |  |  | 		| 		- go to end of ribbon (any means work) | 
					
						
							|  |  |  | 		| 		- shift-F2 or Esc out of marked-only mode | 
					
						
							|  |  |  | 		| 	this will result in a state very similar (if not identical) to | 
					
						
							|  |  |  | 		| 	example #1... | 
					
						
							|  |  |  | 		| | 
					
						
							|  |  |  | 		| | 
					
						
							|  |  |  | 		| NOTE: jumping back and forth several times will make this problem | 
					
						
							|  |  |  | 		| 		go away... | 
					
						
							|  |  |  | 		| 		Q: could this be initial load/state error? | 
					
						
							| 
									
										
										
										
											2013-06-14 13:16:27 +04:00
										 |  |  | 		[_] BUG: align problems are back... | 
					
						
							|  |  |  | 		| default data set (browser/images.js) same images #4 (going  | 
					
						
							|  |  |  | 		| from right) & #5 (going from left) of 18 in the first ribbon  | 
					
						
							|  |  |  | 		| get aligned wrong... | 
					
						
							|  |  |  | 		| | 
					
						
							|  |  |  | 		| this is at a zoom level with screen proportions... | 
					
						
							|  |  |  | 		| | 
					
						
							|  |  |  | 		| zooming to a different level affects which images are  | 
					
						
							|  |  |  | 		| misaligned, at "max" #2 and #5 are affected... | 
					
						
							|  |  |  | 		| | 
					
						
							|  |  |  | 		| centerView() fixes this, but only for the current image... | 
					
						
							| 
									
										
										
										
											2013-06-14 21:47:37 +04:00
										 |  |  | 		[_] 50% BUG: sometimes the previews are not updated... | 
					
						
							| 
									
										
										
										
											2013-06-14 20:49:07 +04:00
										 |  |  | 			[_] wrong resolution preview is loaded | 
					
						
							|  |  |  | 			| when coming out of single-image-mode after moving to a  | 
					
						
							|  |  |  | 			| different position (so as ribbons go reloaded) | 
					
						
							| 
									
										
										
										
											2013-06-14 21:47:37 +04:00
										 |  |  | 			[X] previews do not get replaced at all, e.g. everything  | 
					
						
							| 
									
										
										
										
											2013-06-14 20:49:07 +04:00
										 |  |  | 			| behaves correctly (order, etc.) but the previews are  | 
					
						
							|  |  |  | 			| from wrong (ones before re-attaching) images | 
					
						
							|  |  |  | 			| (this I can't repeat at this point) | 
					
						
							|  |  |  | 			| | 
					
						
							|  |  |  | 			| Example: | 
					
						
							|  |  |  | 			|	URL: "file:///L:/mnt/P7000 (photo)/PHOTOS/Last week of September 2011/" | 
					
						
							|  |  |  | 			|	going through the previews in the top row forward and backward | 
					
						
							|  |  |  | 			|	watch the ribbon below -- on the way back everything is aligned | 
					
						
							|  |  |  | 			|	correctly but the images are different. | 
					
						
							|  |  |  | 			|	also, there are times when the ribbon below is partially loaded  | 
					
						
							|  |  |  | 			|	or at it's edge when there are other images... | 
					
						
							|  |  |  | 			|	NOTE: calling updateImages() will load the correct previews. | 
					
						
							| 
									
										
										
										
											2013-06-14 21:37:59 +04:00
										 |  |  | 			| | 
					
						
							|  |  |  | 			| The mechanics of this bug: | 
					
						
							|  |  |  | 			| 	- sometimes the .onload handler gets the right image ref in  | 
					
						
							|  |  |  | 			| 	  the closue but a wrong p_url, how can this happen I do not | 
					
						
							|  |  |  | 			| 	  know. | 
					
						
							|  |  |  | 			| 	- slowing down the browser appears to make this happen  | 
					
						
							|  |  |  | 			| 	  less often, is this a race condition? | 
					
						
							| 
									
										
										
										
											2013-06-14 21:47:37 +04:00
										 |  |  | 			| | 
					
						
							|  |  |  | 			| Might be caused by fast sequential updating/reloading of an image: | 
					
						
							|  |  |  | 			| 	- call the updateImage(...) in order several times | 
					
						
							|  |  |  | 			| 	- cache .onload events get called in order of images loading  | 
					
						
							|  |  |  | 			| 	  not in order of updateImage(...) calls... | 
					
						
							|  |  |  | 			| (this cause is not confirmed) | 
					
						
							|  |  |  | 			| | 
					
						
							|  |  |  | 			| Apparently fixed by storing the preview URL in image.data(), this  | 
					
						
							|  |  |  | 			| is slower but avoids problems with multiple updates and races... | 
					
						
							| 
									
										
										
										
											2013-07-03 07:11:25 +04:00
										 |  |  | 		[_] editable list of external commands... | 
					
						
							|  |  |  | 		| to add things like exportdirs.py etc. | 
					
						
							| 
									
										
										
										
											2013-06-13 18:16:16 +04:00
										 |  |  | 		[_] 60% basic dialogs | 
					
						
							| 
									
										
										
										
											2013-06-14 20:47:37 +04:00
										 |  |  | 			[_] select from list | 
					
						
							| 
									
										
										
										
											2013-06-11 04:57:10 +04:00
										 |  |  | 			[X] alert | 
					
						
							|  |  |  | 			[X] prompt | 
					
						
							|  |  |  | 			[_] confirm | 
					
						
							| 
									
										
										
										
											2013-06-13 18:16:16 +04:00
										 |  |  | 			[X] open directory (native) | 
					
						
							| 
									
										
										
										
											2013-06-06 04:55:04 +04:00
										 |  |  | 		[_] 0% Tablet UI | 
					
						
							|  |  |  | 			[_] screen buttons | 
					
						
							| 
									
										
										
										
											2013-06-06 07:39:30 +04:00
										 |  |  | 		[_] save settings to config.json | 
					
						
							| 
									
										
										
										
											2013-06-08 23:53:35 +04:00
										 |  |  | 		[_] Q: do we need separate theme settings? | 
					
						
							| 
									
										
										
										
											2013-06-06 07:39:30 +04:00
										 |  |  | 		| ...for ribbon and single-image modes? | 
					
						
							| 
									
										
										
										
											2013-06-06 05:04:25 +04:00
										 |  |  | 		[_] workflow editor (external app?)... | 
					
						
							|  |  |  | 		| edit sequence of actions and events... | 
					
						
							|  |  |  | 		| | 
					
						
							|  |  |  | 		| Example:	 | 
					
						
							|  |  |  | 		| 	- on mount volume name X | 
					
						
							|  |  |  | 		| 		-> make previews | 
					
						
							|  |  |  | 		| 		-> make cache | 
					
						
							|  |  |  | 		| 		-> import to index | 
					
						
							|  |  |  | 		| 		-> run Viewer | 
					
						
							|  |  |  | 		| 	- on Viewer data change | 
					
						
							|  |  |  | 		| 		-> run exportdirs.py | 
					
						
							|  |  |  | 		| 	- on tweak  | 
					
						
							|  |  |  | 		| 		-> run Irfan view | 
					
						
							|  |  |  | 		| 	- on edit | 
					
						
							|  |  |  | 		| 		-> run Photoshop | 
					
						
							|  |  |  | 		| 	- on PSD created | 
					
						
							|  |  |  | 		| 		-> make preview | 
					
						
							|  |  |  | 		| 		-> add to index | 
					
						
							|  |  |  | 		| 		-> group with preview | 
					
						
							|  |  |  | 		| 	... | 
					
						
							|  |  |  | 		| | 
					
						
							|  |  |  | 		| | 
					
						
							| 
									
										
										
										
											2013-06-05 15:54:24 +04:00
										 |  |  | 		[_] 0% keyboard.js | 
					
						
							|  |  |  | 			[_] multiple key handler... | 
					
						
							|  |  |  | 			| handle multiple key presses... | 
					
						
							|  |  |  | 			| | 
					
						
							|  |  |  | 			| one way to do this: | 
					
						
							|  |  |  | 			| 	- a generic handler with timeout | 
					
						
							|  |  |  | 			| 		- if key N pressed before timeout kandle it's action | 
					
						
							|  |  |  | 			| 		- if timeout handle default action | 
					
						
							|  |  |  | 			| | 
					
						
							|  |  |  | 			| Q: how do we organize the config for this? | 
					
						
							|  |  |  | 			| 	a) <key-spec> syntax, some thing like 'A, B' | 
					
						
							|  |  |  | 			| 	b) complex handler with keys (in addition to modifiers) | 
					
						
							|  |  |  | 			| | 
					
						
							|  |  |  | 			[_] 0% online config editor API... | 
					
						
							|  |  |  | 				[_] onKey(<key-spec>, handler[, mode]) | 
					
						
							|  |  |  | 				| <key-spec> should be something simple like a string | 
					
						
							|  |  |  | 				| | 
					
						
							|  |  |  | 				| Examples that should work: | 
					
						
							|  |  |  | 				| 	'Enter' | 
					
						
							|  |  |  | 				| 	'alt-F4' | 
					
						
							|  |  |  | 				| | 
					
						
							|  |  |  | 				| NOTE: with current config structure this is not that  | 
					
						
							|  |  |  | 				| 		trivial | 
					
						
							|  |  |  | 				[_] offKey(<key-spec>[, mode]) | 
					
						
							|  |  |  | 				[_] introspection | 
					
						
							|  |  |  | 				| this is partially done already, need a simpler API for  | 
					
						
							|  |  |  | 				| the user... | 
					
						
							| 
									
										
										
										
											2013-05-28 15:22:05 +04:00
										 |  |  | 		[_] 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 | 
					
						
							|  |  |  | 		| | 
					
						
							| 
									
										
										
										
											2013-06-04 02:08:20 +04:00
										 |  |  | 		| happens when: | 
					
						
							|  |  |  | 		| 	ribbon length: ~42 | 
					
						
							|  |  |  | 		| 	screen width: 4 | 
					
						
							|  |  |  | 		| 	jumping to end from start of ribbon | 
					
						
							| 
									
										
										
										
											2013-06-04 01:55:42 +04:00
										 |  |  | 		[_] ASAP: test on Android... | 
					
						
							| 
									
										
										
										
											2013-06-01 23:12:32 +04:00
										 |  |  | 		[_] 50% Undo/Redo | 
					
						
							|  |  |  | 			[X] basic one step (revert to last save) | 
					
						
							|  |  |  | 			[_] push/pop state stack | 
					
						
							| 
									
										
										
										
											2013-07-03 07:11:25 +04:00
										 |  |  | 		[_] 30% mark-based operations | 
					
						
							|  |  |  | 			[_] 50% cropping selection | 
					
						
							| 
									
										
										
										
											2013-05-28 15:22:05 +04:00
										 |  |  | 				[X] marked | 
					
						
							| 
									
										
										
										
											2013-07-03 07:11:25 +04:00
										 |  |  | 				[X] ribbon | 
					
						
							| 
									
										
										
										
											2013-05-28 15:22:05 +04:00
										 |  |  | 				[_] by tag/collection | 
					
						
							|  |  |  | 				[_] by group | 
					
						
							| 
									
										
										
										
											2013-06-03 00:01:49 +04:00
										 |  |  | 			[X] shift up/down | 
					
						
							| 
									
										
										
										
											2013-05-28 15:22:05 +04:00
										 |  |  | 			[_] tag | 
					
						
							|  |  |  | 			[_] group | 
					
						
							|  |  |  | 			| a group should behave as a single image but is  | 
					
						
							|  |  |  | 			| viewable/expandable as a ribbon... | 
					
						
							| 
									
										
										
										
											2012-07-31 11:37:18 +04:00
										 |  |  | 			| | 
					
						
							| 
									
										
										
										
											2013-05-28 15:22:05 +04:00
										 |  |  | 			| 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 | 
					
						
							| 
									
										
										
										
											2013-06-03 00:01:49 +04:00
										 |  |  | 		[_] 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... | 
					
						
							| 
									
										
										
										
											2013-06-13 18:16:16 +04:00
										 |  |  | 		[_] single image mode transition (alpha-blend/fade/none) | 
					
						
							| 
									
										
										
										
											2013-05-28 15:22:05 +04:00
										 |  |  | 		[_] 0% grouping / meta-image | 
					
						
							|  |  |  | 			[_] versions w. label image | 
					
						
							|  |  |  | 			| a set of images that is represented by one of the group | 
					
						
							|  |  |  | 			[_] collection | 
					
						
							|  |  |  | 		[_] 0% CSS | 
					
						
							|  |  |  | 			[_] cleanup | 
					
						
							|  |  |  | 			[_] split themes and layout | 
					
						
							| 
									
										
										
										
											2013-06-02 04:55:10 +04:00
										 |  |  | 		[_] 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... | 
					
						
							| 
									
										
										
										
											2013-06-01 23:12:32 +04:00
										 |  |  | 		[_] revise reporting scheme... | 
					
						
							|  |  |  | 		| showStatus(...) should be called uniformly, either at the source  | 
					
						
							|  |  |  | 		| or a specific reporting layer... | 
					
						
							| 
									
										
										
										
											2013-05-28 15:22:05 +04:00
										 |  |  | 		[_] 0% tweak loader | 
					
						
							|  |  |  | 			[_] thresholds and frame size | 
					
						
							|  |  |  | 			[_] remove extra and repetitive actions | 
					
						
							|  |  |  | 			[_] caching config | 
					
						
							| 
									
										
										
										
											2013-06-11 04:57:10 +04:00
										 |  |  | 		[_] side-by side view... | 
					
						
							| 
									
										
										
										
											2013-07-05 19:23:31 +04:00
										 |  |  | 		[X] BUG: context status does not get updated on Ctrl-D | 
					
						
							| 
									
										
										
										
											2013-07-03 07:11:25 +04:00
										 |  |  | 		[X] single ribbon mode | 
					
						
							|  |  |  | 		| should this have up/down navigation? | 
					
						
							|  |  |  | 		| | 
					
						
							|  |  |  | 		| something like showGidsAsRibbon(gids) would be generic and logical... | 
					
						
							|  |  |  | 		[X] build cache in background... | 
					
						
							|  |  |  | 		| this must be done while updating IMAGES live... | 
					
						
							|  |  |  | 		[X] 100% dialog constructor | 
					
						
							|  |  |  | 			[X] widget: text | 
					
						
							|  |  |  | 			[X] widget: bool | 
					
						
							|  |  |  | 			[X] widget: choice | 
					
						
							|  |  |  | 			[X] widget: dir/ndir | 
					
						
							|  |  |  | 			| browser native (dir) and custom (ndir) directory selector... | 
					
						
							|  |  |  | 		[X] 100% image sorting (date/name/...) | 
					
						
							|  |  |  | 			[X] 100% sort by: | 
					
						
							|  |  |  | 				[X] date | 
					
						
							|  |  |  | 				[X] name | 
					
						
							|  |  |  | 				[X] manual shift left/right/position | 
					
						
							|  |  |  | 				| position shift is mark and shift here.. | 
					
						
							|  |  |  | 			[X] 100% Sort ui | 
					
						
							|  |  |  | 				[X] reverse | 
					
						
							|  |  |  | 				[X] select sort method | 
					
						
							| 
									
										
										
										
											2013-06-14 20:47:37 +04:00
										 |  |  | 		[X] usable empty view -- w.o. data... | 
					
						
							| 
									
										
										
										
											2013-06-11 04:57:10 +04:00
										 |  |  | 		[X] 100% UI elements | 
					
						
							|  |  |  | 			[X] indicators | 
					
						
							|  |  |  | 			[X] image info | 
					
						
							|  |  |  | 			[X] stub info dialog | 
					
						
							|  |  |  | 			[X] detailed image info | 
					
						
							|  |  |  | 		[X] build for windows (node-webkit) | 
					
						
							|  |  |  | 		[X] BUG: scaling is again broken with rotated images | 
					
						
							|  |  |  | 		| - rotate an image | 
					
						
							|  |  |  | 		| - scale it to 1 (press 1) | 
					
						
							| 
									
										
										
										
											2013-06-09 02:26:22 +04:00
										 |  |  | 		[X] BUG: BASE_URL seems to gain a new trailing '/' on each save... | 
					
						
							| 
									
										
										
										
											2013-06-03 04:40:55 +04:00
										 |  |  | 		| low priority as this does not affect anything... | 
					
						
							| 
									
										
										
										
											2013-06-09 02:26:22 +04:00
										 |  |  | 		[X] 100% gesture support | 
					
						
							|  |  |  | 			[X] up/down - navigate | 
					
						
							|  |  |  | 			[X] left/right - navigate | 
					
						
							| 
									
										
										
										
											2013-06-04 09:14:59 +04:00
										 |  |  | 		[X] make the marks in single image mode show in corner of viewer, not image | 
					
						
							|  |  |  | 		| and think of a uniform indicator position... | 
					
						
							|  |  |  | 		| | 
					
						
							|  |  |  | 		| 	+---------------------------+ | 
					
						
							|  |  |  | 		| 	|					   oooo	| <-- global indicators | 
					
						
							|  |  |  | 		| 	|							|		(all modes) | 
					
						
							|  |  |  | 		| 	|							| | 
					
						
							|  |  |  | 		| 	|							| | 
					
						
							|  |  |  | 		| 	|							| | 
					
						
							|  |  |  | 		| 	|							| | 
					
						
							|  |  |  | 		| 	|							| | 
					
						
							|  |  |  | 		| 	|							| | 
					
						
							|  |  |  | 		| 	|							| | 
					
						
							|  |  |  | 		| 	|					   oooo	| <-- context indicators | 
					
						
							|  |  |  | 		| 	+---------------------------+		(single image mode) | 
					
						
							|  |  |  | 		| | 
					
						
							|  |  |  | 		| make global indicators semi-transparent in single-image-mode, so as to  | 
					
						
							|  |  |  | 		| indicate their lesser priority than context/image indicators... | 
					
						
							|  |  |  | 		| | 
					
						
							|  |  |  | 		| keep image indicators within the image square for ribbon mode... | 
					
						
							|  |  |  | 		| | 
					
						
							|  |  |  | 		| possible indicator styles: | 
					
						
							|  |  |  | 		| 	- letter, expand on hover | 
					
						
							|  |  |  | 		| 	- colored circle -- show text of same color under or to the side on hover | 
					
						
							|  |  |  | 		| | 
					
						
							|  |  |  | 		| might bee nice too use both styles, one for images one for global... | 
					
						
							| 
									
										
										
										
											2013-06-03 23:37:50 +04:00
										 |  |  | 		[X] BUG: shifting ribbon left sometimes results in wrong order... | 
					
						
							|  |  |  | 		| i.e. an image with order 12 before image with order 11 | 
					
						
							|  |  |  | 		| | 
					
						
							|  |  |  | 		| Example: | 
					
						
							|  |  |  | 		| 	- default image set | 
					
						
							|  |  |  | 		| 	- move first image 2 positions right | 
					
						
							|  |  |  | 		| | 
					
						
							|  |  |  | 		| Resulting state: | 
					
						
							|  |  |  | 		| 	- current image order: 12 | 
					
						
							|  |  |  | 		| 	- next image order: 11 | 
					
						
							|  |  |  | 		| 	- prev image order: 10 | 
					
						
							|  |  |  | 		| | 
					
						
							|  |  |  | 		| This is stably reproducible. | 
					
						
							| 
									
										
										
										
											2013-06-03 23:36:40 +04:00
										 |  |  | 		[X] BUG: changing window size (F11) in single image modes messes things up... | 
					
						
							|  |  |  | 		| some images are of different sizes (newly loaded) and aligned in a wrong way... | 
					
						
							|  |  |  | 		| | 
					
						
							|  |  |  | 		| appears not to affect square-fit view... | 
					
						
							|  |  |  | 		| | 
					
						
							|  |  |  | 		| until we cycle to ribbon mode and back... | 
					
						
							|  |  |  | 		|  | 
					
						
							|  |  |  | 		| Q: does this trigger the on-resize event??? | 
					
						
							|  |  |  | 		| A: no, not connected... | 
					
						
							|  |  |  | 		| | 
					
						
							|  |  |  | 		| possible that this is connected with the align/load bug... | 
					
						
							|  |  |  | 		| | 
					
						
							|  |  |  | 		| appears to be a state leak, this affects: | 
					
						
							|  |  |  | 		| 	- correctImageProportionsForRotation(image) -- mis-alignes images | 
					
						
							|  |  |  | 		| 	  while after cycling single image mode, behaves correctly... | 
					
						
							|  |  |  | 		| 	- affects finNImages(...) -- uses old size of viewer... | 
					
						
							|  |  |  | 		[X] 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... | 
					
						
							| 
									
										
										
										
											2013-06-03 18:30:54 +04:00
										 |  |  | 		[X] BUG: keyboard.js, some combinations resolve problems... | 
					
						
							|  |  |  | 		| in current help shows E, F4, alt-F4 as "Open image in ..." | 
					
						
							|  |  |  | 		| 	- E and F4 work OK | 
					
						
							|  |  |  | 		| 	- alt-F4 both close the viewer (default) and open an image. | 
					
						
							|  |  |  | 		| | 
					
						
							|  |  |  | 		| Example: | 
					
						
							|  |  |  | 		| 	E: doc('Open image in external software', openImage), | 
					
						
							|  |  |  | 		|	F4: { | 
					
						
							|  |  |  | 		|			default: 'E', | 
					
						
							|  |  |  | 		|			alt: doc('Close viewer'), | 
					
						
							|  |  |  | 		|		}, | 
					
						
							|  |  |  | 		| | 
					
						
							| 
									
										
										
										
											2013-06-01 23:12:32 +04:00
										 |  |  | 		[X] reverse ribbons... | 
					
						
							| 
									
										
										
										
											2013-06-01 21:06:10 +04:00
										 |  |  | 		[X] slideshow mode... | 
					
						
							|  |  |  | 		[X] 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. | 
					
						
							| 
									
										
										
										
											2013-05-29 01:57:24 +04:00
										 |  |  | 		[X] import fav dirs (wo. index)... | 
					
						
							| 
									
										
										
										
											2013-05-28 20:07:32 +04:00
										 |  |  | 		[X] ASAP: load/view un-cached directories... | 
					
						
							| 
									
										
										
										
											2013-05-28 15:22:05 +04:00
										 |  |  | 		[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 | 
					
						
							|  |  |  | 		 | 
					
						
							| 
									
										
										
										
											2012-06-08 21:07:27 +04:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-05-28 15:22:05 +04:00
										 |  |  | [_] 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... | 
					
						
							| 
									
										
										
										
											2012-06-13 21:49:52 +04:00
										 |  |  | 	| | 
					
						
							| 
									
										
										
										
											2013-05-28 15:22:05 +04:00
										 |  |  | 	| 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 | 
					
						
							| 
									
										
										
										
											2012-06-08 21:07:27 +04:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | . | 
					
						
							|  |  |  | | vim:set spell : |