2007-10-14 Jonathan Matthew <firstname.lastname@example.org>
* lib/rb-file-helpers.c: (rb_uri_append_uri):
Fix rb_uri_append_uri when operating on two URIs.
* sources/rb-playlist-source.c: (rb_playlist_source_class_init),
Add a new method on the playlist source class, called when the
playlist becomes dirty. Mark static playlists dirty when rows are
Link rhythmdb into the core shared library rather than the rhythmbox
New object for tracking the progress of the importing of a set of
paths. Counts the total number of database entries to be added, and
emits a signal when the whole job is done.
* shell/rb-shell.c: (construct_sources):
* sources/rb-import-errors-source.c: (rb_import_errors_source_new):
Take entry type as a parameter so we can have import error sources
attached to devices etc.
* rhythmdb/rhythmdb-monitor.c: (entry_volume_mounted_or_unmounted):
* rhythmdb/rhythmdb.c: (process_added_entries_cb),
(queue_stat_uri_tad), (action_thread_main), (rhythmdb_add_uri),
When adding paths to the database, carry around entry types to use for
ignored files and import errors, as well as for successful imports.
Allows use of per-device entry types for these.
* sources/rb-sourcelist.c: (rb_sourcelist_edit_source_name):
When editing a source's name, expand the tree so the source is
* shell/rb-shell-clipboard.c: (rb_shell_clipboard_sync),
(add_playlist_to_menu): Disable the add-to-playlist menu when the
selected source's entry type doesn't have playlists.
* shell/rb-statusbar.c: (rb_statusbar_sync_status):
Adjust the statusbar progress bar logic so the library being busy
doesn't take precedence over all other progress values.
(impl_set_property), (impl_get_property), (set_playlist_formats),
(debug_device_info), (get_device_info), (impl_dispose),
(import_status_changed_cb), (load_songs), (default_get_mount_path),
Use RhythmDBImportJob to add files from the player. Use its signals
to display import status. Only load playlists from the device when
the import is complete, so the ordering doesn't get lost.
Add import error and ignored file entry types for each generic player
device. Create an import errors source so they don't go into the main
import errors source.
Add methods to map URIs from the file system to the device, so we can
write playlists to the device that it can understand. Default mapping
from the file system to the device is to strip the device's mount
Move playlist load/save methods to a new generic player playlist
source class. Add methods and UI actions to create and delete playlists
on the device. When these playlists are marked dirty, save them to
the device after a short delay.
Add support for iRiver .pla playlists if totem is new enough.
svn path=/trunk/; revision=5386