toolkit-download-folder.patch
changeset 716 cef565f1c325
parent 251 4c9ebbedd59c
child 837 a1f740acf68e
--- 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,