diff options
author | Daniel Gryniewicz <dang@gentoo.org> | 2007-10-29 17:28:01 +0000 |
---|---|---|
committer | Daniel Gryniewicz <dang@gentoo.org> | 2007-10-29 17:28:01 +0000 |
commit | 00a6d5d61459fc849e90eec1eb912a276d0c43e5 (patch) | |
tree | 382cafd1af0e245f8bec1f42f176c5b4034b15d4 /gnome-base | |
parent | Bump and enable bsdcpio. (diff) | |
download | historical-00a6d5d61459fc849e90eec1eb912a276d0c43e5.tar.gz historical-00a6d5d61459fc849e90eec1eb912a276d0c43e5.tar.bz2 historical-00a6d5d61459fc849e90eec1eb912a276d0c43e5.zip |
Bump to 2.20.0-r1
* Crash with small fonts (bugs.gnome.org #454884) (thanks plaes)
* Thumbnails not showing (bugs.gnome.org #480608) (thanks plaes)
* Missing thumbnail frames (bugs.gnome.org #478363) (thanks plaes)
* Add new gstreamer/totem support for sound previews; bug #196822
Package-Manager: portage-2.1.3.16
Diffstat (limited to 'gnome-base')
8 files changed, 741 insertions, 5 deletions
diff --git a/gnome-base/nautilus/ChangeLog b/gnome-base/nautilus/ChangeLog index c6a1d0fedd69..e34b9d998a52 100644 --- a/gnome-base/nautilus/ChangeLog +++ b/gnome-base/nautilus/ChangeLog @@ -1,6 +1,20 @@ # ChangeLog for gnome-base/nautilus # Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/gnome-base/nautilus/ChangeLog,v 1.241 2007/10/19 09:50:59 uberlord Exp $ +# $Header: /var/cvsroot/gentoo-x86/gnome-base/nautilus/ChangeLog,v 1.242 2007/10/29 17:28:00 dang Exp $ + +*nautilus-2.20.0-r1 (29 Oct 2007) + + 29 Oct 2007; Daniel Gryniewicz <dang@gentoo.org> + +files/nautilus-2.20.0-async-thumbnail-framing.patch, + +files/nautilus-2.20.0-small-font-crasher.patch, + +files/nautilus-2.20.0-sound-preview-cleanup.patch, + +files/nautilus-2.20.0-thumbnail-flashing.patch, + +nautilus-2.20.0-r1.ebuild: + Bump to 2.20.0-r1 + * Crash with small fonts (bugs.gnome.org #454884) (thanks plaes) + * Thumbnails not showing (bugs.gnome.org #480608) (thanks plaes) + * Missing thumbnail frames (bugs.gnome.org #478363) (thanks plaes) + * Add new gstreamer/totem support for sound previews; bug #196822 19 Oct 2007; Roy Marples <uberlord@gentoo.org> +files/nautilus-2.20.0-statfs.patch, nautilus-2.20.0.ebuild: diff --git a/gnome-base/nautilus/Manifest b/gnome-base/nautilus/Manifest index cd1445dbcbcc..adcbd16f9dd1 100644 --- a/gnome-base/nautilus/Manifest +++ b/gnome-base/nautilus/Manifest @@ -1,3 +1,6 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 + AUX nautilus-2.16.0-idl_include.patch 575 RMD160 8ee41c84f597683e2d34eea5acdb43f5592d3262 SHA1 738a2e9bb13aab07ed256e37af3ddc10fa2dfe0e SHA256 07cd75e4cf1c34c5fcd3f4d2257ae1d9c578cb2c2f014e69280e511de28862f0 MD5 c496549444ef2727f6c0555b590ef4fe files/nautilus-2.16.0-idl_include.patch 575 RMD160 8ee41c84f597683e2d34eea5acdb43f5592d3262 files/nautilus-2.16.0-idl_include.patch 575 @@ -10,10 +13,26 @@ AUX nautilus-2.19.90-noesd.patch 5535 RMD160 575daa550c85d06985d871970cf3e5dfa03 MD5 e2c12a6d42644954821357ba855497fe files/nautilus-2.19.90-noesd.patch 5535 RMD160 575daa550c85d06985d871970cf3e5dfa039a2a5 files/nautilus-2.19.90-noesd.patch 5535 SHA256 b530b9f7a54d9c45af446f91d9377240ea0d49ea31684d928a7d6cfb07f300fa files/nautilus-2.19.90-noesd.patch 5535 +AUX nautilus-2.20.0-async-thumbnail-framing.patch 911 RMD160 c7886957cb703ef97b3210d4d84f9b21a261c634 SHA1 93c2ccfac58fb1832cdc726f2a7c19f423a1ac45 SHA256 80afad12814bc55540e0a98535a81b4fc9a409b7bfc58a06f0bd35a6b2cb89db +MD5 58dbb68fe0f549f778af2b5489064e64 files/nautilus-2.20.0-async-thumbnail-framing.patch 911 +RMD160 c7886957cb703ef97b3210d4d84f9b21a261c634 files/nautilus-2.20.0-async-thumbnail-framing.patch 911 +SHA256 80afad12814bc55540e0a98535a81b4fc9a409b7bfc58a06f0bd35a6b2cb89db files/nautilus-2.20.0-async-thumbnail-framing.patch 911 +AUX nautilus-2.20.0-small-font-crasher.patch 492 RMD160 0ee8dacd7d83db84864c477b59a375563c016591 SHA1 6306c38a91d6d6f8fcf609a5f3bacabc7bb86eda SHA256 b1d4b3ebd00569df1aa8e40e8f5bb5199f73167267b81c18c165991748713eb4 +MD5 50160d2e6221fc691f39f341467783e9 files/nautilus-2.20.0-small-font-crasher.patch 492 +RMD160 0ee8dacd7d83db84864c477b59a375563c016591 files/nautilus-2.20.0-small-font-crasher.patch 492 +SHA256 b1d4b3ebd00569df1aa8e40e8f5bb5199f73167267b81c18c165991748713eb4 files/nautilus-2.20.0-small-font-crasher.patch 492 +AUX nautilus-2.20.0-sound-preview-cleanup.patch 13013 RMD160 19f50049d52145d2f80326d96ededbed9f895671 SHA1 8a6e8e2340c9c5f64a02438ed5025fe3a5c2b164 SHA256 6b0e7f8c5b50b5ef54d6a075c90324be9b18164aa951fca612c58d31c7d63a38 +MD5 bc9e85eeace20684d29f698e145548ca files/nautilus-2.20.0-sound-preview-cleanup.patch 13013 +RMD160 19f50049d52145d2f80326d96ededbed9f895671 files/nautilus-2.20.0-sound-preview-cleanup.patch 13013 +SHA256 6b0e7f8c5b50b5ef54d6a075c90324be9b18164aa951fca612c58d31c7d63a38 files/nautilus-2.20.0-sound-preview-cleanup.patch 13013 AUX nautilus-2.20.0-statfs.patch 470 RMD160 860c6179e0b2796b1bb44fb53caf38b243602de7 SHA1 586f1e438c8ffcd176b056992679b5c6e94fd533 SHA256 0d5cb2624ed32a1eb37ae9619604b2935ba56e22453aeabda36df75b79772623 MD5 354b7893e81dc020002e3e33ce80959d files/nautilus-2.20.0-statfs.patch 470 RMD160 860c6179e0b2796b1bb44fb53caf38b243602de7 files/nautilus-2.20.0-statfs.patch 470 SHA256 0d5cb2624ed32a1eb37ae9619604b2935ba56e22453aeabda36df75b79772623 files/nautilus-2.20.0-statfs.patch 470 +AUX nautilus-2.20.0-thumbnail-flashing.patch 4787 RMD160 d9cf1ace6cf1f367cfdd66317ee1bbfb96957b76 SHA1 db9503f51aefbe541aeb39541733543dcea551f2 SHA256 bec9d2a07c8b04137b50591b753e4913583dc673c889f44de40ddbadff5ab6ec +MD5 340aac6831eb26d04474c389c3150e42 files/nautilus-2.20.0-thumbnail-flashing.patch 4787 +RMD160 d9cf1ace6cf1f367cfdd66317ee1bbfb96957b76 files/nautilus-2.20.0-thumbnail-flashing.patch 4787 +SHA256 bec9d2a07c8b04137b50591b753e4913583dc673c889f44de40ddbadff5ab6ec files/nautilus-2.20.0-thumbnail-flashing.patch 4787 DIST nautilus-2.16.3.tar.bz2 4268274 RMD160 a7723054cacb954f48376e68de66dd144b36d3c5 SHA1 329e11d4c5e77346350b69f34cf2eb749807b12e SHA256 af2ff5ad922e28cc831b4ac3d83f0f35eedcf7a3230d3df76aa9f91c3ffbc36c DIST nautilus-2.18.1.tar.bz2 4325821 RMD160 3cdef422befc96bbd921f2f4788d302cf9249204 SHA1 c1922ebee16a5ecb51f27af24e19142b48120820 SHA256 b42e90788c14a4aecd748963135bf54fef20d7a19a448f7393d446028f73ec3b DIST nautilus-2.18.3.tar.bz2 4331118 RMD160 2069e1e9bb00c1ef6d942b114f8acda4776a06b0 SHA1 3f8eb87aa12080b67cb1f472655c10f03b440d4d SHA256 8ecc2b27f9e8e7f12ee2a84ae54d71d60c769e559f9952f8d792447e6f657c16 @@ -34,14 +53,18 @@ EBUILD nautilus-2.18.3.ebuild 2219 RMD160 3410a6ce1fb1312228d3127e9c0feb8c979b6a MD5 2d4eee0af6b02c41516a070100898c6e nautilus-2.18.3.ebuild 2219 RMD160 3410a6ce1fb1312228d3127e9c0feb8c979b6a55 nautilus-2.18.3.ebuild 2219 SHA256 6803dd2d62a84edef9efba966e8abc7ed492d2cf8d660000a5210cd77eb9ad49 nautilus-2.18.3.ebuild 2219 +EBUILD nautilus-2.20.0-r1.ebuild 2840 RMD160 46935b80d7d68284b2c982fa5edfea123986ad19 SHA1 c1e852846b264990acf583e9bfcf966824d10950 SHA256 1999d8342d8c5098d58dc52dc5dae1f24edd3ec113afdec4d7d42d6cdaca6888 +MD5 272c08f6fa474a083bebf7ea2a700a91 nautilus-2.20.0-r1.ebuild 2840 +RMD160 46935b80d7d68284b2c982fa5edfea123986ad19 nautilus-2.20.0-r1.ebuild 2840 +SHA256 1999d8342d8c5098d58dc52dc5dae1f24edd3ec113afdec4d7d42d6cdaca6888 nautilus-2.20.0-r1.ebuild 2840 EBUILD nautilus-2.20.0.ebuild 2443 RMD160 2fad8f0f71e73c8121b97fc4f795c1ae138aadd9 SHA1 ba62e049f6b332b1ed372db6b740d295af603a3d SHA256 ec6a549abbb9830c4916285408f98484cc838f20cc0964b887fee6f1d490dd92 MD5 62f33132974f798e1a8026afc2bf4e0c nautilus-2.20.0.ebuild 2443 RMD160 2fad8f0f71e73c8121b97fc4f795c1ae138aadd9 nautilus-2.20.0.ebuild 2443 SHA256 ec6a549abbb9830c4916285408f98484cc838f20cc0964b887fee6f1d490dd92 nautilus-2.20.0.ebuild 2443 -MISC ChangeLog 32667 RMD160 1e48c1ff3641d8d9c530036d780e4c422aa5d41d SHA1 e06f73cf27bcd8d4d6a75ae3c739041ffd1fc794 SHA256 9a51181af186a728cdd11910730ac1c6485a1410e253bf48bc7a134b09f8b508 -MD5 27c058a83a9d0bb68440dfeb41bae2a9 ChangeLog 32667 -RMD160 1e48c1ff3641d8d9c530036d780e4c422aa5d41d ChangeLog 32667 -SHA256 9a51181af186a728cdd11910730ac1c6485a1410e253bf48bc7a134b09f8b508 ChangeLog 32667 +MISC ChangeLog 33296 RMD160 f4c17c18c44faea4edfd465a1cb26b2444d5a61b SHA1 d24cedd35cee780ad4fa0fbbf729d75885b4f0f4 SHA256 1c0affc11a620095378c9f47f44f6a3df21232e86280bfcd0224225bc54d3d68 +MD5 4f151196d6c763b5065632fdd29005b5 ChangeLog 33296 +RMD160 f4c17c18c44faea4edfd465a1cb26b2444d5a61b ChangeLog 33296 +SHA256 1c0affc11a620095378c9f47f44f6a3df21232e86280bfcd0224225bc54d3d68 ChangeLog 33296 MISC metadata.xml 158 RMD160 c0e2bae8e91bb6be8922bac5e4f597302e06587e SHA1 38f78e9790bcd4382b4a49aa226aa6dda1d3a3d7 SHA256 3a7dbca0fdc557de69783e0663e2d76ddab129ea8a19b2d0ef6d3e5d1b947ce1 MD5 03ad2e6c4ab41244af1015a8bbb0b39f metadata.xml 158 RMD160 c0e2bae8e91bb6be8922bac5e4f597302e06587e metadata.xml 158 @@ -61,3 +84,13 @@ SHA256 fa243747bb67794ea26d8725f7d1c60d6eaea66227d0162e19438bac3f3f716e files/di MD5 543691c3a7235d78e4da187bb3ec69d4 files/digest-nautilus-2.20.0 253 RMD160 7a3b169d0fb3f51107c447a2c81c133dd18ff684 files/digest-nautilus-2.20.0 253 SHA256 a919d0e168e212a27254be6deb89c08dd07fda3e6a281cd788a1fa406eb13632 files/digest-nautilus-2.20.0 253 +MD5 543691c3a7235d78e4da187bb3ec69d4 files/digest-nautilus-2.20.0-r1 253 +RMD160 7a3b169d0fb3f51107c447a2c81c133dd18ff684 files/digest-nautilus-2.20.0-r1 253 +SHA256 a919d0e168e212a27254be6deb89c08dd07fda3e6a281cd788a1fa406eb13632 files/digest-nautilus-2.20.0-r1 253 +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v2.0.7 (GNU/Linux) + +iD8DBQFHJhg5omPajV0RnrERAgCQAJ4szFx12E1CzSQexPxU7a2BNCJrMQCfV5w1 +ckCM9cd1Gpz76KzhH2h56Ow= +=6idU +-----END PGP SIGNATURE----- diff --git a/gnome-base/nautilus/files/digest-nautilus-2.20.0-r1 b/gnome-base/nautilus/files/digest-nautilus-2.20.0-r1 new file mode 100644 index 000000000000..3c16cce1c1cb --- /dev/null +++ b/gnome-base/nautilus/files/digest-nautilus-2.20.0-r1 @@ -0,0 +1,3 @@ +MD5 3856ec2ffeba786d12f8f6622e398c33 nautilus-2.20.0.tar.bz2 4916284 +RMD160 9eeb18c886795ebbdd6dfc61ccddaee8eab81808 nautilus-2.20.0.tar.bz2 4916284 +SHA256 98f9d9f7bc89db67cbcc4c7d08ec72175b8c9b3eb9489f7869c5cec9f16feb08 nautilus-2.20.0.tar.bz2 4916284 diff --git a/gnome-base/nautilus/files/nautilus-2.20.0-async-thumbnail-framing.patch b/gnome-base/nautilus/files/nautilus-2.20.0-async-thumbnail-framing.patch new file mode 100644 index 000000000000..4e947bb51f6c --- /dev/null +++ b/gnome-base/nautilus/files/nautilus-2.20.0-async-thumbnail-framing.patch @@ -0,0 +1,27 @@ +* libnautilus-private/nautilus-icon-factory.c: + (async_thumbnail_load_func): Frame asynchronously loaded thumbnails. + Fixes #478363 +--- libnautilus-private/nautilus-icon-factory.c 2007/09/27 17:15:05 13235 ++++ libnautilus-private/nautilus-icon-factory.c 2007/09/27 17:19:21 13236 +@@ -384,9 +384,21 @@ + goto out; + } + ++ if (!gdk_pixbuf_get_has_alpha (pixbuf)) { ++ /* we don't own the pixbuf, but nautilus_thumbnail_frame_image() assumes so and unrefs it. */ ++ g_object_ref (pixbuf); ++ ++ nautilus_thumbnail_frame_image (&pixbuf); ++ /* at this point, we own a pixbuf, which is the framed version of the passed-in pixbuf. */ ++ } ++ + cached_icon = cache_icon_new (pixbuf, NULL, scale_x, scale_y); + cached_icon->mtime = statbuf.st_mtime; + ++ if (!gdk_pixbuf_get_has_alpha (pixbuf)) { ++ g_object_unref (pixbuf); ++ } ++ + if (cached_icon != NULL) { + key = g_new (CacheKey, 1); + key->name = g_strdup (path); diff --git a/gnome-base/nautilus/files/nautilus-2.20.0-small-font-crasher.patch b/gnome-base/nautilus/files/nautilus-2.20.0-small-font-crasher.patch new file mode 100644 index 000000000000..eb7b165c0a77 --- /dev/null +++ b/gnome-base/nautilus/files/nautilus-2.20.0-small-font-crasher.patch @@ -0,0 +1,12 @@ +Fix crash with small fonts (#454884) +--- src/nautilus-sidebar-title.c 2007/10/03 06:38:48 13255 ++++ src/nautilus-sidebar-title.c 2007/10/03 06:39:37 13256 +@@ -364,7 +364,7 @@ + title_font = pango_font_description_copy (style->font_desc); + + max_style_font_size = pango_font_description_get_size (title_font) * 1.8 / PANGO_SCALE; +- if (max_style_font_size < MIN_TITLE_FONT_SIZE) { ++ if (max_style_font_size < MIN_TITLE_FONT_SIZE + 1) { + max_style_font_size = MIN_TITLE_FONT_SIZE + 1; + } + diff --git a/gnome-base/nautilus/files/nautilus-2.20.0-sound-preview-cleanup.patch b/gnome-base/nautilus/files/nautilus-2.20.0-sound-preview-cleanup.patch new file mode 100644 index 000000000000..8cb976393f46 --- /dev/null +++ b/gnome-base/nautilus/files/nautilus-2.20.0-sound-preview-cleanup.patch @@ -0,0 +1,414 @@ +diff --exclude-from=/home/dang/.scripts/diffrc -up -ruN nautilus-2.20.0.orig/configure.in nautilus-2.20.0/configure.in +--- nautilus-2.20.0.orig/configure.in 2007-09-18 02:55:14.000000000 -0400 ++++ nautilus-2.20.0/configure.in 2007-10-29 10:50:48.000000000 -0400 +@@ -90,7 +90,6 @@ fi + AC_SUBST(STARTUP_NOTIFICATION_PACKAGE) + + PKG_CHECK_MODULES(ALL, [ +- esound >= esound_minver + bonobo-activation-2.0 >= bonobo_activation_minver + eel-2.0 >= eel_minver + glib-2.0 >= glib_minver +@@ -312,6 +311,25 @@ fi + + dnl ========================================================================== + ++AM_CONDITIONAL(HAVE_ESOUND, false) ++ ++dnl esound checking ++ ++AC_ARG_ENABLE(esound, [ --disable-esound build without esound support]) ++msg_esound=no ++if test "x$enable_esound" != "xno"; then ++ PKG_CHECK_MODULES(ESOUND, esound >= esound_minver, [ ++ AM_CONDITIONAL(HAVE_ESOUND, true) ++ AC_DEFINE(HAVE_ESOUND, 1, [Define to enable esound support]) ++ ] ++ msg_esound=yes, ++ [AM_CONDITIONAL(HAVE_ESOUND, false)]) ++ AC_SUBST(ESOUND_CFLAGS) ++ AC_SUBST(ESOUND_LIBS) ++fi ++ ++dnl ========================================================================== ++ + dnl **************************** + dnl *** Check for libselinux *** + dnl **************************** +@@ -404,7 +422,7 @@ LIBNAUTILUS_EXTENSION_LIBS="`$PKG_CONFIG + AC_SUBST(LIBNAUTILUS_EXTENSION_LIBS) + + dnl core nautilus (must list bonobo-activation and libbonobo because idldir does not respect "requires") +-CORE_MODULES="eel-2.0 librsvg-2.0 bonobo-activation-2.0 libbonobo-2.0 esound gnome-desktop-2.0 gnome-vfs-module-2.0 $EXTRA_CORE_MODULES" ++CORE_MODULES="eel-2.0 librsvg-2.0 bonobo-activation-2.0 libbonobo-2.0 gnome-desktop-2.0 gnome-vfs-module-2.0 $EXTRA_CORE_MODULES" + CORE_CFLAGS="`$PKG_CONFIG --cflags $CORE_MODULES` $x_cflags $WARNING_CFLAGS" + AC_SUBST(CORE_CFLAGS) + CORE_LIBS="`$PKG_CONFIG --libs $CORE_MODULES` $x_libs" +diff --exclude-from=/home/dang/.scripts/diffrc -up -ruN nautilus-2.20.0.orig/libnautilus-private/Makefile.am nautilus-2.20.0/libnautilus-private/Makefile.am +--- nautilus-2.20.0.orig/libnautilus-private/Makefile.am 2007-08-21 05:37:54.000000000 -0400 ++++ nautilus-2.20.0/libnautilus-private/Makefile.am 2007-10-29 10:50:48.000000000 -0400 +@@ -10,6 +10,7 @@ INCLUDES = \ + $(DISABLE_DEPRECATED_CFLAGS) \ + $(TRACKER_CFLAGS) \ + $(BEAGLE_CFLAGS) \ ++ $(ESOUND_CFLAGS) \ + -DDATADIR=\""$(datadir)"\" \ + -DSYSCONFDIR=\""$(sysconfdir)"\" \ + -DNAUTILUS_DATADIR=\""$(datadir)/nautilus"\" \ +@@ -31,6 +32,7 @@ libnautilus_private_la_LIBADD = \ + $(SELINUX_LIBS) \ + $(BEAGLE_LIBS) \ + $(TRACKER_LIBS) \ ++ $(ESOUND_LIBS) \ + $(top_builddir)/libnautilus-extension/libnautilus-extension.la \ + $(CORE_LIBS) \ + $(NULL) +@@ -49,8 +51,6 @@ marshal_sources = \ + + libnautilus_private_la_SOURCES = \ + $(nautilus_metafile_server_idl_sources) \ +- nautilus-audio-player.c \ +- nautilus-audio-player.h \ + nautilus-bookmark.c \ + nautilus-bookmark.h \ + nautilus-cell-renderer-pixbuf-emblem.c \ +@@ -228,6 +228,14 @@ if HAVE_TRACKER + libnautilus_private_la_SOURCES += $(TRACKER_SOURCES) + endif + ++ESOUND_SOURCES = \ ++ nautilus-audio-player.c \ ++ nautilus-audio-player.h ++ ++if HAVE_ESOUND ++libnautilus_private_la_SOURCES += $(ESOUND_SOURCES) ++endif ++ + $(lib_LTLIBRARIES): $(dependency_static_libs) + + $(nautilus_metafile_server_idl_sources): nautilus_metafile_server_idl_stamp +@@ -264,6 +272,7 @@ EXTRA_DIST = \ + nautilus-marshal.list \ + $(schema_in_files) \ + $(BEAGLE_SOURCES) \ ++ $(ESOUND_SOURCES) \ + $(TRACKER_SOURCES) \ + $(NULL) + +diff --exclude-from=/home/dang/.scripts/diffrc -up -ruN nautilus-2.20.0.orig/src/file-manager/fm-icon-view.c nautilus-2.20.0/src/file-manager/fm-icon-view.c +--- nautilus-2.20.0.orig/src/file-manager/fm-icon-view.c 2007-04-03 06:08:04.000000000 -0400 ++++ nautilus-2.20.0/src/file-manager/fm-icon-view.c 2007-10-29 12:02:21.000000000 -0400 +@@ -24,6 +24,7 @@ + + #include <config.h> + #include "fm-icon-view.h" ++#include "nautilus-audio-mime-types.h" + + #include "fm-actions.h" + #include "fm-icon-container.h" +@@ -78,7 +79,9 @@ + #include <sys/types.h> + #include <sys/wait.h> + #include <unistd.h> ++#ifdef HAVE_ESOUND + #include <esd.h> ++#endif + + #define USE_OLD_AUDIO_PREVIEW 1 + #define READ_CHUNK_SIZE 16384 +@@ -165,9 +168,8 @@ static const SortCriterion sort_criteria + + static gboolean default_sort_in_reverse_order = FALSE; + static int preview_sound_auto_value; +-static gboolean gnome_esd_enabled_auto_value; + +-#if USE_OLD_AUDIO_PREVIEW ++#ifndef HAVE_ESOUND + static pid_t audio_preview_pid = 0; + #endif + +@@ -1747,60 +1749,59 @@ band_select_ended_callback (NautilusIcon + + /* handle the preview signal by inspecting the mime type. For now, we only preview local sound files. */ + ++#ifndef HAVE_ESOUND ++static char * ++get_preview_command (void) ++{ ++ char *command; ++ ++ command = g_find_program_in_path ("totem-audio-preview"); ++ if (command) ++ return command; ++ command = g_find_program_in_path ("gst-launch-0.10"); ++ if (command) { ++ char *new_cmd; ++ ++ new_cmd = g_strdup_printf ("%s playbin uri=fd://0", command); ++ g_free (command); ++ return new_cmd; ++ } ++ ++ return NULL; ++} ++#endif /* !HAVE_ESOUND */ ++ + /* here's the timer task that actually plays the file using mpg123, ogg123 or play. */ + /* FIXME bugzilla.gnome.org 41258: we should get the application from our mime-type stuff */ + static gboolean + play_file (gpointer callback_data) + { +-#if USE_OLD_AUDIO_PREVIEW ++#ifndef HAVE_ESOUND + NautilusFile *file; + FMIconView *icon_view; + FILE *sound_process; + char *file_uri; +- char *suffix; +- char *mime_type; +- const char *command_str; +- gboolean is_mp3; +- gboolean is_ogg; ++ char *command_str; + pid_t mp3_pid; + + GnomeVFSResult result; + GnomeVFSHandle *handle; + char *buffer; +- const char *audio_device = NULL; + GnomeVFSFileSize bytes_read; + +- audio_device = g_getenv ("AUDIODEV"); + icon_view = FM_ICON_VIEW (callback_data); ++ ++ command_str = get_preview_command (); ++ if (command_str == NULL) ++ return FALSE; + + file = icon_view->details->audio_preview_file; + file_uri = nautilus_file_get_uri (file); +- mime_type = nautilus_file_get_mime_type (file); +- is_mp3 = eel_strcasecmp (mime_type, "audio/mpeg") == 0; +- is_ogg = eel_strcasecmp (mime_type, "application/ogg") == 0 || +- eel_strcasecmp (mime_type, "application/x-ogg") == 0; + + mp3_pid = fork (); + if (mp3_pid == (pid_t) 0) { + /* Set the group (session) id to this process for future killing. */ + setsid(); +- if (is_mp3) { +- command_str = "mpg123 -y -q -"; +- } else if (is_ogg) { +- command_str = "ogg123 -q -"; +- } else { +- suffix = strrchr(file_uri, '.'); +- if (suffix == NULL) { +- suffix = "wav"; +- } else { +- suffix += 1; /* skip the period */ +- } +- if (audio_device) { +- command_str = g_strdup_printf("play -d %s -t %s -", audio_device, suffix); +- } else { +- command_str = g_strdup_printf("play -t %s -", suffix); +- } +- } + + /* read the file with gnome-vfs, feeding it to the sound player's standard input */ + /* First, open the file. */ +@@ -1851,10 +1852,10 @@ play_file (gpointer callback_data) + } + + g_free (file_uri); +- g_free (mime_type); ++ g_free (command_str); + + icon_view->details->audio_preview_timeout = 0; +-#else ++#else /* HAVE_ESOUND */ + char *file_path, *file_uri, *mime_type; + gboolean is_mp3; + FMIconView *icon_view; +@@ -1893,13 +1894,13 @@ static void + preview_audio (FMIconView *icon_view, NautilusFile *file, gboolean start_flag) + { + /* Stop current audio playback */ +-#if USE_OLD_AUDIO_PREVIEW ++#ifndef HAVE_ESOUND + if (audio_preview_pid > 0) { + kill (-audio_preview_pid, SIGTERM); + waitpid (audio_preview_pid, NULL, 0); + audio_preview_pid = 0; + } +-#else ++#else /* HAVE_ESOUND */ + if (icon_view->details->audio_player_data != NULL) { + nautilus_audio_player_stop (icon_view->details->audio_player_data); + g_free (icon_view->details->audio_player_data); +@@ -1913,9 +1914,9 @@ preview_audio (FMIconView *icon_view, Na + + if (start_flag) { + icon_view->details->audio_preview_file = file; +-#if USE_OLD_AUDIO_PREVIEW ++#ifndef HAVE_ESOUND + icon_view->details->audio_preview_timeout = g_timeout_add (1000, play_file, icon_view); +-#else ++#else /* HAVE_ESOUND */ + /* FIXME: Need to kill the existing timeout if there is one? */ + icon_view->details->audio_preview_timeout = g_timeout_add (1000, play_file, icon_view); + #endif +@@ -1923,15 +1924,31 @@ preview_audio (FMIconView *icon_view, Na + } + + static gboolean +-should_preview_sound (NautilusFile *file) ++sound_preview_type_supported (NautilusFile *file) + { +- char *uri; ++ char *mime_type; ++ guint i; + +- /* Check gnome config sound preference */ +- if (!gnome_esd_enabled_auto_value) { ++ mime_type = nautilus_file_get_mime_type (file); ++ if (mime_type == NULL) + return FALSE; ++ for (i = 0; i < G_N_ELEMENTS (audio_mime_types); i++) { ++ GnomeVFSMimeEquivalence equivalence = gnome_vfs_mime_type_get_equivalence (mime_type, audio_mime_types[i]); ++ if (equivalence == GNOME_VFS_MIME_IDENTICAL || equivalence == GNOME_VFS_MIME_PARENT) { ++ g_free (mime_type); ++ return TRUE; ++ } + } + ++ g_free (mime_type); ++ return FALSE; ++} ++ ++static gboolean ++should_preview_sound (NautilusFile *file) ++{ ++ char *uri; ++ + uri = nautilus_file_get_uri (file); + if (uri && eel_istr_has_prefix (uri, "burn:")) { + g_free (uri); +@@ -1956,12 +1973,9 @@ can_play_sound (void) + { + int open_result; + +-#if USE_OLD_AUDIO_PREVIEW +- /* first see if there's already one in progress; if so, return true */ +- if (audio_preview_pid > 0) { +- return TRUE; +- } +-#endif ++#ifndef HAVE_ESOUND ++ return TRUE; ++#else /* HAVE_ESOUND */ + + /* Now check and see if system has audio out capabilites */ + open_result = esd_open_sound (NULL); +@@ -1972,6 +1986,7 @@ can_play_sound (void) + esd_close (open_result); + + return TRUE; ++#endif + } + + static int +@@ -1981,25 +1996,17 @@ icon_container_preview_callback (Nautilu + FMIconView *icon_view) + { + int result; +- char *mime_type, *file_name, *message; ++ char *file_name, *message; + + result = 0; + + /* preview files based on the mime_type. */ + /* at first, we just handle sounds */ + if (should_preview_sound (file)) { +- mime_type = nautilus_file_get_mime_type (file); +- +- if ((eel_istr_has_prefix (mime_type, "audio/") +- || eel_istr_has_prefix (mime_type, "application/ogg") +- || eel_istr_has_prefix (mime_type, "application/x-ogg")) +- && eel_strcasecmp (mime_type, "audio/x-pn-realaudio") != 0 +- && eel_strcasecmp (mime_type, "audio/x-mpegurl") != 0 +- && can_play_sound ()) { ++ if (sound_preview_type_supported (file) && can_play_sound ()) { + result = 1; + preview_audio (icon_view, file, start_flag); + } +- g_free (mime_type); + } + + /* Display file name in status area at low zoom levels, since +@@ -2708,10 +2715,6 @@ fm_icon_view_init (FMIconView *icon_view + eel_preferences_add_auto_enum (NAUTILUS_PREFERENCES_PREVIEW_SOUND, + &preview_sound_auto_value); + +- eel_preferences_monitor_directory ("/desktop/gnome/sound"); +- eel_preferences_add_auto_boolean ("/desktop/gnome/sound/enable_esd", +- &gnome_esd_enabled_auto_value); +- + setup_sound_preview = TRUE; + } + +diff --exclude-from=/home/dang/.scripts/diffrc -up -ruN nautilus-2.20.0.orig/src/file-manager/Makefile.am nautilus-2.20.0/src/file-manager/Makefile.am +--- nautilus-2.20.0.orig/src/file-manager/Makefile.am 2007-06-27 03:12:32.000000000 -0400 ++++ nautilus-2.20.0/src/file-manager/Makefile.am 2007-10-29 10:55:00.000000000 -0400 +@@ -38,6 +38,7 @@ libnautilus_file_manager_la_SOURCES= \ + fm-tree-model.h \ + fm-tree-view.c \ + fm-tree-view.h \ ++ nautilus-audio-mime-types.h \ + $(NULL) + + EMPTY_VIEW_SOURCES = \ +diff --exclude-from=/home/dang/.scripts/diffrc -up -ruN nautilus-2.20.0.orig/src/file-manager/nautilus-audio-mime-types.h nautilus-2.20.0/src/file-manager/nautilus-audio-mime-types.h +--- nautilus-2.20.0.orig/src/file-manager/nautilus-audio-mime-types.h 1969-12-31 19:00:00.000000000 -0500 ++++ nautilus-2.20.0/src/file-manager/nautilus-audio-mime-types.h 2007-10-29 10:55:00.000000000 -0400 +@@ -0,0 +1,41 @@ ++/* generated with mime-types-include.sh in the totem module, don't edit or ++ commit in the nautilus module without filing a bug against totem */ ++static char *audio_mime_types[] = { ++"audio/3gpp", ++"audio/ac3", ++"audio/AMR", ++"audio/AMR-WB", ++"audio/basic", ++"audio/mp4", ++"audio/mpeg", ++"audio/mpegurl", ++"audio/ogg", ++"audio/vnd.rn-realaudio", ++"audio/x-ape", ++"audio/x-flac", ++"audio/x-it", ++"audio/x-m4a", ++"audio/x-matroska", ++"audio/x-mod", ++"audio/x-mp3", ++"audio/x-mpeg", ++"audio/x-mpegurl", ++"audio/x-ms-asf", ++"audio/x-ms-asx", ++"audio/x-ms-wax", ++"audio/x-ms-wma", ++"audio/x-musepack", ++"audio/x-pn-aiff", ++"audio/x-pn-au", ++"audio/x-pn-wav", ++"audio/x-pn-windows-acm", ++"audio/x-realaudio", ++"audio/x-real-audio", ++"audio/x-sbc", ++"audio/x-scpls", ++"audio/x-tta", ++"audio/x-wav", ++"audio/x-wav", ++"audio/x-wavpack", ++"audio/x-vorbis", ++}; diff --git a/gnome-base/nautilus/files/nautilus-2.20.0-thumbnail-flashing.patch b/gnome-base/nautilus/files/nautilus-2.20.0-thumbnail-flashing.patch new file mode 100644 index 000000000000..2aabd5769798 --- /dev/null +++ b/gnome-base/nautilus/files/nautilus-2.20.0-thumbnail-flashing.patch @@ -0,0 +1,145 @@ +2007-10-02 Frederic Crozat <fcrozat@mandriva.com> + + Backport from gio-branch, fixes #480608, from + Alexander Larsson <alexl@redhat.com> + +* libnautilus-private/nautilus-icon-factory.c: + Don't clear thumbnails and other absolute pathnames from icon + cache when mime data or icon theme changes. This is to avoid + flashing and async realoading of all thumbnails. + +* libnautilus-private/nautilus-directory-async.c: + (mime_db_changed_callback): + Use the right call to invalidate attributes, so that + they get re-read correctly. +--- libnautilus-private/nautilus-icon-factory.c 2007/10/02 13:28:27 13248 ++++ libnautilus-private/nautilus-icon-factory.c 2007/10/02 13:28:59 13249 +@@ -200,7 +200,7 @@ + const char *modifier, + guint nominal_size, + gboolean force_nominal); +-static void nautilus_icon_factory_clear (void); ++static void nautilus_icon_factory_clear (gboolean clear_pathnames); + + GNOME_CLASS_BOILERPLATE (NautilusIconFactory, + nautilus_icon_factory, +@@ -270,7 +270,7 @@ + { + NautilusIconFactory *factory; + +- nautilus_icon_factory_clear (); ++ nautilus_icon_factory_clear (FALSE); + + factory = user_data; + +@@ -726,9 +726,23 @@ + return TRUE; + } + +-/* Reset the cache to the default state. */ ++static gboolean ++remove_non_pathnames (gpointer _key, gpointer value, gpointer user_data) ++{ ++ CacheKey *key = _key; ++ ++ if (key->name && key->name[0] == '/') { ++ return FALSE; ++ } ++ ++ return TRUE; /* Tell the caller to remove the hash table entry. */ ++} ++ ++/* Reset the cache to the default state. ++ Clear pathnames can be set to FALSE which means we only clear icon names, not ++ absolute pathnames. This is useful to avoid throwing away all loaded thumbnails. */ + static void +-nautilus_icon_factory_clear (void) ++nautilus_icon_factory_clear (gboolean clear_pathnames) + { + NautilusIconFactory *factory; + CircularList *head; +@@ -736,24 +750,25 @@ + factory = get_icon_factory (); + + g_hash_table_foreach_remove (factory->icon_cache, +- remove_all, ++ clear_pathnames ? remove_all : remove_non_pathnames, + NULL); + + /* Empty out the recently-used list. */ + head = &factory->recently_used_dummy_head; + +- /* fallback_icon hangs around, but we don't know if it +- * was ever inserted in the list +- */ +- g_assert (factory->recently_used_count == 0 || +- factory->recently_used_count == 1); +- +- if (factory->recently_used_count == 1) { +- /* make sure this one is the fallback_icon */ +- g_assert (head->next == head->prev); +- g_assert (&factory->fallback_icon->recently_used_node == head->next); ++ if (clear_pathnames) { ++ /* fallback_icon hangs around, but we don't know if it ++ * was ever inserted in the list ++ */ ++ g_assert (factory->recently_used_count == 0 || ++ factory->recently_used_count == 1); ++ if (factory->recently_used_count == 1) { ++ /* make sure this one is the fallback_icon */ ++ g_assert (head->next == head->prev); ++ g_assert (&factory->fallback_icon->recently_used_node == head->next); ++ } + } +- ++ + } + + static void +@@ -806,7 +821,7 @@ + * signal to mean only "thumbnails might have changed" if this ends up being slow + * for some reason. + */ +- nautilus_icon_factory_clear (); ++ nautilus_icon_factory_clear (TRUE); + g_signal_emit (global_icon_factory, + signals[ICONS_CHANGED], 0); + } +@@ -820,7 +835,7 @@ + * signal to mean only "thumbnails might have changed" if this ends up being slow + * for some reason. + */ +- nautilus_icon_factory_clear (); ++ nautilus_icon_factory_clear (TRUE); + g_signal_emit (global_icon_factory, + signals[ICONS_CHANGED], 0); + } +@@ -830,7 +845,7 @@ + { + show_image_thumbs = eel_preferences_get_enum (NAUTILUS_PREFERENCES_SHOW_IMAGE_FILE_THUMBNAILS); + +- nautilus_icon_factory_clear (); ++ nautilus_icon_factory_clear (TRUE); + /* If the user disabled thumbnailing, remove all outstanding thumbnails */ + if (show_image_thumbs == NAUTILUS_SPEED_TRADEOFF_NEVER) { + nautilus_thumbnail_remove_all_from_queue (); +@@ -848,7 +863,7 @@ + /* We don't know which data changed, so we have to assume that + * any or all icons might have changed. + */ +- nautilus_icon_factory_clear (); ++ nautilus_icon_factory_clear (FALSE); + g_signal_emit (get_icon_factory (), + signals[ICONS_CHANGED], 0); + } +--- libnautilus-private/nautilus-directory-async.c 2007/10/02 13:28:27 13248 ++++ libnautilus-private/nautilus-directory-async.c 2007/10/02 13:28:59 13249 +@@ -594,7 +594,7 @@ + NAUTILUS_FILE_ATTRIBUTE_FILE_TYPE | + NAUTILUS_FILE_ATTRIBUTE_DIRECTORY_ITEM_MIME_TYPES; + +- nautilus_directory_invalidate_file_attributes (dir, attrs); ++ nautilus_directory_force_reload_internal (dir, attrs); + } + + void diff --git a/gnome-base/nautilus/nautilus-2.20.0-r1.ebuild b/gnome-base/nautilus/nautilus-2.20.0-r1.ebuild new file mode 100644 index 000000000000..70b30a79a86a --- /dev/null +++ b/gnome-base/nautilus/nautilus-2.20.0-r1.ebuild @@ -0,0 +1,88 @@ +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/gnome-base/nautilus/nautilus-2.20.0-r1.ebuild,v 1.1 2007/10/29 17:28:00 dang Exp $ + +inherit virtualx eutils gnome2 autotools + +DESCRIPTION="A file manager for the GNOME desktop" +HOMEPAGE="http://www.gnome.org/projects/nautilus/" + +LICENSE="GPL-2 LGPL-2 FDL-1.1" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd" +IUSE="beagle esd gnome tracker" +# cups flac gstreamer mad ogg vorbis + +RDEPEND=">=media-libs/libart_lgpl-2.3.10 + >=gnome-base/libbonobo-2.1 + >=gnome-base/eel-2.15.92 + esd? ( >=media-sound/esound-0.2.27 ) + >=dev-libs/glib-2.13 + >=gnome-base/gnome-desktop-2.9.91 + >=gnome-base/libgnome-2.14.0 + >=gnome-base/libgnomeui-2.6 + >=gnome-base/gnome-vfs-2.19.3 + >=gnome-base/orbit-2.4 + >=x11-libs/pango-1.1.2 + >=x11-libs/gtk+-2.11.6 + >=gnome-base/librsvg-2.0.1 + >=dev-libs/libxml2-2.4.7 + >=x11-libs/startup-notification-0.8 + >=media-libs/libexif-0.5.12 + >=gnome-base/gconf-2 + media-libs/audiofile + beagle? ( >=app-misc/beagle-0.0.12 ) + x86? ( tracker? ( >=app-misc/tracker-0.0.1 ) ) + x11-libs/libICE + x11-libs/libSM + x11-proto/xproto + virtual/eject" +# !gstreamer? ( vorbis? ( media-sound/vorbis-tools ) ) +# gstreamer? ( +# >=media-libs/gstreamer-0.8 +# >=media-libs/gst-plugins-0.8 +# >=media-plugins/gst-plugins-gnomevfs-0.8 +# mad? ( >=media-plugins/gst-plugins-mad-0.8 ) +# ogg? ( >=media-plugins/gst-plugins-ogg-0.8 ) +# vorbis? ( >=media-plugins/gst-plugins-vorbis-0.8 ) +# flac? ( >=media-plugins/gst-plugins-flac-0.8 ) )" +DEPEND="${RDEPEND} + sys-devel/gettext + >=dev-util/intltool-0.35 + >=dev-util/pkgconfig-0.9" +PDEPEND="gnome? ( >=x11-themes/gnome-icon-theme-1.1.91 )" + +DOCS="AUTHORS ChangeLog* HACKING MAINTAINERS NEWS README THANKS TODO" + +pkg_setup() { + G2CONF="--disable-update-mimedb $(use_enable beagle) $(use_enable tracker) $(use_enable esd esound)" +} + +src_unpack() { + gnome2_src_unpack + epatch "${FILESDIR}/${P}-sound-preview-cleanup.patch" + epatch "${FILESDIR}/${P}-statfs.patch" + + # Patches from unreleased 2.20.1 + epatch "${FILESDIR}/${P}-async-thumbnail-framing.patch" + epatch "${FILESDIR}/${P}-thumbnail-flashing.patch" + epatch "${FILESDIR}/${P}-small-font-crasher.patch" + + eautoreconf +} + +src_test() { + addwrite "/root/.gnome2_private" + Xmake check || die "Test phase failed" +} + +pkg_postinst() { + gnome2_pkg_postinst + + elog "nautilus now has three ways of previewing sound. First, if the esd" + elog "USE flag is given, it will attempt to play directly via esd. If" + elog "the esd USE flag is *not* given, it will attempt to use totem to" + elog "play the sound. If totem is not installed, it will attempt to use" + elog "gstreamer 10.x to play the sound. If gstreamer 10.x is not installed" + elog "it will fail to preview the sound." +} |