2009-03-28 Mike Massonnet === Release 0.1.0 === 2009-03-26 Mike Massonnet Fiddle with the MPD settings * src/preferences-dialog.c(xfmpc_preferences_dialog_init): - Box the mpd_vbox inside an alignment to add padding around it 2009-03-26 Mike Massonnet Fiddle with the statusbar * src/main-window.c(action_statusbar): - No space around the statusbar * src/main-window.c(xfmpc_main_window_update_statusbar): - Verify if there is an existing connection 2009-03-25 Mike Massonnet Polish the application name and the song info * configure.in.in: - Capitalize package name * src/main-window.c(xfmpc_main_window_init): - Replace the title "Xfmpc" against PACKAGE_NAME * src/song-dialog.c: - Automatically hide empty values - Label informations are selectable * autogen.sh: - Enable debug to full by default 2009-03-25 Mike Massonnet Include GLib in XfmpcMpdclient for Vala GObject Introspection * src/mpdclient.h: - vala-gen-introspect failed because of the missing include 2009-03-21 Vincent Legout Display the position rather than the id of the track in the playlist * src/playlist.[ch]: - Display the position and not the id of the track * src/mpdclient.[ch](xfmpc_mpdclient_playlist_read): - Return the position of the song in the playlist 2009-03-14 Vincent Legout Don't set a size for the labels in the song dialog * src/song-dialog.c: - Don't set a maximum size for the labels and increase the padding (bug #5098) 2009-03-14 Mike Massonnet Move progress bar callback out of header inside C source * src/interface.c, src/interface.h: - Remove xfmpc_interface_progress_box_press_event and place it inside the C source only under cb_progress_box_release_event - Set it a release event instead of press, it behaves better on mouse releases so you can also cancel it by moving the pointer outside the widget 2009-03-14 Mike Massonnet Better fix for previous commit * src/mpdclient.c(xfmpc_interface_init): - Better fix than the previous commit 2009-03-14 Mike Massonnet Title not refreshed at first run * src/mpdclient.c(xfmpc_interface_init): - Set refresh_title to TRUE (bug #4975) 2009-03-14 Mike Massonnet Add position of the track in the playlist * src/playlist.c: - Display the position of track in the playlist on the left 2009-03-14 Mike Massonnet Add about dialog in the context menu * src/extended-interface.c: - (xfmpc_extended_interface_context_menu_new): New menu item about from stock item, replace preferences item against the preferences stock item - (cb_about): New callback attached to the about item * po/*.*: - make update-po (yet again) 2009-03-14 Mike Massonnet Support i18n in the song info dialog * src/song-dialog.c: - Gettext support for translations * po/*.*: - make update-po 2009-03-13 Vincent Legout New dialog which displays information about a song * src/song-dialog.c, src/song-dialog.h: - New widget XfmpcSongDialog * src/mpdclient.c, src/mpdclient.h: - New structure XfmpcSongInfo and new function xfmpc_song_info_free to free this structure - New function xfmpc_mpdclient_get_song_info to retrieve information on a song * src/playlist.c: - New button to display the new XfmpcSongDialog and it's callback function cb_info_selection 2009-03-04 Mike Massonnet Rework "API" in XfmpcExtendedInterface * src/extended-interface.[ch]: - Rename xfmpc_preferences_dialog_show to cb_preferences - Moved and simplified xfmpc_extended_interface_update_notebook to xfmpc_extended_interface_set_active - Declare an enum XfmpcExtendedInterfaceWidget to represent the playlist and the dbbrowser useful for the new set_active function * src/playlist.c(cb_browse_selection): - Use new function xfmpc_extended_interface_set_active * src/dbbrowser.c(popup_menu): - Always display the "Browse" menu item on a search, and update the sensitivity * src/dbbrowser.c(cb_browse): - Fix leak -- forgot to free the GtkTreePath and GList 2009-03-04 Mike Massonnet Fix in custom format * src/preferences.[ch]: - Put "Album - Title" at the second line * src/mpdclient.c(_get_formatted_name_custom): - Fix a crash when a tag didn't exist -- tmp was not set and it broke when it came to free() and reset formatted_name and in fact an unexistent tag is nil hence it is useless to check if it exists and pass it as is in g_strconcat 2009-03-03 Vincent Legout New menu item Browse in the playlist * src/playlist.c: - New menu item Browse to go to the database and open the directory of the song - New callback cb_browse_selection which update the database to the song directory and switch the notebook to the database * src/extended-interface.c, src/extended-interface.h: - Associate the playlist with the extended interface and the database - New function xfmpc_extended_interface_update_notebook to switch from one page to another 2009-03-03 Vincent Legout New options to choose the song format * src/preferences.c, src/preferences.h: - Update copyright date - New XfmpcSongFormat type - Add song-format property - Add song-format-custom property * src/preferences-dialog.c: - Update the dialog with a new combobox and a new entry to choose the song format - Add a timeout on entry changes to update the custom song format * src/mpdclient.c: - Update copyright information - Update _get_formatted_name to use the new XfmpcSongFormat - New functions _get_formatted_name_predefined and _get_formatted_name_custom used by _get_formatted_name * src/dbbrowser.c: - Update the dbbrowser if the song format has changed * src/playlist.c: - Update the playlist if the song format has changed * src/main.c: - New function transform_string_to_enum 2009-03-01 Vincent Legout New XfmpcMainWindow widget * src/main-window.c, src/main-window.h: - New files * src/main.c: - move window from main.c to XfmpcMainWindow * src/extended-interface.c: - move statusbar from XfmpcExtendedInterface to XfmpcMainWindow 2009-02-25 Mike Massonnet Fix apply button in preferences dialog * src/preferences-dialog.c(xfmpc_preferences_dialog_init): - Put the apply button in vbox2 so it remains clickable 2009-02-24 Mike Massonnet Update IDEAS and bump to 0.1.0 * configure.in.in: - Bump next release version from 0.8.0 to 0.1.0 * IDEAS: - Two little options for the preferences dialog 2009-02-24 Mike Massonnet Preferences dialog and enhancements by Vincent Legout * src/preferences.c: - New option ShowStatusbar * src/preferences-dialog., src/preferences-dialog.h: - New preferences dialog * src/extended-interface.c, src/main.c: - Move statusbar fom main.c to XfmpcExtendedInterface - Use a GtkActionGroup to update the visibility of the status bar WRT the corresponding option in XfmpcPreferences - Update the statusbar text WRT to playlist changes - Remove code for the mpd settings, use the new XfmpcPreferencesDialog * src/statusbar.c: - Don't get a pointer on the mpdclient object and don't update the statusbar from within the object * src/mpdclient.c(xfmpc_mpdclient_playlist_has_filename), src/mpdclient.h: - New argument gboolean is_dir to make a one level recursive verification inside the directory to know if a song from the directory is in the playlist * src/dbbrowser.c: - Use updated function xfmpc_mpdclient_playlist_has_filename thus setting the listed directories in bold if they contain songs in the playlist 2009-02-16 Mike Massonnet Fix song changes * src/mpdclient.c(cb_status_changed): - The condition fixed in the previous commit was incorrect 2009-02-16 Mike Massonnet Features for the database browser and a statusbar contributed by Vincent Legout * src/mpdclient.c, src/mpdclient.h: - New functions xfmpc_mpdclient_playlist_get_length() and get_total_time() - New function xfmpc_mpdclient_playlist_has_filename() to know if a filename is already in the playlist - (xfmpc_mpdclient_playlist_read): Takes a new argument **filename that will be useful to browse the database from the playlist - (cb_status_changed): The signal "song-changed" must not be emitted when the playlist changed * src/playlist.c, src/playlist.h: - Use new function playlist_read from mpdclient - (xfmpc_playlist_append): New argument filename * src/dbbrowser.c, src/dbbrowser.h: - New menu item Browse that is only displayed on a search and on a single row selection to open the directory of the filename - The rows are displayed in bold if they exist in the playlist - (xfmpc_dbbrowser_append): New argument is_bold - (cb_playlist_changed): New callback to refresh the rows in bold on playlist changes - (xfmpc_dbbrowser_add_selected_rows): Fix leak, list ended being NULL thus it didn't freed anything - (xfmpc_dbbrowser_reload): Fix a bug with i not being kept at -1 when last_wdir is found in the current directory * src/statusbar.c, src/statusbar.h, src/main.c: - New statusbar displayed in the main interface 2009-02-05 Mike Massonnet Small leak * src/extended-interface.c, src/extended-interface.h: - Move xfmpc_extended_interface_context_menu_new() to the C source and made it a static function - (xfmpc_server_dialog_show): Free the strings host and passwd - (popup_context_menu): Don't destroy the menu to recreate it as it doesn't make sense because it doesn't have any dynamic items * IDEAS: - A very small update 2009-02-03 Mike Massonnet Rename Server Settings to MPD Settings and run make update-po * src/extended-interface.c: - Rename Server Settings to MPD Settings * po/*.po, po/*.pot: - Run make update-po 2009-02-03 Mike Massonnet General cleanup * configure.in.in: - Move from AC_PROG_CC to AM_PROG_CC_C_O as suggested by the autotools output to support multiple program rules - Add call to AC_PROG_LIBTOOL as required by recent versions of libtool * Makefile.am: - Add distclean rule * po/POTFILES.*: - Clean up * src/*.c, src/*.h: - Store private pointer in class structure to avoid repeatitive and boring calls via the GET_PRIVATE macro - Copyright headers - Merge the action entries - Replace calls of g_signal_emit_by_name() against g_signal_emit() * src/extended-interface.c: - Drop the repeat and random pointers out from the private data structure 2009-02-03 Mike Massonnet Fix weird condition in XfmpcMpdclient * src/mpdclient.c(cb_xfmpc_mpdclient_status_changed): - The signal "song-changed" must not be emitted when the database has been updated 2009-02-03 Mike Massonnet Add a graphical settings dialog for the MPD host contributed by Vincent Legout * src/preferences.c(xfmpc_preferences_class_init): - Install new class properties for the MPD host * src/mpdclient.c: - Use the XfmpcPreferences interface to fetch the host or the environment variables when mpd-use-defaults is true - Use the environment variables when - Check the host before connecting for real * src/extended-interface.c: - Implement a dialog to set the MPD host * src/interface.c(xfmpc_interface_init): - Connect to "connected" signal to refresh the interface when connecting manually to a new MPD host. * src/main.c: - Set a default window size to 330x330. * autogen.sh: - Fix the revision number from svn, enable debug, and delete configure.in 2008-08-26 Mike Massonnet Add Replace to the right click menu in the database browser * src/mpdclient.c(xfmpc_mpdclient_queue_clear): - New function that removes all the songs from the playlist without commiting to MPD * src/mpdclient.c(xfmpc_mpdclient_playlist_read): - Possibility to pass NULL to song and length * src/dbbrowser.c(xfmpc_dbbrowser_replace_with_selected_rows): - New function to replace the playlist with the selected rows * src/dbbrowser.c(xfmpc_dbbrowser_init): - Add Replace item in the right click menu 2008-08-25 Mike Massonnet === Release 0.0.7 === 2008-08-25 Mike Massonnet Add a right click menu in the Playlist to remove the selected song(s) * src/playlist.c: - 3 new functions: cb_button_pressed (catches right click), cb_popup_menu (catches the menu key from the keyboard), and popup_menu to popup the gtk menu - (xfmpc_playlist_init): Build a menu with a first item "Remove" 2008-08-25 Mike Massonnet Add a right click menu in the Database Browser to add the selected song(s) * src/dbbrowser.c: - 3 new functions: cb_button_pressed (catches right click), cb_popup_menu (catches the menu key from the keyboard), and popup_menu to popup the gtk menu - (xfmpc_dbbrowser_init): Build a menu with a first item "Add" 2008-08-24 Mike Massonnet Make the context button behave as the combo box * src/extended-interface.c: - Rework how the context button behaves against mouse clicks and keyboard presses, so that it mimics the combo box 2008-08-24 Mike Massonnet Add funky colors on a failed search in the database * configure.in.in: - Add configure flag --enable-funky-colors * src/dbbrowser.c: - Highlight the search entry if the query failed - Highlight also the background if build with --enable-funky-colors 2008-06-01 Mike Massonnet Misc fixes * autogen.sh: - s,remotes/trunk,git-svn, to fetch the svn revision with git-svn * src/extended-interface.c: - Forgot to include xfce-arrow-button.h * src/extended-interface.c(position_context_menu): - Remove ythickness from *y (need to find the good way) - Check if the menu pops out over the top of screen 2008-06-01 Mike Massonnet Make search feature work with timeout * src/dbbrowser.c(cb_search_entry_changed): - Initiate a timeout on entry changes to automatically process a search 2008-06-01 Mike Massonnet Add search functions inside XfmpcMpdclient and extend XfmpcDbbrowser * src/mpdclient.c: - Return the name of the song with new private function _get_formatted_name (remove duplicates of code) - New function xfmpc_mpdclient_database_search * src/dbbrowser.c: - New private boolean is_searching to lock the tree view from updating - New function xfmpc_dbbrowser_search, makes use of xfmpc_mdclient_search and populates the tree view 2008-06-01 Mike Massonnet Add search entry * src/dbbrowser.c(xfmpc_dbbrowser_init): - Add a gtk entry and connect it to new callbacks for signals "activate", "key-release-event", and "changed" * src/dbbrowser.c(xfmpc_dbbrowser_reload): - Check if the client is connected before going further in the reload process 2008-05-11 Mike Massonnet Replace the context button image against an arrow * src/Makefile.am, src/xfce-arrow-button.c, src/xfce-arrow-button.h: - Import XfceArrowButton from xfce4-panel with quick modifications * src/extended-interface.c(xfmpc_extended_interface_init): - Replace gtk_toggle_button_new against xfce_arrow_button_new 2008-04-20 Mike Massonnet === Release 0.0.6 === 2008-04-20 Mike Massonnet Fix database refresh * src/mpdclient.c(xfmpc_mpdclient_database_refresh): - Pass "/" to the refresh function 2008-04-20 Mike Massonnet Fix database refresh * src/mpdclient.c(xfmpc_mpdclient_database_refresh): - Pass "/" to the refresh function 2008-04-20 Mike Massonnet Detach the context menu in a cleaner way * src/extended-interface.c(xfmpc_extended_interface_dispose), src/extended-interface.c(xfmpc_extended_interface_finalize): - Detach the menu (destroys also its childrens) - Don't destroy the menu on finalize (it prints bad stuff on stderr) 2008-04-20 Mike Massonnet Reload XfmpcDbbrowser on database changes * src/mpdclient.c: - New signal "database-changed" * src/dbbrowser.c(xfmpc_dbbrowser_init): - Connect signal "database-changed" 2008-04-19 Mike Massonnet Make Random and Repeat check menu items work * src/mpdclient.c, src/mpdclient.h: - Add new signals "repeat" and "random" on changes * src/extended-interface.c, src/extended-interface.h: - Add two callbacks on check menu items "activate" 2008-04-06 Mike Massonnet Add context button with an experimental menu * src/extended-interface.c(xfmpc_extended_interface_init): - Rework the box spacing for the inner children - Add a GtkToggleButton with a callback cb_context_menu * src/extended-interface.c: - New callbacks cb_combobox_changed, cb_context_menu, cb_context_menu_detach - New position function position_menu 2008-04-05 Mike Massonnet Distribute the IDEAS file with the tarballs * Makefile.am: - Forget to add the new IDEAS file to be distributed 2008-04-05 Mike Massonnet === Release 0.0.5 === 2008-04-05 Mike Massonnet Fix src/Makefile.am to compile the -ui.xml files * src/Makefile.am: - Rules to compile -ui.xml as maintainer mode - Distribute the .xml files 2008-04-05 Mike Massonnet Rename xfmpc_mpdclient_new to xfmpc_mpdclient_get * src/mpdclient.c, src/mpdclient.h: - Rename xfmpc_mpdclient_new to _get as it actually doesn't return new objects, but increments the ref count * src/dbbrowser.c, src/extended-interface.c, src/interface.c, src/playlist.c: - Update files to use new name function 2008-04-05 Mike Massonnet Code moving, throw GtkWindow inside main.c and keep XfmpcInterface simpler * src/main.c, src/interface.c: - Move accelerators to main.c - Move GtkWindow creation to main.c * src/main.c(main): - Call gtk_widget_show_all just after a new XfmpcInterface, and later again for the rest of the ui - Add a GtkHSeparator between XfmpcInterface and XfmpcExtendedInterface 2008-03-30 Mike Massonnet Forget to unref XfmpcMpdclient on XfmpcExtendedInterface finalize * src/extended-interface.c(xfmpc_extended_interface_finalize): - Unref XfmpcMpdclient 2008-03-30 Mike Massonnet Fix GTK-Criticals on empty playlist * src/playlist.c(xfmpc_playlist_refresh_current_song): - Check validity of GtkIter before setting the GtkListStore 2008-03-30 Mike Massonnet Add "Clear Playlist" and "Refresh Database" buttons beneath the combo box * src/interface.c(xfmpc_interface_init): - Add a GtkHSeparator between XfmpcInterface and XfmpcExtendedInterface * src/mpdclient.c, src/mpdclient.h: - Two new functions _playlist_clear and _database_refresh * src/extended-interface.c: - Add two GtkButton to clear to clear the playlist and refresh the database 2008-03-30 Mike Massonnet Add IDEAS file 2008-03-28 Mike Massonnet === Release 0.0.4 === 2008-03-28 Mike Massonnet Add multiple selection to the XfmpcDbbrowser tree view, and go to parent directory with backspace * src/dbbrowser.c(xfmpc_dbbrowser_init): - Enable rubber banding * src/dbbrowser.c, src/dbbrowser.h: - Add new callback cb_key_pressed to add the selected rows on key Return - New function xfmpc_dbbrowser_add_selected_rows * src/dbbrowser.c(cb_key_pressed): - Go to parent directory when key GDK_BackSpace is pressed 2008-03-27 Mike Massonnet Fix bug in playlist when there is no current song * src/mpdclient.c(xfmpc_mpdclient_get_pos): - Return 0 if pos is < 0 2008-03-26 Mike Massonnet Select the row when going to the parent directory * src/dbbrowser.c: - New property last_wdir to select the right row in the treeview 2008-03-21 Mike Massonnet Add a database browser * src/dbbrowser.c, src/dbbrowser.h, src/Makefile.am: - Import initial source files, and add them to Makefile.am - Current features: browsing, activate row to open a directory or add a song * src/extended-interface.c: - Remove the "Hello World" widgets from the extended interface and add the new XfmpcDbbrowser * src/mpdclient.c, src/mpdclient.h: - New functions _queue_add to add songs to the playlist - New functions _database_read that returns all the files from a directory * src/preferences.c: - New preference for XfmpcDbbrowser to remember the last working directory 2008-03-02 Mike Massonnet Fiddle the behavior of key presses on the filter entry. * src/playlist.c(cb_filter_entry_activated): - Focus the treeview on activate * src/playlist.c(cb_filter_entry_key_released): - Focus the treeview on escape - Select the current song if the filter is empty 2008-02-25 Mike Massonnet Correct COPYING licence * COPYING: - I dunno where I copied COPYING but it sure isn't the right file, here an updated file with the GNU GPL 2 licence 2008-02-25 Mike Massonnet Fix Ctrl+Q to save the window state * src/interface.c: - Add a new action function for Ctrl+Q that calls xfmpc_interface_closed 2008-02-25 Mike Massonnet Add a new public function to refresh the current song in the playlist (with bold) * src/playlist.c, src/playlist.h: - New public function xfmpc_playlist_refresh_current_song - Drop code from cb_song_changed and cb_playlist_changed - Remove the argument gboolean is_current from xfmpc_playlist_append 2008-02-24 Mike Massonnet Add a new callback in XfmpcPlaylist on song changes where the entire playlist doesn't need to be refreshed * src/mpdclient.c, src/mpdclient.h: - New public function xfmpc_mpdclient_get_pos to return the position of the song in the playlist * src/playlist.c: - (cb_song_changed): New callback connected to the signal "song-changed" of XfmpcMpdclient - (cb_playlist_changed): Update callback with xfmpc_mpdclient_get_pos 2008-02-24 Mike Massonnet Fix misc bugs (volume adjustement and fraction of progress bar) [Peter de Ridder] * src/interface.c(xfmpc_interface_init): - Set adjustement from 0 to 100 * src/interface.c(xfmpc_interface_volume_changed), src/interface.c(xfmpc_interface_set_volume): - Remove the /100 and *100 [Mike Massonnet] * src/interface.c(xfmpc_interface_set_time): - Don't pass a fraction >1.0 2008-02-23 Mike Massonnet Fix version to 0.0.3 in NEWS file 2008-02-23 Mike Massonnet * === Release 0.0.3 === 2008-02-23 Mike Massonnet Activate item within filter entry with enter * src/playlist.c: - Add a private data "current" to represent the current id in the treeview - Add gtk entry signal "activate" on filter entry to start the selected song - Add gtk entry signal "changed" to filter the model * src/mpdclient.c(xfmpc_playlist_select_row): - Verify that the model isn't empty * src/playlist.c(cb_filter_entry_key_released): - Move refilter call outside in new callback cb_filter_entry_changed - Re-select current song on Escape key event 2008-02-20 Mike Massonnet New entry to filter the treeview * src/playlist.c(xfmpc_playlist_init): - Add a GtkTreeModelFilter between the model and the treeview - Add a GtkEntry * src/playlist.c(cb_filter_entry_key_released), src/playlist.c(visible_func_filter_tree): - New functions - (cb_filter_entry_key_released): Callback for the new GtkEntry on changes - (visible_func_filter_tree): Visible function for the filter * src/playlist.c(cb_playlist_changed): - Check if the new GtkEntry is empty to enable the autocenter * src/playlist.c(cb_row_activated): - Activate items from the new filter model 2008-02-18 Mike Massonnet Add key event to remove songs in the playlist (GDK_Delete) * src/mpdclient.c, src/mpdclient.h: - New functions xfmpc_mpdclient_queue_commit and xfmpc_mpdclient_queue_remove_id * src/playlist.c(xfmpc_playlist_init): - Connect signal key-release-event to new callback cb_key_released * src/playlist.c(xfmpc_playlist_delete_selection), src/playlist.h: - New function to delete all selected songs in the playlist 2008-02-17 Mike Massonnet New public function xfmpc_playlist_select_row * src/playlist.c, src/playlist.h: - Replace COLUMN_IS_CURRENT with COLUMN_WEIGHT - Move code from cb_playlist_changed to new function xfmpc_playlist_select_row 2008-02-15 Mike Massonnet Remember window size * preferences.c: - New user preferences LastWindowWidth and LastWindowHeight * interface.c(xfmpc_interface_init): - Restore last window size * interface.c(xfmpc_interface_state_event): - Save window size 2008-02-15 Mike Massonnet Add autocenter in playlist (optional) * preferences.c: - New user preference PlaylistAutocenter * playlist.c: - Include preferences interface - (cb_playlist_changed) If preference autocenter is set, scroll to the current song + select it 2008-02-12 Mike Massonnet Use row-activated signal to change the song in the playlist * src/mpdclient.c, src/mpdclient.h: - New function xfmpc_mpdclient_set_id to set the current song * src/playlist.c: - Connect signal row-activated to new callback cb_row_activated 2008-02-12 Mike Massonnet Display the current song in bold in the playlist * src/mpdclient.c, src/mpdclient.h: - New function xfmpc_mpdclient_get_id that returns the current id * src/playlist.c(xfmpc_playlist_init): - Allow multiple selection in the treeview - Add new column (IS_CURRENT) and bind it to the attribute weight of both song and length cell renderers - Connect to signal song-changed in addition to playlist-changed * src/playlist.c(xfmpc_playlist_append), src/playlist.h: - New argument gboolean is_current to use within gtk_list_store_set * src/playlist.c(cb_playlist_changed): - Get the id of the current song - Return a gboolean result to xfmpc_playlist_append 2008-02-08 Mike Massonnet * src/mpdclient.c, src/mpdclient.h: - New signal playlist-changed - New function xfmpc_mpdclient_playlist_read, which returns every entry in the current playlist once at a time, should be used inside a loop * src/playlist.c: - Insert a column "position of the song" in the tree model - Connect to signal playlist-changed to update the tree view - xfmpc_playlist_init(): Ellipsize + expand "artist - title" 2008-02-07 Mike Massonnet * src/mpdclient.c(cb_xfmpc_mpdclient_status_changed): - Move signal song-changed above stopped 2008-02-07 Mike Massonnet * src/mpdclient.c, src/mpdclient.h: - Replace code with StatusField against signals * src/interface.c: - Connect to XfmpcClient signals 2008-02-06 Mike Massonnet * xfmpc.desktop.in: Fix desktop entry file (missing semi-colon) 2008-02-06 Mike Massonnet * src/Makefile.am: - Add compilation for playlist.{c,h} * src/extended-interface.c: - Include libxfce4util for the gettext function _() - (xfmpc_extended_interface_init): Insert an XfmpcPlaylist in the notebook * src/interface.c: - Fix segfault, forget to use the correct priv pointer * src/playlist.c, src/playlist.h: - New XfmpcPlaylist widget (has no interaction with mpd for the moment) 2008-02-01 Mike Massonnet * src/extended-interface.c, src/extended-interface.h, src/interface.c, src/interface.h, src/mpdclient.c, src/mpdclient.h: - Create the private data structure with g_type_class_add_private instead of allocating the private structure with g_slice_new 2008-02-01 Mike Massonnet * src/Makefile.am: - Add compilation for new files * src/extended-interface.c, src/extended-interface.h: - New files * src/interface.c: - Add a new XfmpcExtendedInterface 2008-01-31 Mike Massonnet * xfmpc.desktop.in: - Clean up the desktop entry file 2008-01-30 Mike Massonnet * src/main.c: - Fix warnings for missing includes 2008-01-30 Mike Massonnet * autogen.sh: - Use remotes/trunk instead of HEAD for the git-svn find-rev command 2008-01-28 Mike Massonnet * src/interface.c(xfmpc_interface_set_time): - Use modulo operator to calculate the seconds 2008-01-27 Mike Massonnet * src/src/preferences.c: - Add LastWindowStateSticky preference * src/interface.c(xfmpc_interface_init): - Connect signal "window-state-event" to xfmpc_interface_state_event - Restore the preference LastWindowStateSticky * src/interface.c(xfmpc_interface_state_event): - Save the changes of the sticky window state * src/main.c: - Register transform function from G_TYPE_STRING to G_TYPE_BOOLEAN 2008-01-27 Mike Massonnet * Makefile.am, xfmpc.desktop.in: - Add desktop file entry 2008-01-27 Mike Massonnet * === Release 0.0.2 === * NEWS, src/Makefile.am: - Random fixes 2008-01-26 Mike Massonnet * src/mpdclient.c, src/mpdclient.h, src/interface.c, src/interface.h: - XfmpcMpdclient is GObjectified - Each new instance increments the ref count 2008-01-26 Mike Massonnet * src/mpdclient.c, src/mpdclient.h: - Remove all the useless reconnections - Add status functions xfmpc_mpdclient_update_status, cb_xfmpc_mpdclient_status_changed, and xfmpc_mpdclient_update_status to: update the current status of mpd, a callback to mark the different status bits, and a function that returns a boolean to know if a bit was changed and reset it to 0 as it were read * src/mpdclient.c(xfmpc_mpdclient_connect): - Send password * src/interface.c: - Remove _refresh_volume and the delay to update the volume; instead update the volume in mpd on value-changed signals from GtkVolumeButton - Make use of the changes in XfmpcMpdclient inside xfmpc_interface_refresh * src/interface.c(xfmpc_interface_finalize): - Free XfmpcMpdclient 2008-01-22 Mike Massonnet * src/Makefile.am, src/preferences.c, src/preferences.h: - New GObject preferences interface * src/interface.c(xfmpc_interface_class_init), src/interface.c(xfmpc_interface_finalize): - New finalize function - Unref XfmpcPreferences * src/interface.c(xfmpc_interface_init): - Get a XfmpcPreferences - Read the position of the window * src/interface.c(xfmpc_interface_closed): - Save the position of the window * src/main.c: - Add transformation function G_TYPE_STRING to G_TYPE_INT 2008-01-21 Mike Massonnet * src/interface-ui.h, src/interface-ui.xml, src/interface.c: - Add keybinding Ctrl+V for volume 2008-01-21 Mike Massonnet * configure.in.in: Bump post-release 2008-01-21 Mike Massonnet * src/interface-ui.h, src/interface-ui.xml: - New files, XML reprensents the GtkUIManager, .h is auto-generated with exo-csource * src/interface.c: - Add accelerators: Ctrl+B/P/S/F to respectively go backwards, play/pause, stop, and go forward 2008-01-20 Mike Massonnet * NEWS: A word about the first release 2008-01-20 Mike Massonnet * Makefile.am: - Add bzip support to distcheck * po/POTFILES.skip: - New file, distcheck failed about translation and src/mpdclient.c 2008-01-19 Mike Massonnet * === Release 0.0.1 === * autogen.sh: Use .git/svn revision number if there * configure.in.in: Remove svn version tag 2008-01-19 Mike Massonnet * AUTHORS, ChangeLog, README, po/ChangeLog: - Update text files 2008-01-19 Mike Massonnet * src/interface.c, src/interface.h: - Set xfmpc_interface_refresh static - Add static xfmpc_interface_reconnect * src/interface.c(xfmpc_interface_init), src/interface.c(xfmpc_interface_refresh), src/mpdclient.c(xfmpc_mpdclient_is_stopped): - Add messages for stopped and disconnected state 2008-01-18 Mike Massonnet * src/interface.c: - Merge xfmpc_interface_set_fraction inside xfmpc_interface_set_time 2008-01-18 Mike Massonnet * configure.in.in: Bump GTK+ version to 2.12 * src/interface.h, src/interface.c: - Remove xfmpc_interface_volume_scroll_event - Add xfmpc_interface_volume_changed * src/interface.c(interface_init): - Insert a GtkVolumeButton as a replacement for the volume button and connect signal "value-changed" to xfmpc_interface_volume_changed * src/interface.c(xfmpc_interface_set_volume), src/interface.c(xfmpc_interface_refresh_volume): - Update code to fit with the GtkVolumeButton * src/interface.c(xfmpc_interface_set_fraction): - Check value to be between 0 and 1 2008-01-17 Mike Massonnet * src/interface.c(xfmpc_interface_init): - Connect signal on progress bar (inside event box) to seek in the track * src/interface.h, src/interface.c: - New callback xfmpc_interface_progress_box_press_event * src/mpdclient.h, src/mpdclient.c: - Rename xfmpc_mpdclient_set_track_position to xfmpc_mpdclient_set_song_time and complete the function 2008-01-17 Mike Massonnet * THANKS: - Update stuff * src/Makefile.am: - Move lines out from foobar_CFLAGS inside INCLUDES - Add libxfce4util for debug macros * configure.in.in, src/Makefile.am: - Add libmpd * src/mpdclient.c, src/mpdclient.h: - New files - Interface with libmpd * interface.c, interface.h: - Add an XfmpcMpdclient inside private structure - Connect signals + write callbacks for control buttons - Add timeout to refresh the info on the interface 2008-01-16 Mike Massonnet * src/interface.c, src/interface.h: - Refine the interface and add several _set methods. 2008-01-15 Mike Massonnet * src/Makefile.am, src/interface.c, src/main.c: - Code is runnable and compilable. - The first interface is done. 2008-01-15 Mike Massonnet * Makefile.am, configure.in.in, po/POTFILES.in, po/fr.po, po/xfmpc.pot: - Fix compilation for po files - Add initial pot template - Add french translation 2008-01-15 Mike Massonnet * src/*: Initial code 2008-01-14 Mike Massonnet * */*: Initial source directory