From 5486d4bb1cd6d9b9abb79989dafdc9abb29664e9 Mon Sep 17 00:00:00 2001 From: Natanael Copa Date: Mon, 14 Nov 2011 10:35:45 +0000 Subject: testing/thunar-media-tags-plugin: new aport Media Tags plugin for the Thunar file manager http://goodies.xfce.org/projects/thunar-plugins/thunar-media-tags-plugin --- .../01_port-to-thunarx-2.patch | 98 ++++++++++++ .../02_port-to-exo-1.patch | 175 +++++++++++++++++++++ .../03_fix-crash-with-ogg-video-files.patch | 28 ++++ .../04_fix-implicit-dso-linking.patch | 13 ++ testing/thunar-media-tags-plugin/APKBUILD | 52 ++++++ 5 files changed, 366 insertions(+) create mode 100644 testing/thunar-media-tags-plugin/01_port-to-thunarx-2.patch create mode 100644 testing/thunar-media-tags-plugin/02_port-to-exo-1.patch create mode 100644 testing/thunar-media-tags-plugin/03_fix-crash-with-ogg-video-files.patch create mode 100644 testing/thunar-media-tags-plugin/04_fix-implicit-dso-linking.patch create mode 100644 testing/thunar-media-tags-plugin/APKBUILD (limited to 'testing') diff --git a/testing/thunar-media-tags-plugin/01_port-to-thunarx-2.patch b/testing/thunar-media-tags-plugin/01_port-to-thunarx-2.patch new file mode 100644 index 000000000..0c170f132 --- /dev/null +++ b/testing/thunar-media-tags-plugin/01_port-to-thunarx-2.patch @@ -0,0 +1,98 @@ +Description: Port to thunarx-2 + Upstream patch for commit 'b805797f9bed98229f036e56c98ec16f40b539aa' + slightly updated to include '270924abcab81275dede68d882936c14b238b3ec' + (more realistic thunar version, 1.0.1 instead of 0.2.3svn-r20526). + . + Also slightly updated to patch configure.in instead of configure.in.in + (not available in released tarballs). +Origin: backport, http://git.xfce.org/thunar-plugins/thunar-media-tags-plugin/commit/?h=thunarx-2&id=b805797f9bed98229f036e56c98ec16f40b539aa +--- +diff --git a/configure.in b/configure.in +index 0ea7f85..8764561 100644 +--- a/configure.in ++++ b/configure.in +@@ -65,8 +65,7 @@ dnl *********************************** + dnl *** Check for required packages *** + dnl *********************************** + XDT_CHECK_PACKAGE([EXO], [exo-0.3], [0.3.1.3]) +-XDT_CHECK_PACKAGE([THUNARX], [thunarx-1], [0.2.3svn-r20526]) +-XDT_CHECK_PACKAGE([THUNARVFS], [thunar-vfs-1], [0.2.3svn-r20526]) ++XDT_CHECK_PACKAGE([THUNARX], [thunarx-2], [1.0.1]) + XDT_CHECK_PACKAGE([TAGLIB], [taglib], [1.4]) + + dnl *********************************** +diff --git a/thunar-plugin/Makefile.am b/thunar-plugin/Makefile.am +index a3c2c25..a7bdb58 100644 +--- a/thunar-plugin/Makefile.am ++++ b/thunar-plugin/Makefile.am +@@ -8,7 +8,7 @@ + -DPACKAGE_LOCALE_DIR=\"$(localedir)\" \ + $(PLATFORM_CPPFLAGS) + +-extensionsdir = $(libdir)/thunarx-1 ++extensionsdir = $(libdir)/thunarx-2 + extensions_LTLIBRARIES = \ + thunar-media-tags-plugin.la + +@@ -25,7 +25,6 @@ + $(EXO_CFLAGS) \ + $(PLATFORM_CFLAGS) \ + $(THUNARX_CFLAGS) \ +- $(THUNARVFS_CFLAGS) \ + $(TAGLIB_CFLAGS) \ + $(TAGLIBC_CFLAGS) + +@@ -34,7 +33,6 @@ + -export-dynamic \ + -module \ + $(THUNARX_LIBS) \ +- $(THUNARVFS_LIBS) \ + $(TAGLIB_LIBS) \ + $(TAGLIBC_LIBS) \ + $(PLATFORM_LDFLAGS) +diff --git a/thunar-plugin/audio-tags-page.c b/thunar-plugin/audio-tags-page.c +index 099d7ad..7e5dab5 100644 +--- a/thunar-plugin/audio-tags-page.c ++++ b/thunar-plugin/audio-tags-page.c +@@ -32,7 +32,6 @@ + #include + + #include +-#include + + #include + +@@ -977,8 +976,8 @@ audio_tags_page_info_activate (GtkAction *action, + + gchar *mimetype; + +- ThunarVfsInfo *vfs_info; +- gchar *filename; ++ GFileInfo *fileinfo; ++ const char *filename; + gchar *filesize; + + g_return_val_if_fail (page != NULL || IS_AUDIO_TAGS_PAGE (page), FALSE); +@@ -1007,9 +1006,9 @@ audio_tags_page_info_activate (GtkAction *action, + + /* Additional information */ + mimetype = thunarx_file_info_get_mime_type (page->file); +- vfs_info = thunarx_file_info_get_vfs_info (page->file); +- filename = vfs_info->display_name; +- filesize = thunar_vfs_humanize_size (vfs_info->size, NULL, 0); ++ fileinfo = thunarx_file_info_get_file_info (page->file); ++ filename = g_file_info_get_display_name (fileinfo); ++ filesize = g_format_size_for_display (g_file_info_get_size (fileinfo)); + + /* Create layout table */ + table = gtk_table_new (7, 2, FALSE); +@@ -1121,7 +1120,7 @@ audio_tags_page_info_activate (GtkAction *action, + g_free (filesize); + g_free (mimetype); + +- thunar_vfs_info_unref (vfs_info); ++ g_object_unref (fileinfo); + + return TRUE; + } + diff --git a/testing/thunar-media-tags-plugin/02_port-to-exo-1.patch b/testing/thunar-media-tags-plugin/02_port-to-exo-1.patch new file mode 100644 index 000000000..e3ab9b148 --- /dev/null +++ b/testing/thunar-media-tags-plugin/02_port-to-exo-1.patch @@ -0,0 +1,175 @@ +Description: Port to exo-1 + Patch slightly updated to patch configure.in instead of configure.in.in + (not available in released tarballs), and to apply cleanly against 0.1.2. +Origin: backport, http://bugzilla.xfce.org/attachment.cgi?id=2882 +Bug: http://bugzilla.xfce.org/show_bug.cgi?id=6295 +--- + configure.in | 3 ++- + thunar-plugin/audio-tags-page.c | 22 +++++++--------------- + thunar-plugin/tag-renamer.c | 16 +++------------- + 3 files changed, 12 insertions(+), 29 deletions(-) + +diff --git a/configure.in b/configure.in +index ed3099b..c345c5c 100644 +--- a/configure.in ++++ b/configure.in +@@ -64,7 +64,8 @@ XDT_I18N([@LINGUAS@]) + dnl *********************************** + dnl *** Check for required packages *** + dnl *********************************** +-XDT_CHECK_PACKAGE([EXO], [exo-0.3], [0.3.1.3]) ++XDT_CHECK_PACKAGE([GTK], [gtk+-2.0], [2.12.0]) ++XDT_CHECK_PACKAGE([EXO], [exo-1], [0.5.0]) + XDT_CHECK_PACKAGE([THUNARX], [thunarx-2], [1.0.1]) + XDT_CHECK_PACKAGE([TAGLIB], [taglib], [1.4]) + +diff --git a/thunar-plugin/audio-tags-page.c b/thunar-plugin/audio-tags-page.c +index 7e5dab5..40b226f 100644 +--- a/thunar-plugin/audio-tags-page.c ++++ b/thunar-plugin/audio-tags-page.c +@@ -89,7 +89,6 @@ struct _AudioTagsPage + ThunarxPropertyPage __parent__; + + /* Widgets */ +- GtkTooltips *tooltips; + GtkWidget *table; + GtkWidget *save_button; + GtkWidget *info_button; +@@ -281,10 +280,6 @@ audio_tags_page_init (AudioTagsPage *page) + + gtk_container_set_border_width (GTK_CONTAINER (page), 8); + +- /* Allocate the shared tooltips */ +- page->tooltips = gtk_tooltips_new (); +- exo_gtk_object_ref_sink (GTK_OBJECT (page->tooltips)); +- + /* Main container */ + vbox = gtk_vbox_new (FALSE, 8); + gtk_container_add (GTK_CONTAINER (page), vbox); +@@ -316,7 +311,7 @@ audio_tags_page_init (AudioTagsPage *page) + /* Track spin button */ + spin = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), 1, 0); + exo_mutual_binding_new (G_OBJECT (adjustment), "value", G_OBJECT (page), "track"); +- gtk_tooltips_set_tip (page->tooltips, spin, _("Enter the track number here."), NULL); ++ gtk_widget_set_tooltip_text (GTK_WIDGET (spin), _("Enter the track number here.")); + gtk_container_add (GTK_CONTAINER (alignment), spin); + gtk_label_set_mnemonic_widget (GTK_LABEL (label), spin); + gtk_widget_show (spin); +@@ -339,7 +334,7 @@ audio_tags_page_init (AudioTagsPage *page) + /* Year spin button */ + spin = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), 1, 0); + exo_mutual_binding_new (G_OBJECT (adjustment), "value", G_OBJECT (page), "year"); +- gtk_tooltips_set_tip (page->tooltips, spin, _("Enter the release year here."), NULL); ++ gtk_widget_set_tooltip_text (GTK_WIDGET (spin), _("Enter the release year here.")); + gtk_container_add (GTK_CONTAINER (alignment), spin); + gtk_label_set_mnemonic_widget (GTK_LABEL (label), spin); + gtk_widget_show (spin); +@@ -354,7 +349,7 @@ audio_tags_page_init (AudioTagsPage *page) + /* Artist entry */ + entry = gtk_entry_new (); + exo_mutual_binding_new (G_OBJECT (entry), "text", G_OBJECT (page), "artist"); +- gtk_tooltips_set_tip (page->tooltips, entry, _("Enter the name of the artist or author of this file here."), NULL); ++ gtk_widget_set_tooltip_text (GTK_WIDGET (entry), _("Enter the name of the artist or author of this file here.")); + gtk_table_attach (GTK_TABLE (page->table), entry, 1, 4, 1, 2, GTK_EXPAND | GTK_FILL, 0, 0, 0); + gtk_label_set_mnemonic_widget (GTK_LABEL (label), entry); + gtk_widget_show (entry); +@@ -369,7 +364,7 @@ audio_tags_page_init (AudioTagsPage *page) + /* Title entry */ + entry = gtk_entry_new (); + exo_mutual_binding_new (G_OBJECT (entry), "text", G_OBJECT (page), "title"); +- gtk_tooltips_set_tip (page->tooltips, entry, _("Enter the song title here."), NULL); ++ gtk_widget_set_tooltip_text (GTK_WIDGET (entry), _("Enter the song title here.")); + gtk_table_attach (GTK_TABLE (page->table), entry, 1, 4, 2, 3, GTK_EXPAND | GTK_FILL, 0, 0, 0); + gtk_widget_show (entry); + +@@ -383,7 +378,7 @@ audio_tags_page_init (AudioTagsPage *page) + /* Album entry */ + entry = gtk_entry_new (); + exo_mutual_binding_new (G_OBJECT (entry), "text", G_OBJECT (page), "album"); +- gtk_tooltips_set_tip (page->tooltips, entry, _("Enter the album/record title here."), NULL); ++ gtk_widget_set_tooltip_text (GTK_WIDGET (entry), _("Enter the album/record title here.")); + gtk_table_attach (GTK_TABLE (page->table), entry, 1, 4, 3, 4, GTK_EXPAND | GTK_FILL, 0, 0, 0); + gtk_widget_show (entry); + +@@ -397,7 +392,7 @@ audio_tags_page_init (AudioTagsPage *page) + /* Comment entry */ + entry = gtk_entry_new (); + exo_mutual_binding_new (G_OBJECT (entry), "text", G_OBJECT (page), "comment"); +- gtk_tooltips_set_tip (page->tooltips, entry, _("Enter your comments here."), NULL); ++ gtk_widget_set_tooltip_text (GTK_WIDGET (entry), _("Enter your comments here.")); + gtk_table_attach (GTK_TABLE (page->table), entry, 1, 4, 4, 5, GTK_EXPAND | GTK_FILL, 0, 0, 0); + gtk_widget_show (entry); + +@@ -411,7 +406,7 @@ audio_tags_page_init (AudioTagsPage *page) + /* Genre combo box */ + combo = gtk_combo_box_entry_new_text (); + exo_mutual_binding_new (G_OBJECT (GTK_BIN (combo)->child), "text", G_OBJECT (page), "genre"); +- gtk_tooltips_set_tip (page->tooltips, combo, _("Select or enter the genre of this song here."), NULL); ++ gtk_widget_set_tooltip_text (GTK_WIDGET (combo), _("Select or enter the genre of this song here.")); + gtk_table_attach (GTK_TABLE (page->table), combo, 1, 4, 5, 6, GTK_FILL, 0, 0, 0); + gtk_widget_show (combo); + +@@ -511,9 +506,6 @@ audio_tags_page_finalize (GObject *object) + if (G_LIKELY (page->genre != NULL)) + g_free (page->genre); + +- /* Release the tooltips */ +- g_object_unref (G_OBJECT (page->tooltips)); +- + (*G_OBJECT_CLASS (audio_tags_page_parent_class)->finalize) (object); + } + +diff --git a/thunar-plugin/tag-renamer.c b/thunar-plugin/tag-renamer.c +index acb694e..bdbb17c 100644 +--- a/thunar-plugin/tag-renamer.c ++++ b/thunar-plugin/tag-renamer.c +@@ -116,9 +116,6 @@ struct _TagRenamer + { + ThunarxRenamer __parent__; + +- /* Widgets */ +- GtkTooltips *tooltips; +- + /* Properties */ + TagRenamerFormat format; + gboolean replace_spaces; +@@ -209,10 +206,6 @@ tag_renamer_init (TagRenamer *tag_renamer) + GEnumClass *klass; + gint n; + +- /* Allocate shared tooltips */ +- tag_renamer->tooltips = gtk_tooltips_new (); +- exo_gtk_object_ref_sink (GTK_OBJECT (tag_renamer->tooltips)); +- + table = gtk_table_new (2, 3, FALSE); + gtk_table_set_row_spacings (GTK_TABLE (table), 6); + gtk_table_set_col_spacings (GTK_TABLE (table), 12); +@@ -245,14 +238,14 @@ tag_renamer_init (TagRenamer *tag_renamer) + + button = gtk_check_button_new_with_mnemonic (_("_Underscores")); + exo_mutual_binding_new (G_OBJECT (button), "active", G_OBJECT (tag_renamer), "replace-spaces"); +- gtk_tooltips_set_tip (tag_renamer->tooltips, button, _("Activating this option will replace all spaces in the target filename " +- "with underscores."), NULL); ++ gtk_widget_set_tooltip_text (GTK_WIDGET (button), _("Activating this option will replace all spaces in the target filename " ++ "with underscores.")); + gtk_table_attach (GTK_TABLE (table), button, 2, 3, 0, 1, GTK_FILL, 0, 0, 0); + gtk_widget_show (button); + + button = gtk_check_button_new_with_mnemonic (_("_Lowercase")); + exo_mutual_binding_new (G_OBJECT (button), "active", G_OBJECT (tag_renamer), "lowercase"); +- gtk_tooltips_set_tip (tag_renamer->tooltips, button, _("If you activate this, the resulting filename will only contain lowercase letters."), NULL); ++ gtk_widget_set_tooltip_text (GTK_WIDGET (button), _("If you activate this, the resulting filename will only contain lowercase letters.")); + gtk_table_attach (GTK_TABLE (table), button, 2, 3, 1, 2, GTK_FILL, 0, 0, 0); + gtk_widget_show (button); + +@@ -272,9 +265,6 @@ tag_renamer_finalize (GObject *object) + { + TagRenamer *tag_renamer = TAG_RENAMER (object); + +- /* release the tooltips */ +- g_object_unref (G_OBJECT (tag_renamer->tooltips)); +- + /* Free strings */ + g_free (tag_renamer->artist); + g_free (tag_renamer->title); + diff --git a/testing/thunar-media-tags-plugin/03_fix-crash-with-ogg-video-files.patch b/testing/thunar-media-tags-plugin/03_fix-crash-with-ogg-video-files.patch new file mode 100644 index 000000000..eb50af938 --- /dev/null +++ b/testing/thunar-media-tags-plugin/03_fix-crash-with-ogg-video-files.patch @@ -0,0 +1,28 @@ +Description: Call taglib_file_is_valid() for input audio files + Check that the file contains valid audio information to determine whether + the plugin should act on it or not. +Origin: other, http://bugzilla.xfce.org/attachment.cgi?id=2879 +Bug: http://bugzilla.xfce.org/show_bug.cgi?id=6297 +--- + thunar-plugin/media-tags-provider.c | 5 +++-- + 1 files changed, 3 insertions(+), 2 deletions(-) + +diff --git a/thunar-plugin/media-tags-provider.c b/thunar-plugin/media-tags-provider.c +index a7604ea..2c31a98 100644 +--- a/thunar-plugin/media-tags-provider.c ++++ b/thunar-plugin/media-tags-provider.c +@@ -163,10 +163,11 @@ media_tags_get_audio_file_supported (ThunarxFileInfo *info) + + if (G_LIKELY (taglib_file != NULL)) + { ++ /* Check that the file contains valid audio info */ ++ supported = taglib_file_is_valid (taglib_file); ++ + /* Free the taglib file */ + taglib_file_free (taglib_file); +- +- supported = TRUE; + } + + g_free (filename); + diff --git a/testing/thunar-media-tags-plugin/04_fix-implicit-dso-linking.patch b/testing/thunar-media-tags-plugin/04_fix-implicit-dso-linking.patch new file mode 100644 index 000000000..264d7237a --- /dev/null +++ b/testing/thunar-media-tags-plugin/04_fix-implicit-dso-linking.patch @@ -0,0 +1,13 @@ +Description: add missing libs +Origin: other, http://bugzilla.xfce.org/attachment.cgi?id=3284 +Bug: http://bugzilla.xfce.org/show_bug.cgi?id=6295 +--- thunar-media-tags-plugin-0.1.2.orig/thunar-plugin/Makefile.am ++++ thunar-media-tags-plugin-0.1.2/thunar-plugin/Makefile.am +@@ -32,6 +32,7 @@ + -avoid-version \ + -export-dynamic \ + -module \ ++ $(EXO_LIBS) \ + $(THUNARX_LIBS) \ + $(TAGLIB_LIBS) \ + $(TAGLIBC_LIBS) \ diff --git a/testing/thunar-media-tags-plugin/APKBUILD b/testing/thunar-media-tags-plugin/APKBUILD new file mode 100644 index 000000000..5a6313345 --- /dev/null +++ b/testing/thunar-media-tags-plugin/APKBUILD @@ -0,0 +1,52 @@ +# Contributor: Natanael Copa +# Maintainer: Natanael Copa +pkgname=thunar-media-tags-plugin +pkgver=0.1.2 +pkgrel=0 +pkgdesc="Media Tags plugin for the Thunar file manager" +url="http://goodies.xfce.org/projects/thunar-plugins/thunar-media-tags-plugin" +arch="all" +license="GPLv2+" +depends="" +makedepends="thunar-dev xfce4-dev-tools taglib-dev" +install="" +subpackages="$pkgname-lang" +source="http://goodies.xfce.org/releases/thunar-media-tags-plugin/thunar-media-tags-plugin-$pkgver.tar.bz2 + 01_port-to-thunarx-2.patch + 02_port-to-exo-1.patch + 03_fix-crash-with-ogg-video-files.patch + 04_fix-implicit-dso-linking.patch" + +_builddir="$srcdir"/thunar-media-tags-plugin-$pkgver +prepare() { + local i + cd "$_builddir" + for i in $source; do + case $i in + *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;; + esac + done + xdt-autogen +} + +build() { + cd "$_builddir" + ./configure --prefix=/usr \ + --libexecdir=/usr/lib/xfce4 \ + --disable-static \ + --sysconfdir=/etc \ + || return 1 + make || return 1 +} + +package() { + cd "$_builddir" + make DESTDIR="$pkgdir" install || return 1 + rm "$pkgdir"/usr/lib/thunarx-2/*.la +} + +md5sums="8a95f0ea4df6f757c1c94eb5442d2ff5 thunar-media-tags-plugin-0.1.2.tar.bz2 +479843c634c516afb405ebdd72f37203 01_port-to-thunarx-2.patch +5af37349b7d6d1b0180e49c1d86f9d8f 02_port-to-exo-1.patch +d83ec2e224db216f90e9035b442e1e73 03_fix-crash-with-ogg-video-files.patch +b6956747e247de938bc0970ba78cd8bf 04_fix-implicit-dso-linking.patch" -- cgit v1.2.3