TODO key: d = done, w = work in progress, ? = possibly fixed, * = wt? - how?

Major:  (1.2 blockers)
----------------------------------------------

 >clean up TODO file :)

w>allow configurable main window layout TODO:
  x)re-implement maintenance checks for layout views
   )tab completion filename scrolling needs implemented
  x)update the window title, oops
  x)add byte counts for file info
  x)menu bar factory may be leaking, esp. on layout sync.
   )add keyboard shortcuts to toggle icon (i) and tree (?) views
     [bah! t and d are used already, perhaps ctrl-i and ctrl-t ?]
   )stat the base path every few seconds and call a refresh if mtime changed,
     so that eg: downloaded files show up as they come in.

d>add directory tree option
  x)allow rename of dirs from tree
  x)add folder icons, plus version for inaccessible dirs
  x)refresh should check the active path only

w>add collection window style view option to file list
  x)Well, it started as a copy of collect-table.c
  x)report selections
  x)popup menu
  x)dnd
  x)fix dnd and rightclicking on a non selected image to act as file list view
   )there is an odd bug causing scroll jumping after drag selection with mouse
  x)fix refresh to work the way list view does. (retain selection)
  x)add maintenance
  x)in sync set NULL cells to no pixmap, also remove row is row = col = 0

d>std file list:
  x)fix refresh to work correctly (maintain selection, etc.)
  x)add maintenance

d>std dir list:
  x)allow drops (dnd) onto it for move/copy of files (like in the tree view)
  x)add folder icons (for consistency with tree view, it looks blah now)
  x)also allow renames of dirs here

d>setting a NULL image does not update the image dimensions/bytes display
  UPDATE(must check title update once it gets readded to layouts)

d>keyboard 1, 2, 3, 4 sets corresponding zoom,
   add 9, 8, 7 for -2, -3, -4 resp. (and support grey keys)

d>file_util_copy/move_simple should detect lists with length 1 and do the right thing (tm)!

 >new window layout dumped tool float/hide option - reimplement.

 >add CRC checksum and use in place of checksum_simple

 >add background color option
 >add collection auto-save option (to ~/.gqview/autosave ?)

 >add rename option in overwrite file dialog...
 >add file copy/move/delete progress dialog - and do the copy/move in
    the background (dont block).

 >add ImageMagick fallback mechanism (to support more filetypes)?
 >rewrite the file filter, it uses globals for each type - use 1 GList,
  allow easy addition of other types.

 >collect-table.c, dupe.c, possibly more are returning void in event handlers
  when they should return TRUE|FALSE.

 >fix collection table auto-scroll to use drag_leave signal
 >check that path_list_filter() honors dotfile/filter options.

 >had a useful thought: add delete option to move files to a specific directory
   instead of deleting them (this is not intended to be a trash can - just a
   convenient way to avoid accidentally deleting your favorite pics when dumping
   unwanted images in an image management frenzy :). They get permanently deleted
   (with prompt) on exit. Default locale is probably ~/.gqview/trash (how unique)

 >gdk-pixbuf 0.16.0 claims to have fixed crashes in TILES scaler, check and if so
  enable when running this version or higher.

 >pre-or-post 1.2? Port to gtk+ 2, work is in progress in another source tree...

Known: (not fixable on GQview side)
----------------------------------------------

 >select last file in filelist (so it has keyboard focus), delete it, then select
  all remaining rows by shift clicking first row == crash. Determined that gtk+
  through at least 1.2.10 does not handle the clist->focus_row correctly when removing
  the last (end) row.
  NOTE: see gtkclist.c(real_remove_row), attempted code to fix this is commented out.

 >loading image format XXX with YYY format crashes in gdk_pixbuf_loader_blah_blah....
  this is usually a gdk-pixbuf loader bug, report it to the gdk-pixbuf maintainers.

 >the bitmap (bmp) loader in/through gdk-pixbuf 0.13 is known to be flakey and very slow.
  (both are because it sends an ill-computed area_updated signal, and is often out of
   image bounds - looking at CVS there may be hope in gdk-pixbuf 0.14)

 >progressive (incremental) jpegs are not properly implemented in gdk-pixbuf (as of 0.13).
  (gdk-pixbuf simply sends one giant image updated signal after loading is finished :/

Minor:
----------------------------------------------

w>loading an image while scaled (zoom != 0), can be very slow for large images (say > 512k)
  either increase the bytes read per idle call (to say 8k from 2k), or scale the bytes read
  by the file size for anything over 128k (this would be a fun formula, esp. if comp. ratio is
  taken into account [simple to compute - determine pixels updated per read, then throttle to get
  satisfactory number of pixel updates] :). High quality images (low compress ratio - dig. cam.)
  would benefit from even a slight buffer size increase.

 >when an image cannot be read (no read access), display this fact in place of the
  image dimensions. (1.0 will keep the current behavior - display unknown icon).

 >add --view command line option to only display the image in a basic window, similar to
  what view in new window does.

 >post buffer the last seen image (for quick flipping for comparison), but only
  when read-ahead is enabled (may push before 1.0)

 >hmm, pgup pgdown shortcut to change image should only work when image has focus
  (it is interfering with the file list - can't pgup/down through it)

 >add insert keyboard shortcut for moving selected images in a collection window.
  (ctrl - v or ctrl- insert ?)

 >add tiles option back (when gdk_pixbuf_scale no longer crashes on this)

 >figure out what's up with dnd to/from nautilus and konquerer ?
  (I know the current parser is broken/sucks, but it should be at least getting the event for text/uri-list
  UPDATE: kde drops do not work on gimp either (and that is my reference :/ )

 >let 'view' windows remember, and move among, multiple files from dnd, including recursive.

 >maybe add symlink option (in addition to the move/copy/rename/delete stuff.)

d>when doing a multiple selection in the file list, make the last selected file be
  the one viewed.
  (this has issues, noteably when deleting/moving files from the file list)

 >when removing a file from a collection and it is viewed in main window, go to the
  next image in the collection, if there is one.

 >add an option to delay the image change until the new image is rendered (slideshow)

 >clear unrendered parts to checker transparent instead of plain (user option)

 >allow selection of background color. (also see above)

 >make thumbnail rendering be done in parts, large images can take a while.

 >fix image alterations to keep same image location visible.

 >when zooming with mouse (ctrl-wheel) center image on mouse position.

 >allow display of text (filename) under icons in collection window.
  (stupid CList is going to make this difficult ?, maybe impossible w/ clist)

d>allow drops on directory and list views for move/copy [images only]
  (dirs ignored. easier.)

 >maybe show image in delete/rename/copy/move dialogs (should be simple now).
  (for example see overwite confirmation dialog, it does this)

 >add EXIF image info support (have patch) - not sure how I want to use it though.
  (UPDATE: goin to add a (right-click) properties dialog, permissions as well ?)

Wishlist?:
----------------------------------------------
d>add vert drag bar

 >utility to rename multiple files all at once (with glob?).

w>ability to open multiple 'main windows' - requires slight redesign,
  will not happen for 1.0 - maybe 1.2?
