--- nautilus-2.30.1/libnautilus-private/apps_nautilus_preferences.schemas.in-orig	2010-06-29 14:52:32.523767583 -0500
+++ nautilus-2.30.1/libnautilus-private/apps_nautilus_preferences.schemas.in	2010-06-29 14:55:16.878722835 -0500
@@ -599,6 +599,17 @@ most cases, this should be left alone. S
       </locale>
     </schema>
 
+    <schema>
+      <key>/schemas/apps/nautilus/preferences/background_fade</key>
+      <applyto>/apps/nautilus/preferences/background_fade</applyto>
+      <owner>nautilus</owner>
+      <type>bool</type>
+      <default>true</default>
+      <locale name="C">
+         <short>Fade Background Transition</short>
+         <long>If true, a background fade transition is used.</long>
+      </locale>
+    </schema>
 
     <schema>
       <key>/schemas/apps/nautilus/preferences/side_pane_background_set</key>
--- nautilus-2.30.1/eel/eel-background.c-orig	2010-07-06 19:01:46.392468696 -0500
+++ nautilus-2.30.1/eel/eel-background.c	2010-07-06 19:15:38.145714033 -0500
@@ -83,6 +83,7 @@ struct EelBackgroundDetails {
 	GdkPixmap *background_pixmap;
 	gboolean background_pixmap_is_unset_root_pixmap;
 	GnomeBGCrossfade *fade;
+	gboolean do_fade;
 	int background_entire_width;
 	int background_entire_height;
 	GdkColor default_color;
@@ -175,6 +176,7 @@ eel_background_init (gpointer object, gp
 	background->details->default_color.blue = 0xffff;
 	background->details->bg = gnome_bg_new ();
 	background->details->is_active = TRUE;
+	background->details->do_fade = TRUE;
 
 	g_signal_connect (background->details->bg, "changed",
 			  G_CALLBACK (on_bg_changed), background);
@@ -588,6 +590,13 @@ eel_background_set_color (EelBackground 
 	}
 }
 
+void
+eel_background_set_fade (EelBackground *background,
+			  gboolean use_fade)
+{
+	background->details->do_fade = use_fade;
+}
+
 static gboolean
 eel_background_set_image_uri_helper (EelBackground *background,
 				     const char *image_uri,
@@ -821,6 +830,10 @@ init_fade (EelBackground *background, Gt
 		return;
 	}
 
+	if (background->details->do_fade == FALSE) {
+		return;
+	}
+
 	if (background->details->fade == NULL) {
 		int old_width, old_height, width, height;
 
--- nautilus-2.30.1/eel/eel-background.h-orig	2010-07-06 19:01:53.567007405 -0500
+++ nautilus-2.30.1/eel/eel-background.h	2010-07-06 19:03:33.254989697 -0500
@@ -81,6 +81,8 @@ void                        eel_backgrou
 void                        eel_background_set_image_uri                    (EelBackground               *background,
 									     const char                  *image_uri);
 
+void                        eel_background_set_fade                         (EelBackground               *background,
+									     gboolean                    use_fade);
 void                        eel_background_reset                            (EelBackground               *background);
 void                        eel_background_set_image_placement              (EelBackground               *background,
 									     EelBackgroundImagePlacement  placement);
--- nautilus-2.30.1/libnautilus-private/nautilus-directory-background.c-orig	2010-07-06 18:51:08.541060728 -0500
+++ nautilus-2.30.1/libnautilus-private/nautilus-directory-background.c	2010-07-06 19:18:56.681383081 -0500
@@ -441,6 +441,7 @@ initialize_background_from_settings (Nau
 {
         char *color;
         char *image;
+        gboolean fade;
 	EelBackgroundImagePlacement placement;
 	
         g_assert (NAUTILUS_IS_FILE (file));
@@ -448,6 +449,9 @@ initialize_background_from_settings (Nau
         g_assert (g_object_get_data (G_OBJECT (background), "eel_background_file")
                   == file);
 
+        fade = eel_preferences_get_boolean
+                (NAUTILUS_PREFERENCES_BACKGROUND_FADE);
+
 	if (eel_background_is_desktop (background)) {
                 nautilus_file_background_read_desktop_settings (&color, &image, &placement);
 	} else {
@@ -477,6 +481,7 @@ initialize_background_from_settings (Nau
         eel_background_set_color (background, color);
         eel_background_set_image_uri (background, image);
         eel_background_set_image_placement (background, placement);
+        eel_background_set_fade (background, fade);
         
 	/* Unblock the handler. */
         g_signal_handlers_unblock_by_func
--- nautilus-2.30.1/libnautilus-private/nautilus-global-preferences.h-orig	2010-07-06 18:57:54.262721921 -0500
+++ nautilus-2.30.1/libnautilus-private/nautilus-global-preferences.h	2010-07-06 18:58:47.315740074 -0500
@@ -40,6 +40,7 @@ G_BEGIN_DECLS
 #define NAUTILUS_PREFERENCES_BACKGROUND_SET                     "preferences/background_set" 
 #define NAUTILUS_PREFERENCES_BACKGROUND_COLOR                   "preferences/background_color" 
 #define NAUTILUS_PREFERENCES_BACKGROUND_FILENAME                "preferences/background_filename" 
+#define NAUTILUS_PREFERENCES_BACKGROUND_FADE                    "preferences/background_fade"
 
 /* Side Pane Background options */
 #define NAUTILUS_PREFERENCES_SIDE_PANE_BACKGROUND_SET                     "preferences/side_pane_background_set" 
