--- src/share-extension.c.orig	2010-03-10 01:18:43.473368596 -0600
+++ src/share-extension.c	2010-03-10 01:47:24.134363459 -0600
@@ -27,11 +27,13 @@
 #include <string.h>
 #include <glib/gi18n-lib.h>
 #include <gtk/gtk.h>
+#include <gconf/gconf-client.h>
 #include <libnautilus-extension/nautilus-menu-provider.h>
 #include <libnautilus-extension/nautilus-location-widget-provider.h>
 
 #include "nautilus-share-bar.h"
 #include "user_share-common.h"
+#include "user_share-private.h"
 
 #define NAUTILUS_TYPE_SHARE  (nautilus_share_get_type ())
 #define NAUTILUS_SHARE(o)    (G_TYPE_CHECK_INSTANCE_CAST ((o), NAUTILUS_TYPE_SHARE, NautilusShare))
@@ -133,6 +135,7 @@
                                    const char                     *uri,
                                    GtkWidget                      *window)
 {
+    GConfClient *client;
 	GFile         *file;
 	GtkWidget     *bar;
 	NautilusShare *share;
@@ -140,6 +143,7 @@
 	gboolean       enable = FALSE;
 	const GUserDirectory special_dirs[] = { G_USER_DIRECTORY_PUBLIC_SHARE, G_USER_DIRECTORY_DOWNLOAD };
 	gboolean is_dir[] = { FALSE, FALSE };
+    gboolean downloads_share_bar_enabled;
 
 	file = g_file_new_for_uri (uri);
 
@@ -156,6 +160,15 @@
 	if (enable == FALSE)
 		return NULL;
 
+    client = gconf_client_get_default ();
+
+    downloads_share_bar_enabled = gconf_client_get_bool (client,
+                                   FILE_SHARING_BLUETOOTH_DOWNLOADS_SHARE_BAR_ENABLED,
+                                   NULL);
+
+    if (is_dir[1] != FALSE && !downloads_share_bar_enabled)
+        return NULL;
+
 	share = NAUTILUS_SHARE (iface);
 
 	if (is_dir[0] != FALSE && is_dir[1] != FALSE) {
