Index: src/popup-commands.c
===================================================================
--- src/popup-commands.c	(revision 6768)
+++ src/popup-commands.c	(working copy)
@@ -173,15 +173,29 @@
 	if (!(ephy_embed_persist_get_flags (persist) & 
 				EPHY_EMBED_PERSIST_ASK_DESTINATION))
 	{
-		const char *dest;
+		const char *dest, *desktop, *dest_parent;
 		guint32 user_time;
+		GnomeVFSURI *parent, *uri;
 
 		user_time = ephy_embed_persist_get_user_time (persist);
 		dest = ephy_embed_persist_get_dest (persist);
 		g_return_if_fail (dest != NULL);
 
-		eel_gconf_get_string (CONF_STATE_DOWNLOAD_DIR);
-		ephy_file_browse_to (dest, user_time);
+		desktop = ephy_file_desktop_dir ();
+
+		/* Where are we going to save */
+		uri = gnome_vfs_uri_new (dest);
+		parent = gnome_vfs_uri_get_parent (uri);
+		dest_parent = gnome_vfs_uri_get_path (parent);
+
+		g_print("desktop: %s; dest: %s;\n", desktop, dest);
+
+		/* If save location is the desktop, don't open it */
+		if (!g_str_equal (desktop, dest_parent))
+			ephy_file_browse_to (dest, user_time);
+
+		gnome_vfs_uri_unref (uri);
+		gnome_vfs_uri_unref (parent);
 	}
 }
 
