2008-07-21 Jorg Schuler * src/misc_confirm (on_gtkpod_delete_event): return TRUE to prevent other handlers from being called. (Tons of error messages otherwise.) 2008-07-20 Paul Richardson * src/display_photo.c: Patch to stop photo action signals being added to actions multiple times. Thanks to Andrea. 2008-07-20 Jorg Schuler * src/fileselection.c src/fileselection.h: restructure code. Thanks to Andrea. 2008-07-19 Jorg Schuler * src/file_itunesdb.c (data_changed): don't mark non-imported iPods as changed. Thanks to Andrea. 2008-07-19 Jorg Schuler * src/confirmation.c (gtkpod_confirmation): initialize variable. Thanks to Andrea. 2008-07-19 Jorg Schuler * src/display_playlists.c (pm_add_child): when adding playlists to the end, don't add behind the Photo item. 2008-07-18 P.G. Richardson * src/file.c (get_track_info_from_file): Relating to previous change. Rather than comment out, have reversed logic as per Michael Tiffany's patch (15/07/2008) 2008-07-18 P.G. Richardson * src/file.c (get_track_info_from_file): Commented out test itdb_track_has_thumbnails test on line 1418 as this stops coverart being added to new tracks as they are being imported from directory. 2008-07-06 Jorg Schuler * src/display_playlists.c (pm_get_iter_for_playlist): remove assertion (pl!=NULL) that is no longer valid with the introduction of the "Photo" entity. Should take care of the segfaults when removing a playlist listed after the Photo entity. 2008-07-14 Todd Zullinger * scripts/sync-evolution.sh scripts/sync-ldif.sh: Use /bin/bash as the interpreter, as these scripts use bash-specific syntax * scripts/sync-thunderbird-nano.sh: Remove a few bashisms Thanks to Frank Lichtenheld (fixes Debian bug #489605) 2008-07-06 Jorg Schuler * src/syncdir.c: hash filenames of tracks to reduce overhead when syncing parts of large repositories. Thanks to Clarke Brunsdon for the initial patch. * src/file.c: also update mtime of updated tracks. 2008-07-05 Jorg Schuler * src/display_coverart.c: Normalized indentation (original editor was mis-configured). 2008-07-05 Jorg Schuler * src/misc_conversion.c (ST_to_T) src/display_sorttabs.c (st_set_string_compare_func): be more restrictive concerning ST_CAT_SPECIAL (assertion) src/display_coverart: white space src/file.c: added comments 2008-07-05 Jorg Schuler * src/file.c: allow absolute paths in coverart template. Thanks to J.D. Laub for the patch. 2008-07-05 Jorg Schuler * src/display_itdb.c src/display_playlists.c: some work on white space. 2008-07-05 Jorg Schuler src/display.h src/file_itunesdb.c src/repository.c src/display_itdb.c src/display_playlists.c src/context_menus.c src/display_photo.c src/display_photo.h: get rid of Photo "Playlist" and create a "Photo" object in the Playlist view. This also solves a problem with the population of smart playlists. 2008-06-29 Jorg Schuler * src/display_photo.c: fix possible memory leak. Thanks to Mike Heffner. * src/display.c src/display_photo.c src/details.c src/fetchcover.c: replace deprecated gdk_pixbuf_unref() with g_object_unref(). 2008-06-28 Jorg Schuler * src/file_itunesdb.c src/display_photo.c src/display_photo.h: don't display error message about non-available photodb if iPod does not support photos. 2008-05-31 Todd Zullinger * po/POTFILES.in: update file list to keep distcheck happy * data/icons/hicolor/16x16/places/Makefile.am data/icons/hicolor/16x16/status/Makefile.am data/icons/hicolor/22x22/places/Makefile.am data/icons/hicolor/24x24/places/Makefile.am data/icons/hicolor/32x32/places/Makefile.am data/icons/hicolor/48x48/places/Makefile.am data/icons/hicolor/scalable/places/Makefile.am data/man/Makefile.am doc/Makefile.am: minor distcheck fixes 2008-05-31 Jorg Schuler * src/details.c (details_update_thumbnail): fix bug that prevented displaying thumbnails in the edit details window that were saved on the iPod. 2008-05-31 P.G. Richardson * context_menus.c Added coverart update call to eject ipod action. * display_coverart.c * display_covarart.h Tidied up function doc comments. Ensured when no playlist is selected, coverart_display_update clears the artwork display. 2008-05-30 Christophe Fergeau * src/details.c: * src/display_coverart.c: * src/display_itdb.c: * src/display_photo.c: * src/file.c: * src/file_itunesdb.c: * src/misc_track.c: adjust to libgpod API changes (use itdb_track_has_thumbnail and itdb_track_get_thumbnail instead of using deprecated API and struct members) 2008-05-29 P.G. Richardson * src/fetchcover.c Fix for incorrect creation of jpg filenames 2008-05-29 P.G. Richardson * src/display_photo.c Fix for pixbufs not being unreference in display_photo.c 2008-05-24 Jorg Schuler * src/file.c (video_thumbnail_setup_cache): fixed compiler warning and possible memory leak. * src/file.c (create_video_thumbnail): fixed possible memory leak. 2008-05-22 Jorg Schuler * src/confirmation.c (gtkpod_confirmation): switch wrapping on for displayed text. 2008-05-17 Jorg Schuler * src/mp3file.c (mp3_read_gapless): - added assertion for track->userdata - remove gapless data if file does not contain gapless data. * src/file_convert.c: read gapless data after conversion to MP3 files. 2008-05-11 Jorg Schuler * src/misc_playlist.c: don't allow adding of playlists if iPod is not loaded. Thanks to Andrea. * src/fileselection.c: use gtkpod_warning_simple() instead of error_dialog() -- reducing code. Thanks to Andrea. 2008-05-05 Jorg Schuler * data/gtkpod.glade: added lost handler to "create new playlist". Thanks to Andrea. 2008-05-01 Todd Zullinger * INSTALL configure.in: Require libgpod >= 0.6.1 2008-04-19 Jorg Schuler * src/file_convert (conversion_convert_track): redirect stdout of conversion script to /dev/NULL. * data/gtkpod.glade (prefs_dialog): get rid of "Only 'activatable' widgets can be packed into the action area of a GtkDialog" warning. Changes layouts of buttons at the bottom of the window slightly ("Revert" is now centered instead of being grouped on the right together with the "Close" button). * src/flacfile.c (flac_get_file_info): patch by Peter Pletcher supporting the DATE field (alternative source for YEAR), extended track and disc numbers ("n/m" format), as well as correction of an obvious type (CNDR -> CDNR). Thanks! 2008-04-18 Jorg Schuler * src/fileselection.c: add multiple directories patch by Alex Pounds. Fixes bug that limited adding of directories to one at a time. 2008-04-13 Jorg Schuler * src/display_photo.c (gphoto_is_photo_playlist, gphoto_ipod_supports_photos, gphoto_display_photo_window, debug_list_photos): prevent segfault if called with NULL argument. (gphoto_add_image_to_database, gphoto_add_image_to_iconview): sanity checks * context_menus.c (pm_context_menu_init): check for selected playlist before making further checks. Thanks to Alex Pounds. * po/de.po: updated German translation. Thanks to Kai-Ove Pietsch. 2008-04-09 Jorg Schuler * scripts/sync-tomboy.sh (Olivier Crete ): Strip all tomboy tags with the power of sed 2008-04-09 Jorg Schuler * src/file_convert.c (transfer_transfer_track): removed unnecessary g_mutex_unlock(). Thanks to Klaus Heinz. 2008-03-29 Todd Zullinger * configure.in: Remove unused references to libgnomecanvas * configure.in: Handle the case where LEX is a path, from NetBSD via Klaus Heinz (fixes SF tracker #1920207) 2008-03-17 P.G. Richardson * src/display_photo.c * src/misc_input.c Fix for segfault in get_user_string function. 2007-12-18 Jorg Schuler * src/mp4file.c * src/file.c: applied chapterdata patch by Michael Tiffany 2008-01-13 Matvey Kozhev * data/gtkpod.glade: * src/prefs.c: * src/prefsdlg.c: * src/file.c: Support for video thumbnail generation via totem-video-thumbnailer (patch by M. Sean Finney ). 2008-01-06 Matvey Kozhev * data/gtkpod.glade: * src/display.h: * src/display_tracks.c: * src/display_sorttabs.c: * src/prefsdlg.c: Made the "Filter tab position" and "Horizontal scrollbar" preferences instant-apply. * data/gtkpod.glade: The "New Playlist" button is now dropdown. * configure.in: * data/gtkpod-logo.png: * data/gtkpod-icon-32.png: * data/gtkpod-icon-32-2.png: * data/gtkpod-icon-48.png: * data/icons/16x16: * data/icons/22x22: * data/icons/24x24: * data/icons/32x32: * data/icons/scalable: More manually tweaked icons, plus the SVG original. 2008-01-06 P.G. Richardson * data/gtkpod.glade src/display_tracks.c src/display.c src/display.h Added a down arrow to end of search bar to hide if not wanted. On hide, an up arrow is displayed in the bottom right corner of the window. Preference stored to preserve decision between loadings. 2008-01-05 Todd Zullinger * doc doc/figures data/icons/hicolor/16x16/status data/man: ignore generated Makefiles 2008-01-05 Matvey Kozhev * data/gtkpod.glade: * src/display_tracks.c: Killed the horizontal scrollbar for good. The space is now first allocated to "non-text" columns (like playcount and rating) and then equally distributed between "text" columns. It isn't possible to exceed the width of the track list. * src/prefs.c: Default columns set to title, artist, album, duration and rating. * src/rb_cell_renderer_rating.c: * src/rb_cell_renderer_rating.h: * src/rb_rating_helper.c: * src/rb_rating_helper.h: Rating cell renderer implementation from Rhythmbox. * data/icons/hicolor/16x16/status/*: Rating star icons from Rhythmbox. * src/display_tracks.c: Graphical rating column. * data/gtkpod.glade: * src/display_sorttabs.c: Moved filter tabs to the bottom. * src/display_itdb.c: Name the default local repository "Music Library" instead of "Local". * src/display_playlists.c: * src/display.h: * src/display_itdb.c: Expand the playlist tree on startup. 2008-01-04 Matvey Kozhev * data/gtkpod.glade: * src/confirmation.c: * src/display_playlists.c: A bit more UI polish in the main window. Sane defaults for pane sizes. * src/misc_confirm.c: Made the quit confirmation use three buttons (Quit without saving, Cancel, Save), per HIG. 2008-01-03 Todd Zullinger * data/icons/hicolor/*: ignore generated Makefiles 2008-01-03 Matvey Kozhev * data/gtkpod.glade: Killed prefs_window. * src/prefs_window.c -> src/sort_window.c: * src/prefs_window.h -> src/sort_window.h: Removed all prefs_window code. Renamed. * src/display_sorttabs.c: * data/gtkpod.glade: Retouched Calendar dialog, migrated from GtkCombo to GtkComboBox. * src/file_itunesdb.c: write_extended_info is now ignored (always true). * src/display_playlists.c: mpl_autoselect is now ignored (always false). Use larger icons in the playlist tree view. * src/display_tracks.c: multi_edit_title is now ignored (always true). Find-as-you-type search implemented using GtkTreeModelFilter. (Remember to use get_model instead of gtk_tree_view_get_model) * src/prefsdlg.c: * data/gtkpod.glade: Added "Display tooltips" preference. * data/Makefile.am: * data/*.png: * data/icons/hicolor/*: Icon refresh. Removed unused icons. * src/stock_icons.c: * src/stock_icons.h: Use GtkIconTheme for stock icon handling. * src/misc.c: * src/misc.h: Added utf8_strcasestr (a copied g_utf8_strcasestr from GtkSourceView). * src/help.c: Translation string optimization, as suggested by Daniele Forsi and Bastien Nocera . 2008-01-02 Matvey Kozhev * src/prefs.c: * src/prefs.h: Added function temp_prefs_copy_prefs to create copies of the current prefs (for Revert buttons). * src/prefsdlg.c: * data/gtkpod.glade: Added Revert button. Fixed: 'subwindows can be hidden by main window' (except for the sort window, this is intended behavior and not a bug) Fixed: 'assertion failed when clicking "remove" buttons' Fixed: 'assertion `g_path_is_absolute (filename)' failed' Fixed: 'signal `file_set' is invalid for instance `0x85d1160'' Fixed: 'g_object_unref: assertion `G_IS_OBJECT (object)' failed' * src/fileselection.c: Use the stock GTK directory selection dialog. Code cleanup. * src/confirmation.c: * data/gtkpod.glade: Redesigned confirmation window to use GtkTreeView, as well as for HIG compliance. * src/charset.c: Fixed: 'Invalid column number -1077094488 added to iter' (thanks to Daniele Forsi ) Fixed: 'g_object_unref: assertion `G_IS_OBJECT (object)' failed' 2008-01-01 Matvey Kozhev * src/misc_input.c: * src/misc.h: * src/misc_playlist.c: * src/display_photo.c: * data/gtkpod.glade: Refactored get_user_string (input box) to use glade, as well as for HIG compliance. * configure.in: * src/help.c: Display libgpod version in the about dialog. * data/icons/Makefile.am: Removed data/icons/gtkpod.xpm. * src/misc.h: * src/misc_confirm.c: Simpler warning functions for cases when a single dialog box is enough (gtkpod_warning_simple, a drop-in replacement for gtkpod-warning, and gtkpod_warning_hig). * src/info.c: * src/info.h: * data/gtkpod.glade: Removed the old info window. (There is still some now-unused code left.) Exported some info gathering functions for infodlg.c. * src/infodlg.c: * src/infodlg.h: * src/display.c: * src/tools.c: Use the new info dialog. 2007-12-31 Matvey Kozhev * data/icons/*/gtkpod.png: * data/icons/gtkpod.xpm: * data/gtkpod-*.png: New Tango-style application icon. * src/info.c: * src/info.h: Support for hooks in info_update_*. Will be needed by the new info_dialog. * src/repository.c: * data/gtkpod.glade: Redesigned the repository manager dialog. The behavior of the Delete button is now much more intuitive (thanks to godog for pointing this out). * src/prefs_window.c: Hopefully fixed the Dreaded Sort Window Crash once and for all. (Although it would still be better if all developers migrated to glade 3 ;)) 2007-12-31 P.G. Richardson * src/display_coverart.h * src/display_coverart.c Visible scaled images are cached to improve performance. Only when they are no longer visible is the scaled version unreferenced. If the scaled version does not exist then a new scaled version is created as usual. Thus, when moving along the collection, only 1 image should be scaled when the drawing occurs rather than 9. 2007-12-31 Matvey Kozhev * src/prefs.c: * src/prefs_window.c: * src/prefsdlg.c: * src/display_coverart.h: Renamed "colour" to "color". Added text color preference. * src/display_coverart.c: Fixed regression with CJK text rendering by using Pango to render. Performance improvement. 2007-12-30 P.G. Richardson * data/cdshine.png * data/Makefile.am png file removed as highlight now done programmatically with cairo. * data/gtkpod.glade GtkDrawingArea added to coverart preview dialog for use with cairo. * src/display_coverart.c * src/display_coverart.h Refactored functions to use cairo for rendering coverart images rather than libgnomecanvas. * src/display_playlists.c * src/display_sorttabs.c * src/prefsdlg.c References to some coverart functions updated. * src/display.c Generic function for display preview dialog refactored to use cairo rather than libgnomecanvas. * src/fetchcover.h * configure.in * INSTALL References to libgnomecanvas removed. 2007-12-30 Matvey Kozhev * data/man: Added manpage from Debian. * data/icons/gtkpod.xpm: * data/gtkpod.desktop.in: Added XPM icon from Debian (goes to /usr/share/pixmaps). * data/gtkpod.glade: Small fixes to the info window. * src/prefs.c: * src/prefs.h: * src/file_convert.c: Added new settings: - conversion_enable: skip any conversion if this is false (default: true) - conversion_target_format: format to convert to (default: MP3; only used in prefsdlg.c) * src/prefsdlg.c: Conversion preferences. Fixed a bug that prevented the dialog from being shown again if closed using the X button. * src/infodlg.c: New info window mockup ("Experimental" button in existing info window). 2007-12-30 P.G. Richardson * data/gtkpod.glade Added the photo window toolbar back in. Seems it may have been lost by accident and it is required for some functions for the moment. 2007-12-29 Matvey Kozhev * data/gtkpod.glade: * src/prefsdlg.c: Filename parse preferences Cover art search preferences File mask exclusion preferences mserv preferences Commands preferences * data/default-cover.png: Less fugly and 1996-style picture * src/display_coverart.c: Set resize algorithm to GDK_INTERP_BILINEAR - yields nicer-looking images * src/charset.c: Added missing call to g_free * src/display_spl.c: Initial HIGification of the smart playlist dialog. 2007-12-28 Matvey Kozhev * data/gtkpod.glade: Fixed sort window crash related to absence of tooltips. Marked "Dummy - do not delete" as not translatable. * src/charset.c: * src/charset.h: Implemented charset_init_combo_box as a drop-in replacement for charset_init_combo * src/prefsdlg.c: Encoding dialog 2007-12-27 P.G. Richardson * src/prefs_window.c Fixed potential memory leak in on_coverart_display_bg_color_set * data/gtkpod.glade * src/prefsdlg.c Support for change background colour added to new prefs dialog 2007-12-27 P.G. Richardson * data/cdshine.png * data/cdshine_main.png * data/Makefile.am Removed reflection shadowing as this is done programmatically. No higlighting required on main image to png removed entirely. * gtkpod.glade Added colour selection button for CoverArt Display background colour. * src/display_coverart.c * src/display_coverart.h * prefs_window.c * prefs.c When a repository contains no tracks, the CoverArt Display background returns to a default colour of white. The default colour of a "live" CoverArt Display is black but can now be changed with a preference option available from the preferences window. To be added to the new preference dialog shortly. To achieve this and keeps a proper reflection, the reflection shadow is added programmatically using a gdkpixbuf created from data. 2007-12-27 Matvey Kozhev * INSTALL: * configure.in: Updated dependency versions (GTK 2.8, indirectly glib 2.8 for libgpod). * src/misc.h: * src/display.c: * src/misc_confirm.c: * src/file_itunesdb.c: * src/ipod_init.c: * src/repository.c: * src/file_export.c: * src/display_spl.c: * src/info.c: * src/tools.c: * src/prefs_window.c: * src/prefsdlg.c: * src/display_coverart.c: * src/misc_playlist.c: * src/file_convert.c: * src/fileselection.c: * src/confirmation.c: * src/display_photo.c: * src/details.c: * src/display_sorttabs.c: * src/help.c: * src/misc.c: Patch for cygwin build, by Éric Lassauge: - Added new wrapper function, gtkpod_xml_new, for glade_xml_new. - Added G_MODULE_EXPORT calls to all glade callbacks. - Renamed struct member "stderr" in display_photo.c. 2007-12-26 Matvey Kozhev * src/prefsdlg.c: * data/gtkpod.glade: New preferences dialog mostly working, except for "advanced" buttons and format conversion settings (greyed out). 2007-12-23 Todd Zullinger * configure.in: bump gtk+ requirement to 2.8.0 or newer 2007-12-21 Matvey Kozhev * src/confirmation.c: Remove GTK_DIALOG_NO_SEPARATOR from the GtkMessageDialog. * data/gtkpod.glade: * src/prefs_window.c: Migrate to GtkComboBox for sort_combo (fixes crash regression). * src/misc_conversion.c: * src/display_sorttabs.c: Applied patch to fix crash (ST_CAT_SPECIAL) in misc_conversion.c, by Andrea [misc_conversion.c: line 300 (ST_to_T): should not be reached] * data/gtkpod.glade: * src/prefsdlg.c: Fully implemented the first tab (Display). 2007-12-20 Daniele Forsi * display.c: add NULL terminator to the argument list for a call to gnome_canvas_item_set() 2007-12-20 Matvey Kozhev * data/gtkpod.glade: * src/prefsdlg.c: * src/Makefile.am: Mockup of the new preferences dialog, available in Edit -> Preferences (Experimental). * src/display_itdb.c: gtkpod.track_add_extra.typo.awn.1.patch by Andrew W. Nosenko : Fix typo, avoid re-creating ExtraTrackData if it already exists as consequence. * src/charset.c: * src/clientserver.c: * src/prefs_window.c: * src/prefs_window.h: gtkpod.gcc-warn.awn.1.patch_[zeT1qb].gcc-warn.awn.1.patch by Andrew W. Nosenko: Eliminate some GCC warnings. * doc/*: * doc/figures/*: Completed import of documentation from the wiki. 2007-12-19 Matvey Kozhev * COPYING-DOCS: Text of the GFDL 1.2. Documentation should be under the GFDL to ensure that it remains license-compatible with the wiki. * doc/gtkpod.xml: Initial, very incomplete documentation import from the wiki. Do not modify the HTML files directly. They are generated from the DocBook XML file. Use "make update-docs" to regenerate them. * Makefile.am: * doc/Makefile.am: Added the update-docs rule to generate HTML documentation from XML. * src/misc.c: * src/misc.h: Moved open_about_window to help.c. * src/help.c: * src/help.h: * src/gtkpod.glade: Support for help contents, online help, and report bug menus. To use context-sensitive help, call gtkpod_open_help_context (in help.h) using the ID of the chapter or sect1 in the DocBook/XML file as the context. It will first try to open the XML file in yelp (the GNOME help viewer), and if that fails, will open the corresponding HTML file in the browser. * src/misc_confirm.c: * src/file_itunesdb.c: * src/misc_playlist.c: * src/fetchcover.c: More message box HIGification. 2007-12-18 Matvey Kozhev * src/confirmation.c: * src/confirmation.h: Added the gtkpod_confirmation_hig and gtkpod_confirmation_simple functions for HIG-compliant confirmation messages. * src/file_itunesdb.c: Migrated the "directory structure" dialog to the HIG functions. 2007-12-18 Jorg Schuler * configure.in: bump version for future development (0.99.13SVN) 2007-12-17 Todd Zullinger * configure.in: bump version for 0.99.12 release 2007-12-17 Todd Zullinger * po/he.po: update Hebrew translation (Assaf Gillat) * po/ro.po: update Romanian translation (Alex Eftimie) * po/sv.po: update Swedish translation (Stefan Asserhäll) 2007-12-16 Jorg Schuler * configure.in: added Russian translation. 2007-12-16 Matvey Kozhev * po/ru.po Added Russian translation. 2007-12-13 Todd Zullinger * po/*.po po/gtkpod.pot: update translation templates 2007-12-13 P.G. Richardson * stock_icons.c Squashed some compiler warnings. 2007-12-13 P.G. Richardson * src/context_menus.c src/display_photo.h src/display_photo.c Bug fixes made to photo window. Remove photo action disabled on thumbnail view context menu when no thumbs selected. The Remove album action was not removing an album unless the album contained photos. Thanks to Alex Eftimie for raising the bugs. 2007-12-13 Daniele Forsi * src/file.c: add variable for existing %s directive * src/file_export.c src/file_itunesdb.c: make strings identical to existing ones * src/display.c data/gtkpod.glade: a string marked translatable in glade must be translated in code instead 2007-12-12 Daniele Forsi * src/misc_confirm.c src/display_photo.c src/fetchcover.c src/misc.c data/gtkpod.glade: fix typos * src/misc.c: update list of translators 2007-12-12 Todd Zullinger * po/POTFILES.in: tell gettext/intltool to treat translation strings as utf-8 2007-12-12 Jorg Schuler * src/display_tracks.c (tm_create_treeview) src/display.c (display_create): moved initialisation of track view sorting to after the entire display is set up to avoid assertion errors. * data/gtkpod.glade data/gtkpod-add-dirs.png (modified) data/gtkpod-logo.png (modified) data/menus-toolbars.diff (modified) data/gtkpod-add-files.png (modified) data/gtkpod-read-16.png (new) data/gtkpod-add-playlists.png (modified) data/gtkpod-read.png (modified) Usability patch by Sikon * data/Makefile.am: added gtkpod-read-16.png * scripts/Makefile.am: sorted files alphabetically for ease of checking. * po/*.po po/gtkpod.pot: run 'make update-po' * src/display.c (display_adjust_menus) Disable 'Edit Smart Playlist' menu when no playlist is displayed. Thanks to Daniele Forsi. 2007-12-11 Jorg Schuler * src/mp3file.c(get_mp3_info): fix integer overlow in calculation of track length of very long tracks. Thanks to Dylan Hall. * src/file_convert.c(conversion_scheduler_unlocked, transfer_get_failed_tracks): attempt to fix the problem of non-transfered tracks. Unable to reproduce the problem myself so I have no way to say whether this is a fix or not. * src/misc.h src/misc.c: use standard gtk_about_dialog(). Thanks to Sikon. 2007-12-11 Todd Zullinger * data/gtkpod.glade: map ctrl-s to "Save Changes" instead of "Sorting Options" * po/POTFILES.in po/POTFILES.skip: add some missing files * po/es.po po/fr.po po/de.po po/sv.po po/ja.po po/gtkpod.pot po/he.po po/it.po po/ro.po: update translation templates 2007-12-09 P.G. Richardson * Added updates since July to ChangeLog. 2007-12-09 P.G. Richardson * src/display_photos.c: When adding multiple images to photo collection, they are now added in alphabetical order by filename. Thansk to Andrew W. Nosenko for the patch. Improved doc comments around photo functions. 2007-12-06 Todd Zullinger * data/gtkpod.desktop.in: better Icon Theme Specification compliance 2007-11-24 Jorg Schuler * configure.in: raised required libgpod version to 0.6.0 2007-11-23 Jorg Schuler * scripts/sync-tomboy.sh: Fixes by Javier Kohen: "First, it escapes the mount point to allow white space in it. Second, it removes tags from the whole note contents so that links in the title don't end up in the file name. Last, but not least, colons are converted to hyphens, since the former are not valid characters in the FAT family of file systems, which the iPod uses." 2007-11-17 Jorg Schuler * src/display_spl.c: Renamed "Time" to "Track length" for better understanding. Fixed track length display (unit was seconds but msecs had to be entered. Furthermore, due to a bug in libgpod offline playlist generation assumed the track length was given in seconds whereas the live-update on the iPod assumed it was given in msecs. You need at least libgpod SVN version 1797 for this to work consistently. libgpod 0.6.0 does not contain the fix. src/display_photo.c: Squashed warning about pointer to integer conversion. 2007-11-14 P.G. Richardson * src/display_photos.c Fix for cancel button when removing a photo album. Photo image removal action display a proper question dialog as to whether the photo should be deleted from the database as well as removing the photo from the selected album. 2007-11-14 P.G. Richardson * data/stock_icons.c: corrected new name of photo icon 2007-11-13 P.G. Richardson * data/tunes_playlist_icon-48.png: new icon for consideration 2007-11-12 P.G. Richardson * data/gtkpod.glade * src/prefs.c * src/prefs_window.c Preference added for controlling display of delete confirmation dialog in display_photo window for removal of a photo album. * src/display_photo.c * src/diaplay_photo.h Rename action added for renaming a photo album. Dialog altered in remove album function so that on clicking "Yes Do Not Display Again", the preference is set to stop the dialog displaying again. * src/context_menus.c Popup menuitem for photo album rename action. * data/gphoto_playlist_icon-48.png * data/tunes_playlist_icon-48.png * data/Makefile.am * src/stock_icons.c * src/stock_icons.h * src/Makefile.am * src/misc.c Stock icons created from image files for use as playlist icons. stockid_init() is called from misc.c upon loading of application. This finds the correct paths of the specified icon images and loads pixbufs of them. These are then added to the default stock factory. Stock ids of these images can then be used throughout the application. * src/display_playlists.c Uses the new stock ids for the playlist icons. 2007-11-07 P.G. Richardson * data/gphoto*.png * data/Makefile.am New icons for menu items in photo window. * data/gtkpod.glade Components of photo window changed around to make more sense from a user perspective. * src/display.c * src/display.h Generic display_image_dialog function added for displaying a bare transient dialog with only the required pixbuf image in it. Used for coverart display and photo window. * src/display_photo.c View full size action added to menus. Rename selected album added to menus. 2007-11-05 Jorg Schuler * src/display_playlists.c (pm_set_renderer_pix): display a different icon for the photo playlist. Customized icons welcome for both standard playlists and the photo "playlist". 2007-11-04 P.G. Richardson * src/display_photos.c New ipods do not necessarily have ITDB_THUMB_PHOTO_LARGE or any other photo format so cannot assume these in display of thumbs in iconview or preview components. Fix is to find the first existing smalled thumb in the case of the iconview and biggest in the case of preview and scale the pixbufs to uniform sizes. Also, fix to clear the preview when a data change like remove occurs. 2007-11-04 P.G. Richardson * src/fetchcover.c Opened up filename handling functions to rest of gtkpod. Reduced number of functions hidden if curl is not available. Fetch_Cover object used as vehicle for handling the filename even if image is not being downloaded. * src/fetchcover.h: parent_window added to Fetch_Cover object. * src/display.h Support for IMAGE_JPEG target type. * src/details.c * src/display_coverart.c Support for image/jpeg target in drag and drop operations on cover art. This target is provided by konqueror (not by firefox at the moment but supposedly at some point) and carries the displayed jpeg image as its data so redownloading is not required. Downloading option used as fallback if this target is not provided. 2007-11-03 P.G. Richardson * src/display_coverart.c Fixed bug in display coverart. Irregular sized album images were being scaled to the default sizes. 2007-11-01 P.G. Richardson * README Updated README with some instructions on using the photo window. 2007-11-01 P.G. Richardson * src/display_photo.c * src/display_photo.h Photo support added to gtkpod. * data/gtkpod.glade: photo window gui components added. * src/context_menus.c * src/context_menus.h Disable right-click menu if Photo "playlist" is selected. Add context menus to album and icon views in Photo window. * src/display_itdb.h Photo database and photodb data changed flag added to Extra iTunes db data structure * src/display_playlists.c Photo playlist added to playlist tree if ipod has a photo db or a new one is created photos are supported. * src/display_private.h * src/display_sorttabs.c Getter and Setter added for control of the selected sorttabs. Allows sorttabs to be returned to their status prior to the photo window being opened. * src/file_itunesdb.c: support for loading of ipod photo database. * src/itdb.h: typedefs for photo database. * src/Makefile.am: compile photo source files. * src/misc.c * src/misc.h Parse artwork from string function. Used in photo DnD operations. * fetchcover.c: removal of fetchcover_cleanup as no longer needed. 2007-10-27 Jorg Schuler * src/fetchcover.c (fetchcover_cleanup): function only used if curl is available -- avoid compilation warning. * configure.in src/mp4file.c: recognize if additional argument is needed for MP4GetMetadataFreeForm() and MP4GetMetadataCoverArt(). Thanks to Felix Homann. 2007-10-27 P.G. Richardson * src/display_coverart.c * data/gtkpod.glade Improved the preview fullsize artwork dialog. Now scales the image to respect the size of the desktop, while displaying the true resolution in a label below it. Preview dialog now constructed in glade file rather than from scratch. 2007-10-21 P.G. Richardson * src/fetchcover.c * src/fetchcover.h Changed purpose of fetchcover. It no longer displays a dialog window for dealing with covers. Instead it provides the internal curl retrieve functions only. * src/context_menus.c Removed fetchcover context menu entries as no longer required. * src/details.c Added drag and drop receive function to thumbnail cover image. Drag a jpg file displayed in firefox or konqueror onto the cover artwork thumbnail in the Edit Details window to download it and set it as the track's artwork. * src/display_coverart.c * src/display_coverart.h Added drag and drop receive function to main image on coverart display. Drag a jpg file displayed in firefox or konqueror onto the main image to set it as the coverart for the album's tracks. * data/gtkpod.glade Removed fetchcover dialog from the glade file. * README Updated drag and drop section to include information about dnd'ing jpgs onto coverart display and Edit Details dialog. 2007-10-07 Michael Tiffany * src/display_itdb.c: patch to set "changed" and "imported" to TRUE for non-ipod (local and podcast) databases Thanks to Mario Rossi. 2007-10-04 Jorg Schuler * src/details.c data/gtkpod.glade: fixed issues with details window: 1) window is shown before resize, which gives an annoying flickering 2) if Misc is the selected panel, the it is not restored next time Thanks to Mario Rossi. * scripts/convert-2mp3.sh: fix handling of genre option 2007-09-30 Todd Zullinger * configure.in src/Makefile.am: add --with/--without options to configure for curl, flac, libmp4v2, and ogg vorbis dependencies. separate pkg-config calls so that the configure output is more informative when one of the required deps is missing. minor cosmetic cleanups. * src/fetchcover.h: remove duplicate comment tag (silences a compiler warning) 2007-09-15 Jorg Schuler * src/file_itunesdb.c (gp_load_ipod): make sure the ipod model number is known and written to the iPod before loading the iTunesDB. If the model number is not known at the time of loading the iTunesDB, libgpod will not read the ArtworkDB, thereby losing all artwork. * scripts/ removed previous convert-{flac|ogg|mp3|m4a|wav}2{mp3|m4a} scripts and replaced with convert-2{mp3|m4a} drafted by Peter van der Does. These scripts share gtkpod-convert-common.sh. scripts/Makefile.am: added/removed the files mentioned above. * src/prefs.c: automatically replace prefs settings to use the new generic conversion scripts. 2007-09-02 Todd Zullinger * scripts/convert-m4a2mp3.sh: fixed a typo, spotted by Peter van der Does. 2007-08-26 P.G. Richardson * src/fetchcover.c * src/fetchcover.h * src/display_coverart.c * src/details.c * src/context_menus.c * gtkpod.glade Commented out fetchcover due to licensing problems. Wiil re-enable once a new approach has been fully considered. 2007-08-25 Jorg Schuler * src/misc_track.c (gp_track_by_filename): stop iteration when result is found. Thanks to Clarke Brunsdon for bringing this to my attention. 2007-08-18 Jorg Schuler * src/autodetection.c (ad_timeout_cb): avoid crash when iTunesDB could not be read successfully. * src/file_itunesdb.c (set_progressbar): only update window if a change occured. * src/tools.c (tools_sync_script): make sure the stderr of scripts is displayed as well. 2007-08-09 Jorg Schuler * src/file_convert.c (conversion_log_append): don't append character by character as this takes up too much CPU time. Thanks to Javier Kohen for the patch. 2007-08-08 Todd Zullinger * data/gtkpod.glade src/prefs_window.c TODOandBUGS: Convert the Track Attributes preference from a series of checkboxes to an Available and Displayed list. Jorg did a bit of cleanup and added many nice features. 2007-08-06 Jorg Schuler * flacfile.c: include "mp3file.h" to avoid compile time warning. 2007-08-03 P.G. Richardson * src/display_coverart.h: added DEFAULT_IMG_SIZE * src/display_coverart.c: improvements to image dimension setting algorithms for both x and y. Using ITDB_THUMB_COVER_LARGE for the preferred image means the coverart can be too big in the coverart display window. Thus, introduces a default maximum and algorithm to set it. 2007-08-02 Todd Zullinger * data/gtkpod.glade: add fetchcover_dialog_test 2007-07-31 Todd Zullinger * INSTALL: update the dependency list 2007-07-30 P.G. Richardson * src/fetchcover.c: improved return status of net_retrieve_image function so that if one image fails to be retrieved then the dialog does not have to be cancelled. 2007-07-26 Michael Tiffany * merge gapless_playback_branch back to HEAD. 2007-07-23 P.G. Richardson * src/details.c: set tartwork_changed flag to TRUE rather than relying on using force_update_cover function. Former picked up by pm_track_changed() * src/display_coverart.c: coverart_track_change responds to track changes and redisplays covers if tartwork_changed flag has been set. * src/display_playlists.c: KEY_DISPLAY_COVERART pref test removed from pm_track_changed and placed inside coverart_track_changed instead. * file.c: update_track_from_file function updates calls for redisplay of the coverart regardless of any file data changes to ensure that any coverart changes do not go unnoticed. 2007-07-15 Michael Tiffany * src/mp3file.c: fixed memory leak: wasn't closing files in mp3_read_lame_tag. 2007-07-14 Jorg Schuler * src/display_tracks.c (tm_set_search_column, tm_search_equal_func): add newly added fields (bugfix). * src/display_tracks.c (tm_cell_toggled): removed "default" case to make sure newly added fields are not forgotten. * src/mp3file.[ch]: moved reading of default tags to id3_read_tags() * src/flacfile.c: fallback on ID3 tags if no vorbis comments are available. 2007-07-13 P.G. Richardson * src/display_coverart.c src/display_coverart.h src/fetchcover.c Added parameter to coverart_get_track_thumb so that the default cover image can be provided with a default size if required. 2007-07-13 Jorg Schuler * src/display_tracks.c (tm_cell_edited, tm_cell_compare): add newly added fields (bugfix, thanks to Michael Tiffany) 2007-07-12 Jorg Schuler * configure.in po/ro.po: added Romanian translation, thanks to Alex Eftimie. 2007-07-11 Todd Zullinger * scripts/sync-evolution.sh: try harder to find evolution-addressbook-export (thanks to Götz Waschk) 2007-07-08 Michael Tiffany * src/mp3file.c: modified mp3_read_lame_tag() to check the info tag crc and return the result of the check. Changed the replaygain and gapless functions to check the return value and only use tag data if the crc matched. 2007-07-06 Michael Tiffany * src/display.h src/misc_conversion.c src/misc_track.c src/file.c src/details.c data/gtkpod.glade: added a read-only checkbox to the Misc tab in the Details window to show the state of the gapless track flag. 2007-07-05 Todd Zullinger * src/autodection.c: add missing string replacement 2007-07-04 P.G. Richardson * src/details.c: tartwork_changed flag defined when a new artwork file is selected from the filesystem. * src/fetchcover.c: tartwork_changed flag added for all occurrences of artwork being changed. * src/display_coverart.c: reworking of the code to fix the sizes of the covers according to the ipod thumbnail size. When the pane is expanded, the coverart display's spacing is widened rather than the individual covers being stretched. Instead of the highlights, reflections and covers images being redrawn as black when null, the containing items are hidden. They are redisplayed when a new cover image is required. 2007-07-04 Todd Zullinger * configure.ac src/Makefile.am: fix compile with --as-needed (thanks to Santiago M. Mola) * po/fr.po: updated French translation (thanks to Eric Lassauge) 2007-07-02 Michael Tiffany * src/mp3file.c: created struct to store the lame tag, and a function to parse it. Changed the replaygain and gapless functions to use this to get any necessary lame data. Added an info tag CRC function from the libmad code (GPL) to check the validity of the lame tag. 2007-06-29 Jorg Schuler * src/details.c (details_setup_widget): fixed memory leak (thanks to Daniele). * src/display_coverart.c (coverart_set_images): fixed memory leak (thanks to Daniele). * src/Makefile.am: remove EJECT_BIN line as it is no longer used (thanks to Gabriel C). 2007-06-27 P.G. Richardson * data/gtkpod.glade: Changed fetchcover dialog's buttons to display icons only. * src/fetchcover.c: Added in gettext macros for status messages. Disabled next button if net_retrieve fails to get any images from the downloaded xml file (Thanks Daniele). 2007-06-27 Todd Zullinger * po/es.po po/fr.po po/de.po po/sv.po po/ja.po po/gtkpod.pot po/he.po po/it.po po/POTFILES.in: add src/autodetection.c to POTFILES.in and update po files * configure.in: bump version for 0.99.11SVN new development * ChangeLog: bump version to 0.99.10 note Michael's work on gapless playback * configure.in: bump version for 0.99.10 release look for MP4GetMetadataGrouping in libmp4v2 check * src/fetchcover.c src/fetchcover.h: give credit where credit is due add Id keyword (Daniele) * src/display_coverart.c src/display_coverart.h src/flacfile.c: add/update copyright headers (Daniele) 2007-06-26 Todd Zullinger * COPYING: update license text from http://www.gnu.org/licenses/gpl.txt 2007-06-26 Daniele Forsi * src/fetchcover.c src/file.c src/misc_playlist.c: change some strings to match existing ones (this will hopefully help translators a little bit) * src/details.c src/details.h src/display_coverart.c src/display_itdb.c src/display_playlists.c src/display_sorttabs.c src/fetchcover.c src/file.c src/prefs.c src/prefs.h src/tools.c: fix typos in comments * po/it.po: updated Italian translation 2007-06-25 Todd Zullinger * src/file.c src/misc_track.c src/mp3file.c src/mp3file.h: preliminary support for parsing gapless playback data from mp3 files. Thanks to Michael Tiffany. * po/es.po po/he.po: remove generic copyright header. 2007-06-25 P.G. Richardson * src/display_itdb.h: added tartwork_changed flag to ExtraTrackData * src/details.c: initialise tartwork_changed flag to FALSE. Use this flag in details_copy_artwork as additional check if artwork has changed. Removal of all tilda related cruff. * src/fetchcover.c: removal of tilda related cruff with use of the tartwork_changed flag from ExtraTrackData. Set Prev Button initially to hidden until images from the net are retrieved. 2007-06-25 Jorg Schuler * src/display_playlists.c (pm_drag_motion): don't allow drops into non-loaded repositories. (pm_create_treeview): don't use GTK_DEFAULT_MOTION as this gives optical feedback that drops into the column header is allowed, even though it is not. * src/display_sorttabs.c (st_create_listview): renamed to st_create_treeview(), simplified and merged with parts of st_create_page which did part of creating the treeview. This is the point when I realize that DND into the sort tabs is not supported and I don't have to do anything. Code is easier to read and understand now. * src/display_tracks.c (tm_drag_motion): don't allow drops into non-loaded repositories. 2007-06-24 Jorg Schuler * src/misc_input.c: removed calls to dirbrowser_block() and dirbrowser_release() (obsolete because dirbrowser became modal) * src/fileselection.c src/fileselection.h data/gtkpod.glade: (adding of tracks, directories and playlist files): do not allow adding of tracks if no playlist is selected or if the iPod is not loaded into the selected repository. Better names for file chooser directories, dirbrowser modal, separate functions for glade callback. * src/file.c (copy_new_info): removed unused variables. 2007-06-23 Todd Zullinger * configure.in: require libgpod >= 0.5.2 2007-06-23 Jorg Schuler * src/file_convert.c: fixed typo (thanks to Daniele Forsi). * src/misc_conversion.c: corrected tooltip for BPM (thanks to Daniele Forsi). * src/display_coverart.c (coverart_get_track_thumb): retrieve thumbnail through libgpod and not from thumbnail filenames because these are not always set. * src/details.c (details_button_apply_clicked): write tags back to file if option is selected. Change modification time of changed tracks. * src/file.c (copy_new_info): further simplification by using track_copy_item() instead of duplicating code. 2007-06-22 Jorg Schuler * src/mp3file.c: added reading/writing of tags for sort artist, sort album, sort title, sort albumartist and sort composer. * src/mp4file.c: Added reading/writing of the grouping tag, whatever that is. The sort tags are written by iTunes as fields of the iTunes_CDDB_IDs tag which I don't seem to be able to access (only the first field seems available without hacking). For reference: the field names are soar (artist), sonm (title), soal (album), soaa (album artist), soco (composer) and sosn (show). Added reading of coverart tag. Displayed by the iPod but not by the coverart display. Properly displayed in the details window. * src/file.c (copy_new_info): use switch() to avoid missing copying new items (like the sort keys). 2007-06-22 Todd Zullinger * src/fetchcover.c: disable debug output for release * po/de.po: remove duplicate header comments 2007-06-21 Todd Zullinger * data/gtkpod.glade: add/update keyboard mnemonics in the Details and Download Cover windows to avoid missing/duplicated mnemonics 2007-06-21 Jorg Schuler * src/file_convert.c (transfer_transfer_track): add newline to libgpod error messages. Thanks to Daniele Forsi. * src/display.h src/misc_conversion.c src/display_itdb.c src/display_tracks.c src/misc_track.c src/details.c data/gtkpod.glade: added support for new text fields supported by libgpod 0.5.0: album artist, sort artist, sort title, sort album, sort albumartist, sort_composer, sort_tvshow. 2007-06-20 P.G. Richardson * details.c - details_copy_artwork Reintroduced if clause on whether to copy the artwork. If image file has been set by fetchcover then a tilde is appended to the filename. This method removes the tilde, renames the file and copies the artwork with the proper filename. * fetchcover.c Introduced flag USE_TILDA that is true when Details window calls fetchcover and false for when display coverart calls it. Tilda symbol added to end of filename if USE_TILDA set to true. Added references to dialog parents to properly control which windows can receive focus while dialogs are displayed. 2007-06-20 Jorg Schuler * data/gtkpod.glade src/prefs_window.c: automatically create the checkboxes for the visible columns selection, greatly simplifying additions. 2007-06-20 Todd Zullinger * src/file_convert.c src/autodetection.c: disable debug output for release * src/display_coverart.c: fix a segfault when the coverart display is minimized and set_covers is called 2007-06-19 Jorg Schuler * src/file_itunesdb.c: Todd's patch to display the repository name while writing to the iPod. * data/gtkpod.glade: Todd's patch to substitute custom button with stock button in the export dialog. * src/file.c: set mediatype to 'audiobook' for .mb4 files. * src/ipod_init.c (gp_ipod_init_set_model): avoid segfault if iPod model cannot be selected (possibly GTK+ or glade version incompatibility?). 2007-06-18 P.G. Richardson Bug fixes spotted by Daniele Forsi. Change in coverart not made to coverart display when apply button clicked on Details window. Fetchcover behaved awkwardly with naming the downloaded image files if the tracks concerned lacked album info in their ID3 tags. Coverart files from fetchcover subject to template values in the prefs. Should always be a default value of folder.jpg if none of the templates provide a non-null value. * src/details.c: details_copy_artwork() has to now always recopy the artwork from file. The reason being, fetchcover overwrites the artwork hence the file name will still be the same while different artwork. * src/display_coverart.h src/display_coverart.c: set_covers() and set_cover_item() now has a parameter to force an update of the cover images from file. Only used by details_copy_artwork() when the apply button is clicked on the details window. * src/fetchcover.c: dialog will now appear if a cover image file already exists in the tracks directory. Gives the options to overwrite, save as unique name or cancel completely. 2007-06-18 Jorg Schuler * src/misc.h src/details.c src/misc.c data/gtkpod.glade: moved mediatype combobox handling in edit details window completely inside details.c for easier maintenance. 2007-06-17 Jorg Schuler * src/mp4file.c src/mp3file.c: read/write tempo (BPM) value from/to tags. src/flacfile.c src/oggfile.c: read tempo (BPM) value from tags (not sure if this is correct) src/file.c (copy_new_info): copy BPM after having read it. * README: some changes initiated by Daniele Forsi. * src/info.c (gtkpod_statusbar_message): fixed memory leak -- thanks to Daniele Forsi. * src/display_sorttabs.c (st_create_special): fixed memory leak. * src/prefs.c (init_prefs): fixed memory leak. * src/syncdir.c (sync_playlist): fixed memory leak. * src/display_coverart.c (coverart_block_change): fixed memory leak. 2007-06-14 Jorg Schuler * po/es.po: new version updated by Alejandro Lamas Daviña. 2007-06-13 Jorg Schuler * src/prefs.c (read_prefs_get_key_value): don't strip whitespace from prefs values. This is none of this function's business! (Thanks to Todd for tracking this down) * src/display_sorttabs.c (st_create_notebook): set up compare function so that the ignore strings work right after startup. (Thanks to Todd for tracking this down) 2007-06-08 Todd Zullinger * gtkpod.glade src/prefs_window.c: hide Last.FM tab (déjà vu) * configure.in src/display_coverart.c src/Makefile.am src/misc.c data/gtkpod.gladep data/Makefile.am Makefile.am po/es.po po/fr.po po/de.po po/sv.po po/ja.po po/gtkpod.pot po/he.po po/it.po po/POTFILES.in po/POTFILES.skip: Fixup 'make distcheck' and add some files missing for i18n. * configure.in Makefile.am data/gtkpod.desktop.in data/Makefile.am data/icons data/icons/48x48 data/icons/48x48/Makefile.am data/icons/32x32 data/icons/32x32/Makefile.am data/icons/Makefile.am data/icons/64x64 data/icons/64x64/Makefile.am autogen.sh po/POTFILES.in: Add a .desktop file and reorganize the icons. 2007-06-05 P.G. Richardson * src/fetchcover.c src/fetchcover.h: Add license headers to source files. 2007-06-05 P.G. Richardson * src/display_coverart.c: Fixed free_CDWidget() function which tried to free visible albums twice. Also click hide button on coverart display once again hides the slider and navigation buttons. Thanks to Todd for the spot. 2007-06-02 Daniele Forsi * po/it.po: updated Italian translation 2007-06-01 P.G. Richardson * src/display_coverart.c: Added callback on display_coverart content panel for acting on scroll events with the mouse wheel. Result is that moving the scroll wheel while the mouse is over the coverart display will scroll the covers in the respective direction. Avoided possible null pointer in track_changed function. Thanks to Daniele Forsi for raising it. May need further work if this does not solve it. 2007-05-31 Jorg Schuler * src/autodetection.c: fix non-responsive buttons introduced with automounting. * scripts/sync-tomboy.sh scripts/sync-notes.sh: fixes by Oliver Sherouse * scripts/sync-abook.sh scripts/sync-webcalendar.sh: set more reasonable default path. 2007-05-30 P.G. Richardson * src/display_coverart.c: Changed the on_main_cover_image_clicked so that only the tracks belonging to the album are displayed in the track listing. The sorttabs are no longer updated. A lot quicker and doesnt rely on the artist/album sorttabs being visible. * /src/fetchcover.c: Status bar content changes in case album is not found. 2007-05-30 Todd Zullinger * configure.in INSTALL INSTALL_CVS Makefile.am: change CVS references and links to SVN 2007-05-17 P.G. Richardson * display_coverart.c Completely forgot compile time errors for g_hash_table_remove_all so removed glib_version call to ensure back compilation compatibility. 2007-05-16 Todd Zullinger * src/tools.c: Fixed a few typos. (Daniele Forsi) 2007-05-16 P.G. Richardson * src/display_coverart.c: Null checks placed in free_album. g_hash_table_remove_all only used if running GLib version is newer than 2.12.0. Otherwise falls back on g_hash_table_foreach_remove. Thanks to Mario Rossi for squashing these bugs. 2007-05-16 Jorg Schuler * scripts/convert-flac2mp3.sh scripts/convert-ogg2mp3.sh scripts/convert-wav2mp3.sh: Added quotes around $genreopts to make script more robust. Thanks to Andy. * src/display_itdb.c (gp_playlist_remove_track): podcasts could not be removed from the iPod. * gtkpod.glade: corrected spelling of 'separated' and 'iPod'. Thanks to Daniele Forsi. 2007-05-13 P.G. Richardson * context_menus.c Fixed segfault in cad_context_menu_init() to avoid freeing tracks unnecessarily. * display_playlist.c Coverart display will only be updated with a track change, addition or deletion if it is visible and not minimized. * display_coverart.h display_coverart.c New Album_Item structure introduced for storage of tracks in coverart display. Replacement of displaytracks GList with a key list related to an Album_Item hashmap. Track_changed function changed to speed up changed, removal and addition operations. Other functions updated to reflect introduction of Album_Item and hashmap. 2007-05-11 Jorg Schuler * INSTALL configure.in src/Makefile.am src/autodetection.c (new) src/autodetection.h (new) src/display_itdb.h src/file_convert.c src/file_itunesdb.c src/misc.c src/misc.h src/misc_input.c src/tools.c: Autodetection and auto-loading of iPods. This loads iPods automatically on start-up when they are connected or later when they are mounted. Uses gnome-vfs for detection of mounted volumes and HAL for determining if the mounted volume is an iPod. Works fine without HAL, and compiles fine without gnome-vfs, but without autodection facility. iPod repositories are added automatically when necessary and removed when ejecting an iPod. Preferences referring to an iPod are saved into the iTunes directory (gtkpod.prefs). gtkpod.glade src/prefs_windows.c: src/prefs.c - removed old auto-import functionality. Auto-import is no longer supported without gnome-vfs. Code to support automounting on KDE should be easy to add -- please contribute. src/prefs.c src/prefs.h: - new code to save/load temporary preferences to an aribtrary file (temp_prefs_load/save(), used by load/save_ipod_prefs() in misc.c). - new code to create a subset of keys from the prefs structure. 2007-05-10 Jorg Schuler * src/prefs.c (prefs_create_subset): removed double-lock of prefs table which locked up prefs_rename_subkey(), used in repository.c 2007-05-07 Jorg Schuler * scripts/convert-flac2m4a.sh scripts/convert-flac2mp3.sh scripts/convert-m4a2mp3.sh scripts/convert-mp32m4a.sh scripts/convert-ogg2m4a.sh scripts/convert-ogg2mp3.sh scripts/convert-wav2m4a.sh scripts/convert-wav2mp3.sh: Track number was not set correctly in converted file. Thanks to Javier Kohen for spotting this. 2007-05-06 Jorg Schuler * src/display_tracks.c: quick fix for the annoying multi-edit when dragging multiple tracks from track view to another playlist. * src/display_coverart.c: ignore simple track changes for performance reasons * src/display_coverart.c: src/misc_confirm.c: changed '//' to '/*' for compatibility reasons. * src/confirmation.h src/display_coverart.c src/display_itdb.c src/display_itdb.h src/file.c src/file.h src/file_convert.c src/file_convert.h src/file_itunesdb.c src/info.c src/info.h src/misc_playlist.c src/misc_track.c: gtkpod.glade - Copying of tracks to the iPod in the background. - Remove 'oldsize' entry in ExtraTrackData formerly used when updating tracks. - Reduce SPACE_TIMEOUT from 4 to 1 seconds (probing device for free space) 2007-05-05 P.G. Richardson * display_playlists.c: Coverart display updated regardless of whether it is displayed. * display_coverart.c: - coverart_block_change changes the cursor icon to waiting then turns it back after. - search_tracks improved to make debugging easier. - reworking of display_track_changed Delete case. Did not adequately deal with deletion of multiple albums by same or different artists. Thanks to Jorg for good spot. 2007-05-05 Jorg Schuler * scripts/convert-wav2mp3.sh: added genre-patch for genre types not supported by lame. 2007-05-05 Todd Zullinger * scripts/convert-flac2mp3.sh: fixed a typo, thanks to Andy. 2007-05-01 P.G. Richardson * display_coverart.c: When select_cover (track) is called, slider value is adjusted accordingly. 2007-05-01 Jorg Schuler * README: removed references to Offline-Mode which is no longer supported. * gtkpod.glade src/file_convert.c src/file_convert.h src/file_itunesdb.c: hopefully worked out some quirks. 2007-04-27 Jorg Schuler * src/display_spl.c: Adoption to namespace cleanup in libgpod. * configure.in src/Makefile.am src/fetchcover.c src/file_itunesdb.c src/prefs_window.c src/lastfm.[ch]: Removed lastfm support because the code is not ready and abandoned. I've left the tab in the prefs window and the md5.[ch] files in CVS in case someone else wants to have another try. * src/date_parser2.l src/display.h src/display_playlists.c src/display_sorttabs.c src/display_spl.c src/display_tracks.c src/file.c src/lastfm.c src/misc_conversion.c src/misc_track.c src/misc_track.h src/syncdir.c: removed references to itdb_time_...() functions that are obsoleted. 2007-04-23 Jorg Schuler * gtkpod.glade src/prefs_window.c: make sure prefs window is usable on laptops with screen only 800 pixels high. * merge threaded_conversion_branch back to HEAD. * src/file_convert.c: avoid GTK assertion with uninitialized statusbar. * gtkpod.glade src/file.h src/file_itunesdb.c src/display.c src/file.h src/file_convert.c src/file_convert.h src/file_itunesdb.c src/prefs_window.c src/info.c: handle closing of window if user clicks on the 'close-window' buton, general cleanup, created log window for file conversion output. 2007-04-21 P.G. Richardson * Consideration of extra scenario for removal of a track with respect to display of coverart. Basically, needed to cater for situation where user removes the first track in an album but leaves the remaining tracks behind. Need to remove the first track from displaytracks list but add in the second. 2007-04-21 P.G. Richardson * Changed the way coverart display is updated when a track is removed, added and changed (Thanks to Jorg for thoughts on this. Much quicker response): ** display_coverart.h & display_coverart.c: - coverart_sort_images() made static - slider initialization broken out into own function - select_cover() will silently return rather than throwing an error if selected trk not found in display. - coverart_track_changed() added for deciding action to be taken when a track changes. Instead of expensive call to coverart_set_images() - coverart_set_images() extra parameter to stop recreation of display track list every time its called. ** display_playlists.c: pm_add_track, pm_remove_track, pm_track_changed all call coverart_track_changed ** display_sorttabs.c: resets coverart but only reloads all tracks if sort is set to none. No way to detect original sort order efficiently. ** misc_confirm.c: removal of coverart_set_image calls so pm functions relied on instead. 2007-04-21 Jorg Schuler * src/context_menus.c: fixed compile issue when compiling with GTK+ * po/POTFILES.in: renamed display_songs.c to display_tracks.c 2007-04-20 Jorg Schuler * gtkpod.glade src/file_itunesdb.c src/prefs.c: unified progress dialog across delete/transfer/writing iTunesDB for better user experience. * src/file_convert.c src/file_convert.h src/prefs_window.c: set up preferences dialog (number of background threads, max. cache dir size) src/file_itunesdb.c: avoid mutex deadlock when trying to cancel delete/transfer of tracks. 2007-04-20 Jorg Schuler * gtkpod.glade src/file_convert.c src/file_itunesdb.c: Adapted export progress dialog and moved layout to gtkpod.glade 2007-04-19 Jorg Schuler * Multi-threaded background file conversion, first round 2007-04-15 Jorg Schuler * src/mp3file.c: fixed "comparison with string literal" issues by using strcmp instead. Thanks to Petr Gajdos. 2007-04-15 Jorg Schuler * src/misc_confirm.c: fixed typo -- thanks to Daniele Forsi. 2007-04-16 P.G. Richardson * fetchcover.c: corrected operations if curl is and is not available * removed calls to itdb_thumb_get_filename() from fetchcover.c and display_coverart.c * corrected behaviour of coverart display slider if only one album is in the selected playlist 2007-04-15 Jorg Schuler * merged fetchcover_development_branch back to HEAD * src/prefs.[ch]: fixed typos ("prefrences") -- thanks to Daniele Forsi. Changed mkdir() to g_mkdir() and reduced number of #include headers. 2007-04-15 Jorg Schuler * (fetchcover branch) src/fetchcover.c: add NULL pointer at the end of some variable argument calls to avoid segfaults. 2007-04-14 P.G. Richardson (fetchcover branch) - Context menu on display artwork updated with new items: -- Selection of cover from a file -- Download of cover from the web - Fetch Cover button moved up in Edit Details window - Display Coverart slider values sorted out so as to better reflect index of covers - Display Coverart up/down arrows are shown/hidden depending on window start - Fetchcover dialog bordered to clarify a blank image is displayed - Fetchcover dialog added to glade-2 xml file - Hightlighting toned down for main image in Display Coverart window 2007-04-01 P.G. Richardson (fetchcover branch) gtkpod.glade: * rename Fetch Cover button context_menus.c: * create context menu for main coverart display image * new context action hooks to display artwork in a dialog display_coverart.c: * coverart_display_big_artwork() for displaying a dialog containing an originally sized coverart image * coverart_get_displayed_tracks() for returning all tracks relating to the main coverart display image fetchcover.c * completed functionality, including next, previous, cancel and save buttons * status bar to indicate whether images have been recovered 2007-04-10 Todd Zullinger * scripts/convert-ogg2mp3.sh: Try to use id3v2 as a fallback for setting genres that lame doesn't handle 2007-04-08 Jorg Schuler * src/main.c src/misc_confirm.c src/prefs.c src/prefs.h: avoid assertions when shutting gtkpod down. * src/main.c src/misc.c src/misc.h src/misc_confirm.c: moved gtkpod_main_quit() from misc_confirm.c to misc.c and renamed to gtkpod_shutdown(). Added ok_to_close_gtkpod(). Moved initialization from main.c to misc.c in gtkpod_init(). * src/file_convert.c src/file_convert.h: added header information. 2007-04-08 Jorg Schuler * src/misc_track.c (add_tracks_to_playlist): - when dragging tracks from one iPod to another: remove original iPod path on copied track. - set DND origin data when dragging from a local repository to the iPod. * src/misc_track.[ch]: added gp_itdb_find_same_tracks_in_local_itdbs() * src/files_itunesdb.c: adjust rating and playcount in local databases when loading ipod. * src/prefs.[ch]: make prefs_create_subset() static, make prefs system thread safe, which should be useful when creating other threads doing things in the background. 2007-04-07 Jorg Schuler * src/misc_track.c: when adding a duplicate keep the original filename information if it's still valid. * src/file_itunesdb.c: removed rating and playcount completely from extended info hash routines. Added local_itdb_id and local_track_dbid. * src/display_itdb.c src/display_itdb.h src/file_itunesdb.c src/main.c src/misc_track.c src/misc_track.h: introduced and maintain a filename hash for each repository. Will be used to cross-reference between repositories for playcounts and on-the-fly conversion. * gtkpod.glade src/clientserver.c src/display_itdb.c src/display_itdb.h src/file.c src/file_itunesdb.c src/misc_playlist.c src/misc_track.c src/prefs.c src/prefs_window.c src/sha1.c: finished renaming of wrong md5 references to sha1. 2007-04-02 Jorg Schuler * scripts/sync-evolution: make syncing of contacts containing pictures possible. Thanks to Lars Friedrichs. 2007-03-29 Jorg Schuler * src/display_playlist.c (pm_drag_data_received): bugfix: allow to drop contents of one playlist into another playlist even if playlist view is "sorted". (Sorting currently disabled anyway) * src/display_playlist.c: small rework in preparation of future changes. New support functions pm_get_position_for_itdb(), pm_get_position_for_playlist(), pm_get_iter_for_itdb(), pm_get_iter_for_playlist() replace some of in-function code. pm_name_changed() changed to pm_itdb_name_changed(). * src/file_itunesdb.c src/display_itdb.c: use of new support functions above instead of dedicated code. 2007-03-28 Jorg Schuler * src/file.c src/file_itunesdb.c src/misc_track.c: When podcasts were first introduced, iTunes did not add podcasts to the master playlist and only showed them in the Podcast playlist. This has changed in the meanwhile and Podcasts also appear in the master playlist (i.e. when browsing through the music files on an iPod). This patch make gtkpod behave the same. Old iTunesDBs with podcasts not listed in the MPL are automagically updated. 2007-03-26 Jorg Schuler * misc.c: corrected copyright to show 2002-2007. * context_menus.c: Implemented Andrzej Palejko's patch to allow copying of tracks and playlists from within the context menu without using DND. 2007-03-25 P.G. Richardson * details.c: removal of coverart_set_images from details_button_apply_clicked() * display_coverart.c: set prefs key in coverart_init_display() when coverart display is displayed * display_playlists.c: added coverart_set_images to pm_add_track, pm_remove_track, pm_track_changed. retained coverart_set_images call in pn_selection_changed_cb as this displays the coverart when a playlist is selected * display_sorttabs.c: coverart_set_images retained in st_sort() as a reiniting of the coverart is never fired during an alphabetize operation * fileselection.c: calls to coverart_set_images removed as this is taken care of by pm_add_track() in display_playlists.c * delete_track_ok.c: call to coverart_set_images retained as although pm_remove_track correctly calls this function, it is too early in the delete process and the deleted track is still displayed * prefs.h: addition of KEY_DISPLAY_COVERART key for use by display_playlists functions 2007-03-25 Jorg Schuler * gtkpod.glade: added hbox into which the sorttab/tracklist view is placed (for futures to come). 2007-03-19 Jorg Schuler * display.c (display_create): removed reference to stop_button * src/display.c src/display.h src/display_private.h src/display_sorttabs.c: sorted out remaining assertions produced after last night's changes. Made st_page_selected() and st_create_notebook() static. 2007-03-18 Jorg Schuler * gtkpod.glade src/display.c src/display.h src/display_playlists.c src/display_private.h src/display_sorttabs.c src/display_tracks.c src/misc.c src/misc.h src/misc_track.c src/prefs.c src/prefs_window.c: Clicking on an item with the right mouse button will select and open the context menu, which is the intended behavior. As a consequence, the interface will remain blocked while the selection is being updated and displayed. 2007-03-17 Jorg Schuler * po/de.po: update supplied by Kai-Ove Pietsch. 2007-03-11 Todd Zullinger * src/prefs_window.c: hide Last.FM tab when not built with curl libs 2007-02-27 P.G. Richardson * display_coverart.c: Changed coverart_set_images to internally get the playlist and checks whether the playlist is null or not. Thus, all calls to coverart_set_images require no checking of parameters beforehand. * details.c, display_playlists.c file_itunesdb.c fileselection.c misc_confirm.c: functions updated to call modified version of coverart_set_images. data_changed function no longer calls coverart_set_images since this is used in too many other places where setting coverart is unnecessary and error prone. 2007-02-26 Jorg Schuler * src/display_spl.c: Smart playlists now support the following new fields: album artist, tv show, last skipped, season number, skipcount and video kind. * configure.in: require libgpod >= 0.4.3 2007-02-22 Jorg Schuler * src/file_export.c (export_trackglist_when_necessary): cosmetic change (!a || !b) -> !(a && b) * src/misc_track.c (add_tracks_to_playlist): bugfix: dragging tracks between iPods did not work if no local path was available. * gtkpod.glade: left-justify "Album Art" in cover display. * src/prefs_window.c src/prefs.c: removed references to "display_artcovers". * src/displac.c src/display_coverart.c: remember if coverart was last shown or hidden. 2007-02-23 P.G. Richardson * display_coverart.c - Avoided null pointer exceptions by testing cdwidget first in coverart_block_change() - Ensured the pande0 button release event only initiaties if a width change has truly occurred ie. gtk_paned_get_position() != WIDTH * display_playlists.c - Blocked other coverart related changes while a pm_playlist_change_cb is being enacted. - Blocking is lifted prior to the call to coverart_set_images - pm_playlist_change_cb() will occur on deletion of a playlist. In this case the deleted playlist will be nullified. In this case, clear any coverart images rather than setting them (none to set) * file_itunesdb.c - data_changed function called whenever track details are changed. Added a resettting of the coverart to this function so all tracks in coverart display are synced with database data 2007-02-22 Jorg Schuler * main.c, display_coverart.c: fixed possible access to uninitialized pointer * confirmation.c (cleanup): don't access free'd pointer. 2007-02-22 P.G. Richardson * display_coverart.c - Added "Album Art" title label to display_coverart pane - Changed set_display_dimensions to make WIDTH=HEIGHT giving aspect ratio default of 1 rather than 1.2 - Added patch to dispay_coverart.c to correctly cleanup pixbuf memory leakag. (All credit for this to Christophe (teuf at gnome.org)) 2007-02-20 Jorg Schuler * Modified Files: .cvsignore TODOandBUGS.txt configure.in gtkpod.glade src/Makefile.am src/display.c src/display.h src/display_playlists.c src/display_private.h src/display_sorttabs.c src/display_tracks.c src/fileselection.c src/main.c src/misc_confirm.c src/prefs.c src/prefs_window.c * Added Files: pixmaps/cdshine.png pixmaps/default-cover.png src/display_coverart.c src/display_coverart.h Merged P.G. Richardson's album display branch back to the main trunk. Thanks for your work! 2007-02-19 Jorg Schuler * src/display.c src/display_playlists.c src/display_private.h: renamed pm_add_all_playlists() to pm_add_all_itdbs(). 2007-02-18 Jorg Schuler * po/es.po: updated -- thanks to Alex Lamas. * gtkpod.glade: Renamed "Synchronize Playlist" to "Synchronize Playlist with Dir(s)". * README: updated section "Synchronize with Directories" 2007-02-11 Jorg Schuler * README: fixed some typos -- thanks to Daniele Forsi. 2007-02-10 Jorg Schuler * sync-evocalendar.sh sync-kaddressbook.sh sync-korganizer.sh sync-notes.sh sync-tomboy.sh sync-webcalendar.sh: corrected syntax description from "-e=none" to "-e none". * src/file_export.c (export_playlist_file_write): simplified prefs_get_*_value() to prefs_get_*() * file.h (FileSource): changed order to reflect the order of options in the Export Playlist file requester dialog. Thanks to Todd. * README: updated instructions on how to restore one's iPod after file system errors or similar devastating events. 2007-02-09 Jorg Schuler * src/display_tracks.c (tm_search_equal_func, tm_set_search_column): make tv-show, -episode and -network searchable. 2007-02-07 Jorg Schuler * src/file_itunesdb.c: changed message string (thanks to Daniele Forsi) 2007-02-06 Jorg Schuler * scripts/convert-flac2m4a.sh scripts/convert-flac2mp3.sh scripts/convert-m4a2mp3.sh scripts/convert-mp32m4a.sh scripts/convert-ogg2m4a.sh scripts/convert-ogg2mp3.sh scripts/convert-wav2m4a.sh scripts/convert-wav2mp3.sh: fixed some bugs in conversion scripts (Mario Rossi). * src/file_itunesdb.c src/prefs.c: remember dialog size and "display details" state, display warning when transferring track that cannot be played by the iPod (Mario Rossi). 2007-02-05 Jorg Schuler * src/details.c gtkpod.glade: small fixes for "Edit Details Window" by Mario Rossi. * gtkpod.glade scripts/convert-flac2m4a.sh scripts/convert-flac2mp3.sh scripts/convert-ogg2m4a.sh scripts/convert-ogg2mp3.sh scripts/Makefile.am src/display_itdb.h src/file.h src/file_convert.c src/file_convert.h src/file_itunesdb.c src/prefs_window.c src/prefs.c: display of conversion progress and improved conversion scripts (receive meta tags by command line arguments). Thanks to Simon Naunton! scripts/convert-m4a2mp3.sh scripts/convert-mp32m4a.sh scripts/convert-wav2m4a.sh scripts/convert-wav2mp3.sh: new scripts for mp3, m4a and wav conversion. 2007-02-04 Jorg Schuler * gtkpod.glade src/display.h src/display_tracks.c src/misc_conversion.c src/misc_track.c: Patch by Mario Rossi to allow editing of TV show metadata and media type. Big thanks! * configure.in: require libgpod >= 0.4.2 * scripts/Makefile.am: added convert-og2m4a.sh to script list. * scripts/sync-webcalendar.sh: applied patch from Giray Devlet for support of differently named calendars. 2007-01-24 Jorg Schuler * scripts/convert-flac2mp3.sh: fixed typo (thanks to Peter Edwards) * scripts/convert-ogg2mp3.sh: applied Peter Edwards' patch * scripts/convert-ogg2m4a.sh: new script courtesy of Peter Edwards 2007-01-18 Jorg Schuler * scripts/convert-flac2mp3.sh scripts/convert-ogg2mp3.sh: some minor fixes pointed out by Peter Edwards. Thanks! * scripts/convert-flac2m4a.sh: thanks to Peter Edwards. * src/display_itdb.h src/file.c src/file.h src/file_convert.c src/file_convert.h src/file_itunesdb.c src/flacfile.c src/oggfile.c: changes in conversion engine. Whether conversion is necessary will be determined at the time of copying, not at the time of adding to ensure that drag and drops from the Local repository work as expected. * src/clientserver.c src/date_parser.l src/date_parser2.l src/display_sorttabs.c src/file_itunesdb.c src/misc_confirm.c src/tools.c: corrected typo (occured -> occurred) 2007-01-16 Jorg Schuler * scripts/convert-flac2mp3.sh scripts/convert-ogg2mp3.sh src/file_convert.[ch] src/flacfile.[ch] src/oggfile.[ch]: new files for patch mentioned below configure.in gtkpod.glade scripts/Makefile.am src/Makefile.am src/display_itdb.h src/display_tracks.c src/file.c src/file.h src/file_itunesdb.c src/misc.c src/misc.h src/misc_conversion.c src/misc_track.c src/prefs.c src/prefs_window.c src/repository.c src/syncdir.c src/tools.c: combined patch by Marc d[r]eadlock and Simon Naunton for on-the fly conversion of FLAC and OGG files during export to the iPod, plus some patches thrown in by myself. Thanks for the contribution! * src/charset.c: Default Japanese auto-conversion to UTF8 instead of EUC-JP. Thanks to Jun Kobayashi * src/display_sorttabs.c (on_st_switch_page): avoid CRITICAL warning when the "Special" filter tab was selected. Thanks to Audrius Meskauskas for pointing this out. * src/file.c: when looking for thumbnail files, also look for uppercase filename extensions, like .JPG -- not only for .jpg. * gtkpod.glade src/details.c src/display.h src/display_itdb.c src/file.c src/misc.c src/misc.h src/misc_conversion.c src/misc_track.c: Mario Rossi's patch to display and select TV-related data fields and the media type of a given track. 2007-01-15 Jorg Schuler * po/ja.po: updated Japanese catalog -- thanks to Kentaro Fukuchi 2007-01-14 Jorg Schuler * po/de.po: update by Kai-Ove -- thanks! * po/he.po: update by Assaf Gillat -- thanks! 2007-01-08 Jorg Schuler * po/it.po: fuzzy'ed out translation with incorrect format string. * po/ja.po: fuzzy'ed out translation with two plural forms (Japanese only supports one plural form) until a solution is found. * po/fr.po: updated French catalog (thanks to Eric Lassauge) * po/POTFILES.in: added support.c 2007-01-07 Jorg Schuler * INSTALL: corrected PKG_CONFIG_PATH 2006-11-28 Jorg Schuler * configure.in: INSTALL: require gtk >= 2.6.0 2006-11-26 Jorg Schuler * src/display_playlists.c: display duplicates when adding tracks through DND. * src/display_playlists.c: avoid crash when clicking on the 'Eject/Load iPod' icons too quickly. * src/details.c: indicate corrupted artwork data. 2006-11-24 Jorg Schuler * src/prefs.c src/clientserver.[ch]: Add command line argument to print out the gtkpod sha1 hash of a file ("--hash"). Thanks to Todd Zullinger. * src/context_menus.c: Make context menu more consistent ('Edit Playlist Properties', 'Edit iPod Properties' and 'Edit Repository Properties'). * src/ipod_init.c: gp_ipod_init() would 'forget' what model the user selected earlier when setting up the iPod repository. 2006-11-22 Jorg Schuler * src/: renamed - display_songs.c to display_tracks.c - md5.c to sha1.c - md5.h to sha1.h * subsequent changes to Makefile.am and some #includes. * src/md5.[ch], src/lastfm.[ch]: lastfm support by Anant Narayanan. 2006-11-17 Jorg Schuler * src/*.[ch]: realized that we are using sha1 hash and not md5 hash, therefore renamed all relevant occurences of md5 (function names only so far). 2006-11-08 James Liggett * src/file.c src/file_itunesdb.c: Patch from Rommel G. Custodio that allows current CVS gtkpod to compile with current CVS libgpod. 2006-10-22 Jorg Schuler * scripts/sync-evocalendar.sh: new option for adding a filter script. Thanks to Clarke Brunsdon for the patch. 2006-10-21 Jorg Schuler * src/mp4file.c: fix compilation error when compiling with libmp4v2 package from http://www.debian-multimedia.org/ * src/display_songs.c (tm_get_nr_of_tracks): speed up counting of displayed tracks by using gtk_tree_model_iter_n_children() instead of actually counting. Thanks to Clarke Brunsdon for the patch. 2006-10-14 Jorg Schuler * src/prefs.c: fix compiler warning on 64bit systems (%llu) * src/mp4file.c: don't assume that the audio track is track 0. Instead cycle through all tracks until an audio or video track is found. 2006-10-02 Jorg Schuler * src/file_export.c: only write error messages for track for which export failed and not all subsequent tracks as well. Thanks to Joachim Tesch for the patch. 2006-09-27 Jorg Schuler * src/mp3file.c: Todd Zullinger caught the break statement at the wrong place. 2006-09-26 Jorg Schuler * po/sv.po: updated version by Stefan Asserhall * src/mp3file.c: when adding artwork make sure the correct type is used (preferably type 3 (cover) or type 0 (used by iTunes)). Thanks to Todd Zullinger for the patch. 2006-09-24 Jorg Schuler * src/mp3file.c (mp3_write_file_info): YEAR tag was not written to file. Thanks to t0C for the patch. * src/syncdir.c (sync_playlist): clean up 'updated/non-updated/duplicate' lists so they don't pop up unexpectedly at a later time. * po/es.po: updated version by Alejandro Lamas Daviña * README src/main.c src/misc_confirm.c src/prefs.c src/prefs_window.c: removed references to "automount". * configure.in: bumped to V0.99.8 for release * configure.in: bumped to V0.99.9CVS for new CVS version 2006-09-21 Jorg Schuler * src/file.c: (update_track_from_file): forgot to flag track for re-transfer when hash value had changed (thanks to Todd Zullinger). * src/file.c (add_coverart): handle templates better (no "safety" substitutions of characters). Thanks to Flavio Stanchino. * gtkpod.glade src/details.c src/display.h src/display_itdb.c src/display_songs.c src/file.c src/misc_conversion.c src/misc_track.c: Display artwork path (thanks to Flavio Stanchino for most of the patch). 2006-09-18 Jorg Schuler * mp3file.c: support reading of coverart from APIC tag. Work around non-conformant tags written by iTunes. * mp4file.c: update instructions at the beginnging of the file, read soundcheck values irrespective of "readtags" setting. * gtkpod.glade src/prefs.c src/prefs_windows.c src/mp3file.c src/file.c: implement "coverart_apic" prefs key allowing to select whether coverart stored in tags should be used or not. * src/display_itdb.c src/display_itdb.h: new: gp_track_set_thumbnails_from_data() 2006-09-17 Jorg Schuler * misc_conversion.c: Typo: "Suffling" -> "Shuffling". Thanks to Todd for pointing this out. * ipod_init.c (set_cell): display iPod sizes smaller 1 GB in MB, instead of displaying "0 GB". * INSTALL: update with list of dependencies (thanks to Todd) 2006-09-14 Jorg Schuler * display_spl.c (spl_check_number_of_rules): simplify activation/deactivation of button to remove rules. 2006-09-11 Jorg Schuler * display_spl.c (spl_update_rule): don't reactivate the '-' button when changing the rule. 2006-09-11 Jorg Schuler * file.c (add_artwork): fix problem when artwork template expands into something containing a '.'. Thanks to Thorsten. 2006-09-01 Jorg Schuler * gtkpod.glade src/file.c src/prefs_window.c: file exclusion mask when adding tracks -- thanks to Richard Hyde for the patch. Will have to add exclude-support for syncing and updating. * src/syncdir.c: fix problem when directory to sync ends with '/'. 2006-08-31 Jorg Schuler * syncdir.c (sync_playlist): fix segfault when removing track from iPod. 2006-08-30 Jorg Schuler * file.c (get_track_info_from_file): don't reset time_added when updating files. 2006-08-21 Jorg Schuler * TROUBLESHOOTING: added hint for ubuntu users. Thanks to Marcelo Varanda. 2006-08-18 Jorg Schuler * src/file.c (get_track_info_from_file): set time_modified to modification date of file instead of current time. Thanks to Richard Hyde. 2006-07-04 Jorg Schuler * src/misc_track (track_scan_length): work around problem in conversion from gdouble to gint32 which caused playlength be set incorrectly (most notable in write-through mode in the edit details window). 2006-07-02 Jorg Schuler * src/misc_confirm.c (delete_playlist_head): fixed stupid compile error. 2006-06-29 Jorg Schuler * src/confirmation.c: Add safety to "remove all tracks" context menu. 2006-06-27 Jorg Schuler * src/display_playlist (pm_remove_playlist): if entire itdb is removed, clear display (filter tabs, playlist view) first to avoid segfaults when non-existent tracks are accessed for display updates. 2006-06-26 James Liggett * src/misc.c src/prefs.h: Fixed a translation problem, updated copyright. * src/misc.c src/prefs.c: Updated copyright info, prefs howto, and about box. * src/prefs_window.c: Fixed sort ignore list bug. * src/main.c src/misc_confirm.c src/prefs.c src/prefs.h src/prefs_window.c: Got rid of old prefs infrastructure :) Also added prefs functions for handling double/float keys. 2006-06-25 James Liggett * src/md5.c src/md5.h src/prefs.c src/prefs.h src/prefs_window.c: Fixed the fallout from the charset fiasco: - MD5 checksums work again - Reapplied other patches trashed by the reversal - Old prefs is now just a stub (will be removed shortly) 2006-06-25 Jorg Schuler * src/repository.c src/prefs.c src/prefs.h: added temp_prefs_remove_key() src/repository.c: use temp_prefs_remove_key() to remove keys. src/file_itunesdb.c: fix assertions related to get_offline() introduced yesterday. * src/repository.c: only print debug messages about keys added/removed if LOCAL_DEBUG is defined 2006-06-24 James Liggett * src/charset.c src/prefs.c src/prefs.h: Redid charset patch. * src/charset.c src/file.c src/prefs.c src/prefs_window.c: Finish up charset fixes. * src/charset.c: Fixed a possible crash (spotted by Jorg) Also got rid of some unneeded casts. 2006-06-24 Jorg Schuler * src/prefs.[ch]: removed unused prefs_print() declaration, moved discard_prefs() declaration to prefs.c * gtkpod.glade src/display.c src/display.h src/display_itdb.h src/display_playlists.c src/file.c src/file_export.c src/file_itunesdb.c src/info.c src/misc.c src/misc.h src/prefs.c src/prefs.h: removed global offline prefs key and moved it to the individual itdbs (ExtraiTunesDBData). The offline code is still available, but currently not used (no possibility to toggle offline mode from the GUI). * src/display.c (on_check_ipod_files_activate): require that the iPod is loaded before checking files. * src/display.c (on_ipod_directories_new): use new gp_ipod_init() function to create directories. src/file_itunesdb.c (gp_write_itdb): use new gp_ipod_init() function to create directories. src/misc.h src/misc_confirm.c: Removed old ipod_directories... code. code. 2006-06-23 Jorg Schuler * src/display.c src/misc_confirm.c src/misc_playlist.c src/misc_track.c: use message_sb_...() instead of indivudual strings. * src/file_export.c src/file_itunesdb.c src/info.c src/info.h src/misc_playlist.c src/prefs.c src/prefs.h src/tools.c: removed 'statusbar_timeout' prefs key and introduced 'gtkpod_statusbar_timeout()' call instead (the value doesn't have to be saved). Statusbar messages are now displayed again. * src/display.c src/display_itdb.c (gp_get_ipod_itdb): changed default behavior in case more than one iPod itdb is present. * src/context_menus.c src/display.c src/display_itdb.c src/display_itdb.h src/display_playlists.c src/display_songs.c src/fileselection.c src/misc_playlist.c src/prefs_window.c: changed default behavior of gp_get_active_itdb() to return NULL when no itdb is selected and renamed to gp_get_selected_itdb(). Print message when no itdb is selected when one is needed. * src/info.c src/info.h: added standard error messages, used in the conversion above. void message_sb_no_itdb_selected (void); void message_sb_no_tracks_selected (void); void message_sb_no_playlist_selected (void); void message_sb_no_ipod_itdb_selected (void); * src/display.c (display_adjust_menus): don't completely disable edit menu when no itdb is present. 2006-06-22 Jorg Schuler * src/context_menus.c: moved context menus over to new system. * src/charset.c src/prefs.h src/prefs.c src/prefs_window.c: Reversed patch from 6/20 -- will be redone. 2006-06-20 James Liggett * src/charset.c src/prefs.h src/prefs.c src/prefs_window.c: Moved charset to new prefs. * src/display_songs.c src/display_sorttabs.c src/misc.h src/misc.c: Renamed disable_sorting to sorting_disabled to avoid confusion. 2006-06-19 James Liggett * src/display_playlists.c src/display_sorttabs.c src/misc.c src/misc_track.c src/prefs.h src/prefs.c src/prefs_window.c: Moved block_display to new prefs. * src/display.c src/prefs.h src/prefs.c src/prefs_window.c: Moved display_toolbar and toolbar_style to new prefs. * src/misc.h src/misc.c src/prefs.h src/prefs.c: Renamed prefs_get_disable_sorting to disable_sorting and moved to misc.c/h. * src/prefs.h src/prefs.c src/prefs_window.c: Moved display_tooltips_prefs to new prefs. * src/display.c src/display_sorttabs.c src/prefs.h src/prefs.c src/prefs_window.c: Moved display_tooltips_main to new prefs. * src/display_sorttabs.c: src/prefs.c src/prefs.h src/prefs_window.c: Moved group compilations to new prefs. 2006-06-16 Jorg Schuler * src/context_menus.c: started rewrite of context menu setup. Cleaned up the playlist context menu. 2006-06-15 James Liggett * src/prefs_window.c: Fixed some sorting window bugs: - Pressing cancel shouldn't commit changes - Sorting now works again. 2006-06-15 Jorg Schuler * src/prefs.c src/prefs.h: src/misc.h: moved LIST_END_MARKER to prefs.c (private), moved SORT_... enum to display.h 2006-06-14 James Liggett * src/misc.c src/prefs.h src/prefs.c src/prefs_window.c: sort_ign_string_ list now fully uses new prefs interfaces * src/prefs.h src/prefs.c src/prefs_window.c: Moved sort_ign_fields_ to new prefs. Also got rid of sortcfg. 2006-06-14 Jorg Schuler * src/mp4file.c: mp4_read_soundcheck not defined when mp4v2 library was not present. * Changelog_detailled: formatting (9 space -> 8 spaces) * src/prefs.h src/syncdir.h src/syndir.c src/repositories.c: moved PLAYLIST_AUTOSYNC enum to syncdir.h and renamed. * src/context_menu.c: very first phase of rearrangement. 2006-06-13 James Liggett * src/display_songs.c src/prefs.h src/prefs.c src/prefs_window.c: Moved tm_sortcol and tm_sort to new prefs. 2006-06-13 Jorg Schuler * src/prefs_window.c (on_path_button_pressed): corrected error when "Browse" button was pressed (current path sometimes was not passed to fileselector) * src/fileselection.c: avoid run-time warning. * src/prefs.h src/prefs.c src/prefs_windows: Made PathType enum redundant outside prefs.c (needed only for key conversion). 2006-06-12 James Liggett * src/display_playlists.c src/prefs.h src/prefs.c src/prefs_window.c: Moved pm_sort to new prefs. * src/context_menus.c src/display_sorttabs.c src/prefs.h src/prefs.c src/prefs_window.c: Moved st_sort to new prefs. * src/display_songs.c src/misc_playlist.c src/prefs.h src/prefs.c src/prefs_window.c: Moved tm_autostore to new prefs. * src/file.c src/prefs.h src/prefs.c src/prefs_window.c: Moved write_charset to new prefs. * src/file.c src/prefs.h src/prefs.c src/prefs_window.c: Moved update_charset to new prefs. * src/misc.c src/prefs.h src/prefs.c src/prefs_window.c: Moved case_sensitive to new prefs. * src/misc_playlist.c src/prefs.h src/prefs.c src/prefs_window.c: Moved misc_track_nr to new prefs. * src/misc_playlist.c src/prefs.h src/prefs.c src/prefs_window.c: Moved not_played_track to new prefs. 2006-06-11 James Liggett * src/prefs.h src/prefs_window.c: Fixed paths not showing up/being set in prefs window. * src/display_songs.c src/prefs.h src/prefs.c src/prefs_window.c: Moved multi_edit to new prefs. * src/display_songs.c src/prefs.h src/prefs.c src/prefs_window.c: Moved multi_edit_title to new prefs. * src/prefs.h src/prefs.c src/prefs_window.c: Moved tmp_disable_sort to new prefs. * src/prefs.h src/prefs.c src/prefs_window.c: Moved last_prefs_page to new prefs. * src/display.c src/info.c src/prefs.h src/prefs.c: Moved info_window to new prefs. * src/fileselection.c src/misc_track.c src/prefs.h src/prefs.c src/prefs_window.c: Moved add_recursively to new prefs. * src/prefs.h src/prefs.c src/prefs_window.c: Moved startup_messages to new prefs. * src/main.c src/misc_confirm.c src/prefs.h src/prefs.c src/prefs_window.c: Moved automount to new prefs. * src/file.c src/prefs.h src/prefs.c src/prefs_window.c: Moved mserv_use and mserv_username to new prefs. * src/file.c src/prefs.h src/prefs.c src/prefs_window.c: Moved coverart and coverart_template to new prefs. 2006-06-11 Jorg Schuler * src/prefs.h: removed unused declarations. * src/file.c: fixed two memory leaks. * src/misc_playlist.c: fixed memory leak. * src/file.c: Got rid of get_file_name_verified(), get_file_name_on_ipod)( as they can be emulated by get_file_name_from_source(). Got rid of get_file_name() and get_file_name_on_harddisk (substituted where used) used). * src/mp3file.c: removed mp3gain code * src/tools.c: added mp3gain and aacgain code. * src/prefs_windows.c: added aacgain path in the Tools section, improved layout. 2006-06-10 Jorg Schuler * src/mp4file.c: read aacgain if present. * src/display_itdb.h src/file.c src/file_itunesdb.c src/mp3file.c src/mp4file.c src/tools.c Got rid of radio_gain, audiophile_gain, peak_signal_set, radio_gain_set, audiophile_gain_set. TODO: rework normalisation process -- probably do not support mp3gain any more. "Normalize" would then just re-read the gain tags. * src/mp3file.c: renamed GainData *etr; to GainData *gd; to avoid confusion (63 occurences) * src/ipod_init.[ch]...: renamed init_model_number_combo() and init_ipod() to gp_...() * src/file_itunesdb (gp_load_ipod): ask for model number of the iPod if none is available. If one is available from SysInfo file, store that information in the prefs system. * src/ipod_init.[ch]: new: gp_ipod_init_set_model() asking for a model number string and storing it. * src/ipod_init.c (gp_ipod_init_set_model): mention mountpoint when asking for the model. * src/prefs.[ch] src/prefs_window.c src/display.[ch] src/display_playlists.c Did away with pm_autostore. 2006-06-10 James Liggett * src/prefs.h src/prefs.c: Got rid of prefs_validate path. * src/file.c src/prefs.h src/prefs.c src/prefs_window.c: Moved parsetags_template to new prefs. * src/file.c src/prefs.h src/prefs.c src/prefs_window.c: Moved parsetags_overwrite to new prefs * src/file.c src/prefs.h src/prefs.c src/prefs_window.c: Moved parsetags to new prefs. * src/file_itunesdb.c src/misc.c src/prefs.h src/prefs.c src/prefs_window.c: Moved write_extended_info to new prefs. * src/main.c src/prefs.h src/prefs.c: Moved autoimport_commandline to new prefs. * src/mp3file.c src/mp4file.c src/prefs.h src/prefs.c src/prefs_window.c: Moved readtags to new prefs. * src/main.c src/prefs.h src/prefs.c src/prefs_window.c: Moved autoimport to new prefs. * src/prefs.h src/prefs.c src/prefs_window.c: Got rid of unused_gboolean3. * src/prefs.c: Miscellaneous formatting fixes. I've now switched to using emacs, so I hope this won't be a problem anymore :) 2006-06-09 Jorg Schuler * src/display_sorttabs.c (sp_update_date_interval_from_string): fix compilation warning and possible segfault. 2006-06-09 Jorg Schuler * README: some hints from a recent gtkpod-questions thread. 2006-06-08 James Liggett * src/info.c src/prefs.h src/prefs.c: Move size_info to new prefs. Also did some minor cleanup * src/prefs.h src/prefs.c src/prefs_window.c: Move size_prefs to new prefs * src/fileselection.c src/prefs.h src/prefs.c: Move size_dirbr to new prefs * src/confirmation.c src/prefs.h src/prefs.c: Move size_conf to new prefs * src/confirmation.c src/display_sorttabs.c src/prefs.h src/prefs.c: Move size_cal and size_conf_sw to new prefs * src/display.c src/prefs.h src/prefs.c: Move size_gtkpod to new prefs 2006-06-08 Jorg Schuler * src/repository.c: set_entry() -> set_entry_index() to simplify code. Display iPod model number and allow editing. TODO: - reset model number if iPod with different number is loaded - write model number to iPod if iPod without model number is loaded. * src/repository.c: use GtkComboEntry to select iPod model just like in ipod_init.c 2006-06-07 James Liggett * src/display_playlists.c src/prefs.h src/prefs.c src/prefs_window.c: Move mpl_autoselect to new prefs * src/file.c src/prefs.h src/prefs.c src/prefs_window.c: Move tag_autoset to new prefs. * src/display_sorttabs.c src/prefs.h src/prefs.c: Move paned_pos_ keys to new prefs 2006-06-06 James Liggett * src/repository.c: use ComboBoxEntry to allow the selection of the iPod model in the same way as in the ipod_init dialog. * src/display.c src/display_songs.c src/display_sorttabs.c src/info.c src/misc_confirm.c src/misc_input.c src/prefs.h src/prefs.c prefs_window.c: Move sort_tab_num to new prefs. * src/display_songs.c src/prefs.h src/prefs.c src/prefs_window.c: Move tm_col_order to new prefs. Also added a finalize_prefs function to allow prefs to do things before the file gets saved. * src/prefs_window.c: Fix columns not appearing after being set in prefs dialog * src/display_songs.c src/prefs.h src/prefs.c src/prefs_window.c: Move tm_col_visible to new prefs. 2006-06-05 Jorg Schuler * src/file.c: fixed double g_free() (thanks to Florent Bouchez). * src/ipod_init.c: pretty much finished ipod_init dialog. 2006-06-05 James Liggett * src/display_songs.c src/prefs.h src/prefs.c: Move tm_col_width to new prefs. * src/display_sorttabs.c src/prefs.h src/prefs.c: Move sp_autodisplay to new prefs. 2006-06-04 James Liggett * src/display_sorttabs.c src/prefs.h src/prefs.c: Move sp_playcount_low/high to new prefs. * src/display_sorttabs.c src/prefs.h src/prefs.c: Move sp_played_state, sp_modified_state, and sp_added_state to new prefs. * src/display_sorttabs.c src/prefs.h src/prefs.c: Move sp_rating_state to new prefs. 2006-06-03 Jorg Schuler * src/details.c: removing of artwork did not really work. * src/file_itunesdb, src/ipod_init.[ch]: started dialog to create directories when not present on 'load'. Work in progress. 2006-06-02 James Liggett * src/display_sorttabs.c src/prefs.h src/prefs.c: Move sp_*_cond to new prefs. * src/display_sorttabs.c src/prefs.h src/prefs.c: Move sp_or to new prefs. 2006-05-31 James Liggett * src/display_sorttabs.c src/prefs.h src/prefs.c src/prefs_window.c: Move st_category to new prefs. * src/prefs.c: Add list end marker when setting variable-length list default entries. * src/prefs.c src/prefs.h src/prefs_window.c src/display_sorttabs.c: Move sort tabs autoselect key to new prefs * src/prefs.c: Clean up dead path keys in cleanup_keys * src/prefs.c: Delete a duplicate check for XMMS command. For some reason, this was in cleanup_keys twice. 2006-05-30 Jorg Schuler * src/prefs.c (cleanup_keys): set "version" after cleanup is done. * src/prefs.c (save_prefs): write version string at the start of the file until the old prefs system is completely gone. 2006-05-30 Jorg Schuler * src/prefs.c (clenaup_keys): added check for version dependent transition of 'path_play_now' key. * src/prefs.c (save_prefs): update version string before writing to file. 2006-05-29 James Liggett * src/prefs.c: Clean up paths keys - Defaults for path_play_now, path_play_enqueue, and path_mserv_trackinfo_root are set in set_default_prefrences - Key cleanup done in cleanup_keys 2006-05-29 Jorg Schuler * src/details, display.h, misc_conversion.c... Support for start time, stop time, skip when shuffling and remember playback position. ****************************************************** Will require photosupport branch of libgpod to compile ****************************************************** 2006-05-28 Jorg Schuler * src/display_playlists.c (tree_view_get_cell_from_pos): take into account that bug in gtk_tree_view_get_cell_area() was fixed with GTK+2.8.18 (upon submitting bug report) * src/misc_track.c (gp_track_by_filename): fix segfault when adding tracks to iPod without iPod connected. * src/mp4file.c (mp4_get_file_info): read iTunNORM tag if present to set soundcheck (volumne normalisation) 2006-05-27 James Liggett * src/prefs.c: Removed remove_key as it's not needed. * src/prefs.c: Added new functions remove_key and cleanup_keys to allow for deleting/renaming old or changed keys * src/main.c src/prefs.c: Disable prefs reading by new prefs system; let read_prefs_from_file_desc handle it until the transition is finished so we don't read prefs twice. 2006-05-25 Jorg Schuler * po/sv.po: updated catalog from Stefan Asserhall * src/misc_track.c (track_copy_item): T_YEAR was not copied correctly. 2006-05-24 Jorg Schuler * src/prefs.[ch]: new: temp_prefs_rename_subkey() * src/misc.[ch]: new: void set_itdb_index_prefs_string(), set_itdb_index_prefs_int() * src/repository.c: it's now possible to add new repositories (hardly tested) * gtkpod.glade 2006-05-23 Todd Zullinger * src/prefs.c: Fix sort ignore list not working after prefs changes 2006-05-23 James Liggett * src/prefs.c: Reverse previous patch as it breaks lists (argh!!) * src/prefs.c: Filter out deprecated/other prefs that the new system doesn't manage, getting rid of the prefs duplication problem and negating the need to filter out unneeded prefs manually 2006-05-23 Jorg Schuler * src/repository.c: continued 'Create Repository' dialog. * src/display_playlist.c src/display.h: new functions pm_set_renderer_pix() and pm_set_renderer_text() to be able to use the same style for displayling playlist/repository names throughout gtkpod. 2006-05-22 Jorg Schuler * src/fileselection.[ch]: replaced fileselection_get_dir() with fileselection_get_file_or_dir(). * src/repository.c: started 'Create Repository' dialog. 2006-05-21 Jorg Schuler * src/file.c (update_track_from_file): fixed possible segfault. * po/POTFILES.in: corrected file list. * src/display.c src/display_itdb.c src/display_playlists.c src/display_songs.c src/file.c src/file_export.c src/file_itunesdb.c src/info.c src/info.h src/misc_confirm.c src/misc_playlist.c src/misc_track.c src/tools.c: simplified code by having gtkpod_statusbar_message() accept printf style arguments. * display_spl.c (spl_ok): mark data as changed. * context_menus.c: removed (volumne) 'Normalize'. Accessible via Tools-menu. * file_itunesdb.c (gp_write_itdb): statusbar message was incorrect (passed mpl instead of mpl->name to be printed). * removed remaining code for podcast download support * Menu entry to display repository/iPod options. * gtkpod.glade: Rearranged 'Edit' main menu * info.c: space update will use @itdb instead of 'mountpoint' to deisplay free space -> space_get_ipod_itdb(), gp_free_itdb(). 2006-05-20 Jorg Schuler * po/POTFILES.in: updated file list -> updated .po files. * src/misc.c: call_script now accepts an arbitary number of command line arguments. * src/file.c (update_track_from_file): if no local filename is available, use the copy on the iPod to update. * src/display_songs.c (tm_cell_edited): when changing the track length also update starttime, stoptime and filesize (all needed to have the iPod play the hole file). * src/context_menus.c src/display.c src/display.h src/display_itdb.c src/display_itdb.h src/display_playlists.c src/display_songs.c src/file.h src/file_itunesdb.c src/main.c src/misc.h src/misc_confirm.c src/misc_input.c src/misc_track.c gtkpod.glade: Introduction of load/eject ipod(s) and 'save changes'. ~/.gtkpod/gtkpod.load and ~/.gtkpod/gtkpod.eject are called before loading/after saving the iPod. Several iPods are supported. 2006-05-19 James Liggett * src/prefs.c: Fix a build warning in convert_filename caused by my last patches... * src/prefs.c: Reversed part of previous patch on advice from Jorg * src/misc.c src/prefs.c: * Clean up initial_mountpoint: - Set default in set_default_prefrences rather than cfg_new - Remove unneeded code in read_prefs_from_file_desc (new prefs shouldn't use this/other deprecated prefs functions) - Got rid of some superflous envionment reads (needs to only be done once in read_environment) * New prefs backend function read_environment is now enabled and used * Fixed convert_filename for use with read_envrionment - Added NULL string pointer check * src/prefs.c: Reversed part of previous patch on advice from Jorg 2006-05-18 Jorg Schuler * src/display_songs.c: simplified code for setup of columns. * src/display_playlists.c: connect/disconnect icon for iPods, identify if icon is clicked (printf a statement for the time being -- work in progress!) 2006-05-17 Jorg Schuler * scripts/sync-tomboy.sh: recommitted * configure.in: gcc < 4.0 does not know -Wno-pointer-sign * src/md5.c: hash turned out different on little and big endian machines 2006-05-16 Jorg Schuler * src/repository.c: (sync_or_update_playlist): implemented update of smart playlist. * src/file_itunesdb.c src/display_itdb.h: make sure, live playlists are updated _after_ syncing of playlists has taken place. 2006-05-15 Jorg Schuler * src/misc.[ch]: (get_playlist_prefs_int), get_playlist_prefs_string): new * src/display_itdb.c src/file_itunesdb.c: automatically sync playlists on startup (when loading database). * src/prefs_window.c: redefined the sync settings, set up easy-to extend handling for standard toggle checkboxes. * src/context_menu.c src/display.c: moved 'Sync' over to new 'Sync Playlist'. * src/file.c: removed old sync-related code. 2006-05-14 Jorg Schuler * move over gtkpod_confirmation() to using the new prefs system, along with a couple of keys (sync_remove, sync_remove_confirm, show_duplicates, show_sync_dirs, show_non_updated, show_updated, mserv_report_probs, delete_ipod, delete_file, delete_local_file, delete_database). Thanks to James Liggett! * src/file.c: copy_new_info() incorrectly handled pc_path and thumbnail_path, possibly leading to corruption of both when updating tracks. * src/repository.[ch] * src/syncdir.[ch] It's now possible to sync directories from within the repository option catalog. Next step: automatic sync at the time of loading the database. Almost there! 2006-05-13 Jorg Schuler * src/syncdir.c: * src/syncdir.h: * src/Makefile.am: Added new source files for a complete rewrite of the synchronization code. * file_itunesdb.c: * file.c: added support for modification time of the song (needed for fast syncing) 2006-05-08 Jorg Schuler * moved path[i] and concal_autosync pref keys over to the new prefs system. Work in progress: currently the scripts for syncing cannot be set (this will be done from within the repository options). 2006-05-08 Jorg Schuler * misc.[ch]: renamed get_itdb/playlist_key() to get_itdb/playlist_prefs_key() * misc.[ch]: new: get/set_itdb/playlist_prefs_string/int(). 2006-05-07 Jorg Schuler * preliminarily moved "mountpoint" to new prefs system. 2006-05-06 Jorg Schuler * src/prefs.[ch]: new: temp_prefs_create_subset(), temp_prefs_flush(), prefs_flush_subkey(), prefs_rename_subkey(), temp_prefs_subkey_exists() * src/display_itdb.[ch]: new: gp_itdb_remove(), gp_itdb_free(). * src/repository.[ch]: new -- repository prefs. Work in progress, but you probably get the idea about what is to be. * src/display_playlists.c: streamlined slightly (only one column in model, so no reason to find out which), added indicator for changed repositories (italic), added indicator for local repositories (hard disk icon). 2006-05-05 Jorg Schuler * src/*: moved 'prefs_get_last_dir_browse()' to new prefs system. * src/prefs.c: fixed bug introduced in temp_prefs_get_int(). * src/fileselection.[ch]: new: fileselection_get_dir(). * src/prefs.[ch]: new: temp_prefs_size(). 2006-05-01 Jorg Schuler * src/prefs.[ch], src/prefswindow.c: renamed some temp_prefs and temp_list function names. * src/prefs.c: use strcmp() to compare keys for temp_prefs (otherwise keys cannot be retrieved safely because g_str_hash() is not unique. * src/prefs.[ch]: added temp_prefs_get... functions as well as reformatted some code a bit (way too much whitespace?!) 2006-05-01 Jorg Schuler * src/md5.c (sha1_hash): corrected signedness warning. * src/charset.c (charset_check_k_code), (charset_check_k_code_with_default): corrected signedness warning. * src/...: removed incomplete podcast code * gtkpod.glade: removed corresponding podcast references 2006-04-28 Jorg Schuler * src/confirmation.c: pressing 'OK' several time would call the ok_handler several times, most likely resulting in a crash. Thanks to dforsi for pointing this out. Fixed by turning the dialog insensitive while before calling the handler. * src/misc.c (select_template): templates were compared case-sensitively, which could lead to non-exported files. 2006-04-27 Jorg Schuler * scripts/sync-tomboy.sh: contributed by Tejas Dinkar 2006-04-25 Jorg Schuler * applied James Liggett's preferences patches (id3-write-id3v24) * added scripts/sync-thunderbird-nano.sh (writes one file per address to work around a bug in old firmware versions, but may be useful for other users as well). Thanks to Paul Oremland 2006-04-24 Jorg Schuler * applied James Liggett's preferences patches (id3-write, sort-prefs) * applied Peter Lieverdink' patch to allow import of h.264 video via the mp4file.c interface. * mp3file.c (id3_set_string): fixed memory leak (thanks to Scott Guthridge) 2006-04-19 Jorg Schuler * applied James Liggett's preferences patches. 2006-04-05 Jorg Schuler * applied James Liggett's preferences patch (transition in progress). * details.c, file.c: copy 'has_artwork' flag when copying artwork info from one track to another. 2006-04-03 Jorg Schuler * file_itunesdb.c (gp_import_itdb): correct has_artwork flag (formerly flag1) for each track if unset or potentially set incorrectly. * bumped version to 0.99.6CVS 2006-03-31 Jorg Schuler * added hint about using iPod with Solaris/SPARC to TROUBLESHOOTING file. Thanks to Eric Enright. * added Spanish translation catalog es.po. Thanks to Alejandro Lamas. 2006-03-29 Jorg Schuler * info.c, misc_confirm.c: fixed typo: HAVE_statvfs -> HAVE_STATVFS * misc_confirm.c (delete_playlist_ok): use of playlist->name after removing the playlist could/should crash gtkpod. Fixed. 2006-03-18 Jorg Schuler * file.c (copy_new_info): copy artwork related -- should solve issue of updated artwork not displaying on iPod 2006-03-17 Jorg Schuler * Preliminary support for mobile phones supporting iTunes (requires the following directory structure to be present: /iTunes /iTunes/iTunes_Control /iTunes/iTunes_Control/iTunes /iTunes/iTunes_Control/Music /iTunes/iTunes_Control/Music/F00 /iTunes/iTunes_Control/Music/F01 /iTunes/iTunes_Control/Music/F02) * cosmetic changes to compile with the newest CVS version of libgpod. * use of itdb_get_..._dir() functions to get directory names on the iPod. 2006-03-12 Jorg Schuler * md5.c (md5_hash_track): prefer filename on disk over filename on iPod -> changed files are copied to iPod when updating. This was an old bug. * file.c (copy_new_info), (get_track_info_from_file); mp3file.c: support new 'lyrics_flag' and 'movie_flag'. * configure.in: require libgpod 0.3.3 (CVS version) * po/ja.po: updated catalog (thanks to Kentaro Fukuchi) 2006-03-08 Jorg Schuler * prefs.c (prefs_get_cfgdir): fix bug that crashes application when cfgdir cannot be created. 2006-03-08 Jorg Schuler * scripts/sync-evocalendar.sh: handle multiple calendar and task files. Thanks to Michele C. Soccio 2006-03-06 Jorg Schuler * bumped to V0.99.5CVS for further development 2006-03-05 Jorg Schuler * bumped to V0.99.4 for release * fileselection.c: did not properly clean up after closing the dirbrowser window with the window-close button. 2006-03-04 Jorg Schuler * file_export.c (export_playlist_file_init): missing ini