(defmethod (zmail-window :around :process-special-command) (cont mt args &rest ignore) ;used to have TYPE arg after ARGS. (let ((string (copy-array-contents-and-leader "Click the mouse on a message line to save editing changes and jump to this message." (make-string 95.)))) (setf (get 'ZMAIL-SUMMARY-MOUSE :WHO-LINE-DOCUMENTATION) string) (let ((item (cdr args))) (selectq (car-safe item) (zwei:summary-mouse ;; We really can't handle menu commands when we're composing mail or replying, because ;; many of the commands refer to the current messsage, and so on. (progn (zmail-select-msg (msg-displayed-index (cadadr item))) (com-quit-zmail-edit))) (:menu ; blip type (if (fquery '(:type :tyi) "To execute the command /"~A/", ~ you must first return from editing this message.~ ~%Return from editing this message now? " (car (second item))) (progn (cleanup-message-window) (format *query-io* "Click again to execute the /"~A/" command" (car (second item))) (com-quit-zmail-edit)) (format *query-io* "Type ~\lozenged-character\ to abort, or ~\lozenged-character\ to save ~ and return from editing this message." #/Abort #/End))) (read-background-response-queue ;;Gross crock! This command manages to filter through here, and ZWEI doesnt have ;; a handler, so it bombs. Right thing is to ignore it here so it filters ;; thru the main loop. --rg 12/08/86 nil) (otherwise (lexpr-funcall-with-mapping-table cont mt args))))))