]> git.eshelyaron.com Git - emacs.git/commitdiff
Add 'eww-default-download-directory'.
authorXi Lu <lx@shellcodes.org>
Sat, 25 Mar 2023 13:38:48 +0000 (21:38 +0800)
committerEli Zaretskii <eliz@gnu.org>
Sun, 26 Mar 2023 11:41:55 +0000 (14:41 +0300)
* lisp/net/eww.el (eww-default-download-directory): New defcustom.
(eww--download-directory): Use it.  (Bug#62435)

lisp/net/eww.el

index 859a9b44bcb647a590bf14f03a12f6626e735115..9552138bb6e0c80567bcb9b1335cd2f76b53eac7 100644 (file)
@@ -64,16 +64,21 @@ The action to be taken can be further customized via
   :version "28.1"
   :type 'regexp)
 
+(defcustom eww-default-download-directory "~/Downloads/"
+  "The default directory where downloaded files will be saved."
+  :version "30.1"
+  :group 'eww
+  :type 'string)
+
 (defun eww--download-directory ()
-  "Return the name of the download directory.
-If ~/Downloads/ exists, that will be used, and if not, the
-DOWNLOAD XDG user directory will be returned.  If that's
-undefined, ~/Downloads/ is returned anyway."
-  (or (and (file-exists-p "~/Downloads/")
-           "~/Downloads/")
+  "Return the name of the download directory based on the value of
+`eww-default-download-directory'. If the specified directory exists, it
+ will be used. Otherwise, the DOWNLOAD XDG user directory will be returned."
+  (or (and (file-exists-p eww-default-download-directory)
+           eww-default-download-directory)
       (when-let ((dir (xdg-user-dir "DOWNLOAD")))
         (file-name-as-directory dir))
-      "~/Downloads/"))
+      eww-default-download-directory))
 
 (defcustom eww-download-directory 'eww--download-directory
   "Directory where files will downloaded.