|
@@ -8958,20 +8958,22 @@ The prefix arg is passed through to the command if possible."
|
|
|
(setq cmd `(org-agenda-set-tags ,tag ,(if (eq action ?+) ''on ''off))))
|
|
|
|
|
|
((memq action '(?s ?d))
|
|
|
- (let* ((date (unless arg
|
|
|
- (or org-overriding-default-time
|
|
|
- (org-read-date
|
|
|
+ (let* ((date
|
|
|
+ (unless arg
|
|
|
+ (or org-overriding-default-time
|
|
|
+ (and (org-read-date
|
|
|
nil nil nil
|
|
|
- (if (eq action ?s) "(Re)Schedule to" "(Re)Set Deadline to")
|
|
|
- nil (format-time-string (car org-time-stamp-formats)
|
|
|
- (org-get-cursor-date))))))
|
|
|
- (ans (if arg nil org-read-date-final-answer))
|
|
|
+ (if (eq action ?s) "(Re)Schedule to" "(Re)Set Deadline to"))
|
|
|
+ (or (ignore-errors
|
|
|
+ (org-time-string-to-time org-read-date-final-answer))
|
|
|
+ (current-time))))))
|
|
|
+ (date (format-time-string (car org-time-stamp-formats) date))
|
|
|
(c1 (if (eq action ?s) 'org-agenda-schedule 'org-agenda-deadline)))
|
|
|
(setq cmd `(let* ((bound (fboundp 'read-string))
|
|
|
(old (and bound (symbol-function 'read-string))))
|
|
|
(unwind-protect
|
|
|
(progn
|
|
|
- (fset 'read-string (lambda (&rest ignore) ,ans))
|
|
|
+ (fset 'read-string (lambda (&rest ignore) ,date))
|
|
|
(eval '(,c1 arg)))
|
|
|
(if bound
|
|
|
(fset 'read-string old)
|