Codebase list gnomad2 / upstream/2.9.5 TODO
upstream/2.9.5

Tree @upstream/2.9.5 (Download .tar.gz)

TODO @upstream/2.9.5raw · history · blame

* Problems with GNOMAD:

OUTSTANDING BUGS:
-----------------

  Removing two files after another from a playlist fails :-P
  This must really be fixed soon.

  Trying to transfer protected files will end in misery.
  Warn and remove from transfer list.

  Large files >= 2GB do not show up in the file view.


ENHANCEMENTS:
-------------

  Modularize protocol support so that libmtp glue code and
  libnjb glue code is in one file each. So we get:

  device.c/.h (replaces jukebox.c/.h)
  pdedevice.c (#include "device.h", #include <libnjb.h>)
  mtpdevice.c (#include "device.h", #include <libmtp.h>)

  device.c will contain new wrappers in the spirit of jukebox.c
  and all device-agnostic code. All device specific code is
  then pushed down in respective file. This will make it possible
  to compile gnomad2 with/without each library and makes it
  easy to add new protocols too.

  #typedef intermediary types for things that are generic inside
  gnomad2 and specific for each device, for example:
  typedef uint32_t generic_id_t;  /* can hold libmtp id or a libnjb id */

  RIFF-WAV metadata scanner? (from getid3()). Perhaps switch to
  using the KDE-centric taglib which can get tags from everything
  including the MTP supported Ogg files and MP4...

  Add possibility to send a bitmap. Requires work in libnjb.

  Add possibility to skip forward/backward in files when
  playing. (Works so-so on libnjb.)

  Synch of songs in a harddisk directory, w/checksums?
  Put jukebox ID in ID3 tag?

  Add some stuff to the playlist view: sort playlist by 
  different criteria, remove playlist AND files, move files
  around by drag'n'drop etc. (Hard to do.)
  Add contents of a playlist to another playlist.

  Keybindings to all menus (including popups)

  Transfer queue showing -- even w/o full queue, 
  be able to queue things while transferring.

  Player queue visible. Queueview widget builder?