summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuli Suominen <ssuominen@gentoo.org>2009-07-20 08:24:06 +0000
committerSamuli Suominen <ssuominen@gentoo.org>2009-07-20 08:24:06 +0000
commitc3e8cc441e36b54773ea41f7803c8d6d6349a5d2 (patch)
tree6483a2ab0345f9d6f2996c01bbdd305d6e544431 /media-sound/gimmix
parentAdd more libraries to DEPEND #278294 by BT and move to external libraries #27... (diff)
downloadgentoo-2-c3e8cc441e36b54773ea41f7803c8d6d6349a5d2.tar.gz
gentoo-2-c3e8cc441e36b54773ea41f7803c8d6d6349a5d2.tar.bz2
gentoo-2-c3e8cc441e36b54773ea41f7803c8d6d6349a5d2.zip
Fix song info box opening wrt #264231, thanks to Christopher Head and Priyank Gosalia (upstream).
(Portage version: 2.2_rc33/cvs/Linux x86_64)
Diffstat (limited to 'media-sound/gimmix')
-rw-r--r--media-sound/gimmix/ChangeLog9
-rw-r--r--media-sound/gimmix/files/gimmix-0.5.6.1-tag_info_bugfix1.patch146
-rw-r--r--media-sound/gimmix/gimmix-0.5.6.1-r1.ebuild41
3 files changed, 195 insertions, 1 deletions
diff --git a/media-sound/gimmix/ChangeLog b/media-sound/gimmix/ChangeLog
index 0cea53e7b692..c9b3dcbee9d3 100644
--- a/media-sound/gimmix/ChangeLog
+++ b/media-sound/gimmix/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for media-sound/gimmix
# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-sound/gimmix/ChangeLog,v 1.24 2009/03/20 16:20:26 armin76 Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-sound/gimmix/ChangeLog,v 1.25 2009/07/20 08:24:05 ssuominen Exp $
+
+*gimmix-0.5.6.1-r1 (20 Jul 2009)
+
+ 20 Jul 2009; Samuli Suominen <ssuominen@gentoo.org>
+ +gimmix-0.5.6.1-r1.ebuild, +files/gimmix-0.5.6.1-tag_info_bugfix1.patch:
+ Fix song info box opening wrt #264231, thanks to Christopher Head and
+ Priyank Gosalia (upstream).
20 Mar 2009; Raúl Porcel <armin76@gentoo.org> gimmix-0.5.6.1.ebuild:
x86 stable wrt #262681
diff --git a/media-sound/gimmix/files/gimmix-0.5.6.1-tag_info_bugfix1.patch b/media-sound/gimmix/files/gimmix-0.5.6.1-tag_info_bugfix1.patch
new file mode 100644
index 000000000000..e2f6cc4ad15b
--- /dev/null
+++ b/media-sound/gimmix/files/gimmix-0.5.6.1-tag_info_bugfix1.patch
@@ -0,0 +1,146 @@
+diff -Naur gimmix-0.5.6.1/src/gimmix-playlist.c gimmix-0.5.6.1.new/src/gimmix-playlist.c
+--- gimmix-0.5.6.1/src/gimmix-playlist.c 2009-02-07 02:11:49.000000000 +0530
++++ gimmix-0.5.6.1.new/src/gimmix-playlist.c 2009-07-20 11:29:31.000000000 +0530
+@@ -667,11 +667,12 @@
+ "text", 1,
+ NULL);
+
+- dir_store = gtk_list_store_new (4,
++ dir_store = gtk_list_store_new (5,
+ GDK_TYPE_PIXBUF, /* icon (0) */
+ G_TYPE_STRING, /* name (1) */
+ G_TYPE_STRING, /* path (2) */
+- G_TYPE_INT); /* type DIR/SONG (3) */
++ G_TYPE_INT, /* type DIR/SONG (3) */
++ G_TYPE_INT); /* id (4) */
+
+ pls_store = gtk_list_store_new (2,
+ GDK_TYPE_PIXBUF, /* icon (0) */
+@@ -1190,7 +1191,7 @@
+ if (data->type == MPD_DATA_TYPE_PLAYLIST)
+ {
+ gtk_list_store_append (pls_liststore, &pls_treeiter);
+- name = data->playlist;
++ name = (char*) data->playlist;
+ gtk_list_store_set (pls_liststore, &pls_treeiter,
+ 0, pls_pixbuf,
+ 1, name,
+@@ -1288,6 +1289,7 @@
+ -1);
+ g_free (title);
+ }
++ gtk_list_store_set (dir_store, &dir_iter, 4, data->song->id, -1);
+ }
+
+ mpd_data_free (data);
+@@ -1330,31 +1332,43 @@
+ GList *list;
+ GtkTreeIter iter;
+ gchar *path;
+- gchar *song_path;
+ gint type = -1;
++ guint id;
+
+ model = gtk_tree_view_get_model (GTK_TREE_VIEW(library_treeview));
+
+ list = gtk_tree_selection_get_selected_rows (library_selection, &model);
+ gtk_tree_model_get_iter (model, &iter, list->data);
+- gtk_tree_model_get (model, &iter, 2, &path, 3, &type, -1);
++ gtk_tree_model_get (model, &iter, 2, &path, 3, &type, 4, &id, -1);
+
+ if (type == DIR)
+ {
+ g_free (path);
+ return;
+ }
+-
+- song_path = g_strdup_printf ("%s/%s", cfg_get_key_value(conf, "music_directory"), path);
++ #ifdef HAVE_TAGEDITOR
++ gchar *song_path = g_strdup_printf ("%s/%s", cfg_get_key_value(conf, "music_directory"), path);
+ if (gimmix_tag_editor_populate (song_path))
+ {
+ gtk_widget_show (tag_editor_window);
+ }
+ else
++ {
+ gimmix_tag_editor_error (invalid_dir_error);
+-
+- g_free (path);
++ }
+ g_free (song_path);
++ #else
++ if (gimmix_tag_editor_populate (mpd_database_get_fileinfo(gmo,path)))
++ {
++ gtk_widget_show (tag_editor_window);
++ }
++ else
++ {
++ gimmix_tag_editor_error (_("An error occurred while trying to get song information. Please try again."));
++ }
++ #endif
++ g_free (path);
++
+
+ /* free the list */
+ g_list_foreach (list, (GFunc)gtk_tree_path_free, NULL);
+@@ -1370,7 +1384,7 @@
+ GList *list;
+ GtkTreeIter iter;
+ gchar *path;
+- gchar *song_path;
++ guint id;
+
+ model = gtk_tree_view_get_model (GTK_TREE_VIEW(current_playlist_treeview));
+ if (gtk_tree_selection_count_selected_rows(current_playlist_selection) != 1)
+@@ -1378,10 +1392,10 @@
+
+ list = gtk_tree_selection_get_selected_rows (current_playlist_selection, &model);
+ gtk_tree_model_get_iter (model, &iter, list->data);
+- gtk_tree_model_get (model, &iter, 1, &path, -1);
++ gtk_tree_model_get (model, &iter, 1, &path, 2, &id, -1);
+
+ #ifdef HAVE_TAGEDITOR
+- song_path = g_strdup_printf ("%s/%s", cfg_get_key_value(conf, "music_directory"), path);
++ gchar *song_path = g_strdup_printf ("%s/%s", cfg_get_key_value(conf, "music_directory"), path);
+ if (gimmix_tag_editor_populate (song_path))
+ {
+ gtk_widget_show (tag_editor_window);
+@@ -1392,7 +1406,7 @@
+ }
+ g_free (song_path);
+ #else
+- if (gimmix_tag_editor_populate (mpd_playlist_get_current_song(gmo)))
++ if (gimmix_tag_editor_populate (mpd_playlist_get_song(gmo,id)))
+ {
+ gtk_widget_show (tag_editor_window);
+ }
+diff -Naur gimmix-0.5.6.1/src/gimmix-tagedit.c gimmix-0.5.6.1.new/src/gimmix-tagedit.c
+--- gimmix-0.5.6.1/src/gimmix-tagedit.c 2009-02-07 02:11:49.000000000 +0530
++++ gimmix-0.5.6.1.new/src/gimmix-tagedit.c 2009-07-20 11:30:33.000000000 +0530
+@@ -278,10 +278,22 @@
+ comment = g_strdup (gtk_entry_get_text (GTK_ENTRY(tag_comment)));
+ genre = gtk_combo_box_get_active_text (GTK_COMBO_BOX(tag_genre));
+
+- taglib_tag_set_title (tag, g_strchomp(title));
+- taglib_tag_set_artist (tag, g_strchomp(artist));
+- taglib_tag_set_album (tag, g_strchomp(album));
+- taglib_tag_set_comment (tag, g_strchomp(comment));
++ if (title)
++ {
++ taglib_tag_set_title (tag, g_strchomp(title));
++ }
++ if (artist)
++ {
++ taglib_tag_set_artist (tag, g_strchomp(artist));
++ }
++ if (album)
++ {
++ taglib_tag_set_album (tag, g_strchomp(album));
++ }
++ if (comment)
++ {
++ taglib_tag_set_comment (tag, g_strchomp(comment));
++ }
+ taglib_tag_set_genre (tag, genre);
+
+ /* update the mpd database */
diff --git a/media-sound/gimmix/gimmix-0.5.6.1-r1.ebuild b/media-sound/gimmix/gimmix-0.5.6.1-r1.ebuild
new file mode 100644
index 000000000000..942162bd3b19
--- /dev/null
+++ b/media-sound/gimmix/gimmix-0.5.6.1-r1.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-sound/gimmix/gimmix-0.5.6.1-r1.ebuild,v 1.1 2009/07/20 08:24:05 ssuominen Exp $
+
+EAPI=2
+inherit eutils
+
+DESCRIPTION="a graphical music player daemon (MPD) client using GTK+2"
+HOMEPAGE="http://gimmix.berlios.de/"
+SRC_URI="mirror://berlios/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~sparc ~x86"
+IUSE="cover lyrics taglib"
+
+RDEPEND=">=media-libs/libmpd-0.17
+ gnome-base/libglade
+ x11-libs/gtk+:2
+ cover? ( net-libs/libnxml net-misc/curl )
+ lyrics? ( net-libs/libnxml net-misc/curl )
+ taglib? ( >=media-libs/taglib-1.5 )"
+DEPEND="${RDEPEND}
+ dev-util/pkgconfig
+ dev-util/intltool"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-tag_info_bugfix1.patch
+}
+
+src_configure() {
+ econf \
+ $(use_enable cover) \
+ $(use_enable lyrics) \
+ $(use_enable taglib tageditor)
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+ dodoc AUTHORS ChangeLog README TODO
+}