Merge from gnus--rel--5.10
[gnus] / lisp / mml.el
index 157b748..c17f1f8 100644 (file)
@@ -40,9 +40,7 @@
   (autoload 'message-mark-active-p "message")
   (autoload 'message-info "message")
   (autoload 'fill-flowed-encode "flow-fill")
-  (autoload 'message-posting-charset "message"))
-
-(eval-when-compile
+  (autoload 'message-posting-charset "message")
   (autoload 'dnd-get-local-file-name "dnd"))
 
 (defvar gnus-article-mime-handles)
@@ -54,6 +52,7 @@
 (defvar message-posting-charset)
 (defvar message-required-mail-headers)
 (defvar message-required-news-headers)
+(defvar dnd-protocol-alist)
 
 (defcustom mml-content-type-parameters
   '(name access-type expiration size permission format)
@@ -1006,8 +1005,7 @@ See Info node `(emacs-mime)Composing'.
     (easy-menu-add mml-menu mml-mode-map)
     (when (boundp 'dnd-protocol-alist)
       (set (make-local-variable 'dnd-protocol-alist)
-          (append mml-dnd-protocol-alist
-                  (symbol-value 'dnd-protocol-alist))))
+          (append mml-dnd-protocol-alist dnd-protocol-alist)))
     (run-hooks 'mml-mode-hook)))
 
 ;;;
@@ -1015,9 +1013,18 @@ See Info node `(emacs-mime)Composing'.
 ;;; inserting stuff to the buffer.
 ;;;
 
+(defcustom mml-default-directory mm-default-directory
+  "The default directory where mml will find files.
+If not set, `default-directory' will be used."
+  :type '(choice directory (const :tag "Default" nil))
+  :version "23.0" ;; No Gnus
+  :group 'message)
+
 (defun mml-minibuffer-read-file (prompt)
   (let* ((completion-ignored-extensions nil)
-        (file (read-file-name prompt nil nil t)))
+        (file (read-file-name prompt
+                              (or mml-default-directory default-directory)
+                              nil t)))
     ;; Prevent some common errors.  This is inspired by similar code in
     ;; VM.
     (when (file-directory-p file)
@@ -1114,7 +1121,7 @@ See `dnd-protocol-alist' for more information.  When nil, behave
 as in other buffers."
   :type '(choice (repeat (cons (regexp) (function)))
                 (const :tag "Behave as in other buffers" nil))
-  :version "23.0" ;; No Gnus
+  :version "22.1" ;; Gnus 5.10.9
   :group 'message)
 
 (defcustom mml-dnd-attach-options nil
@@ -1132,7 +1139,7 @@ to specify options."
                (const type)
                (const description)
                (const disposition))))
-  :version "23.0" ;; No Gnus
+  :version "22.1" ;; Gnus 5.10.9
   :group 'message)
 
 (defun mml-attach-file (file &optional type description disposition)