- (children (car (mime-entity-children entity))))
- (set-buffer (get-buffer-create new-name))
- (erase-buffer)
- (mime-insert-entity children)
- (setq mime-message-structure children)
- (setq major-mode 'mime-show-message-mode)
- (mime-view-buffer (current-buffer) nil mother
- nil (if (mime-entity-cooked-p entity) 'cooked))
- ))
+ (children (car (mime-entity-children entity)))
+ (preview-buffer
+ (mime-display-message
+ children new-name mother nil
+ (cdr (assq 'major-mode
+ (get-text-property (point) 'mime-view-situation))))))
+ (or (get-buffer-window preview-buffer)
+ (let ((m-win (get-buffer-window mother)))
+ (if m-win
+ (set-window-buffer m-win preview-buffer)
+ (switch-to-buffer preview-buffer)
+ )))))