--- a/toolkit-download-folder.patch Sun Apr 13 16:54:09 2014 +0200
+++ b/toolkit-download-folder.patch Mon Apr 14 09:09:11 2014 +0200
@@ -6,7 +6,12 @@
diff --git a/browser/components/preferences/main.js b/browser/components/preferences/main.js
--- a/browser/components/preferences/main.js
+++ b/browser/components/preferences/main.js
-@@ -344,7 +344,7 @@ var gMainPane = {
+@@ -290,17 +290,17 @@ var gMainPane = {
+ // and was available as an option in the 1.5 drop down. On XP this
+ // was in My Documents, on OSX it was in User Docs. In 2.0, we did
+ // away with the drop down option, although the special label was
+ // still supported for the folder if it existed. Because it was
+ // not exposed it was rarely used.
// With 3.0, a new desktop folder - 'Downloads' was introduced for
// platforms and versions that don't support a default system downloads
// folder. See nsDownloadManager for details.
@@ -15,14 +20,24 @@
iconUrlSpec = fph.getURLSpecFromFile(this._indexToFolder(1));
} else {
// 'Desktop'
+ downloadFolder.label = bundlePreferences.getString("desktopFolderName");
+ iconUrlSpec = fph.getURLSpecFromFile(this._getDownloadsFolder("Desktop"));
+ }
+ downloadFolder.image = "moz-icon://" + iconUrlSpec + "?size=16";
+
diff --git a/toolkit/components/downloads/nsDownloadManager.cpp b/toolkit/components/downloads/nsDownloadManager.cpp
--- a/toolkit/components/downloads/nsDownloadManager.cpp
+++ b/toolkit/components/downloads/nsDownloadManager.cpp
-@@ -1269,8 +1269,10 @@ nsDownloadManager::GetDefaultDownloadsDi
+@@ -1365,18 +1365,20 @@ nsDownloadManager::GetDefaultDownloadsDi
+ // Vista:
+ // Downloads
+ // XP/2K:
+ // My Documents/Downloads
+ // Linux:
// XDG user dir spec, with a fallback to Home/Downloads
nsXPIDLString folderName;
-- mBundle->GetStringFromName(NS_LITERAL_STRING("downloadsFolder").get(),
+- mBundle->GetStringFromName(MOZ_UTF16("downloadsFolder"),
- getter_Copies(folderName));
+ // We don't want localized "Downloads" unless XDG is used
+ //mBundle->GetStringFromName(NS_LITERAL_STRING("downloadsFolder").get(),
@@ -31,3 +46,8 @@
#if defined (XP_MACOSX)
rv = dirService->Get(NS_OSX_DEFAULT_DOWNLOAD_DIR,
+ NS_GET_IID(nsIFile),
+ getter_AddRefs(downloadDir));
+ NS_ENSURE_SUCCESS(rv, rv);
+ #elif defined(XP_WIN)
+ rv = dirService->Get(NS_WIN_DEFAULT_DOWNLOAD_DIR,