[Accepted] [Orgmode] org-mhe-store-link alters window layout

2011-02-08 Thread Bastien Guerry
Patch 584 (http://patchwork.newartisans.com/patch/584/) is now "Accepted".

Maintainer comment: none

This relates to the following submission:

http://mid.gmane.org/%3C1337.1297074568%40maps%3E

Here is the original message containing the patch:

> Content-Type: text/plain; charset="utf-8"
> MIME-Version: 1.0
> Content-Transfer-Encoding: 7bit
> Subject: [Orgmode] org-mhe-store-link alters window layout
> Date: Mon, 07 Feb 2011 15:29:28 -
> From: Stephen Eglen 
> X-Patchwork-Id: 584
> Message-Id: <1337.1297074568@maps>
> To: emacs-orgmode@gnu.org
> Cc: thomas.baum...@ch.tum.de, Stephen Eglen 
> 
> If I run M-x org-store-link when my current emacs frame is just showing
> one MH-E window (and nothing else in the frame), e.g. the "show-+inbox"
> buffer, then the link to that email is created okay, but the window
> frames are altered so that the +inbox summary window is also shown.
> In general, the previous window contents are forgotten.  I suggest
> adding a 'save-window-excursion' into org-mhe-store-link so that the
> window arrangement is preserved on exit from the function.
> 
> Patch below is long just because of the extra indentation.
> 
> Stephen
> 
> 
> diff --git a/lisp/org-mhe.el b/lisp/org-mhe.el
> index c384062..c9b0481 100644
> --- a/lisp/org-mhe.el
> +++ b/lisp/org-mhe.el
> @@ -83,27 +83,28 @@ supported by MH-E."
>"Store a link to an MH-E folder or message."
>(when (or (equal major-mode 'mh-folder-mode)
>   (equal major-mode 'mh-show-mode))
> -(let* ((from (org-mhe-get-header "From:"))
> -(to (org-mhe-get-header "To:"))
> -(message-id (org-mhe-get-header "Message-Id:"))
> -(subject (org-mhe-get-header "Subject:"))
> -(date (org-mhe-get-header "Date:"))
> -(date-ts (and date (format-time-string
> -(org-time-stamp-format t) (date-to-time date
> -(date-ts-ia (and date (format-time-string
> -   (org-time-stamp-format t t)
> -   (date-to-time date
> -link desc)
> -  (org-store-link-props :type "mh" :from from :to to
> - :subject subject :message-id message-id)
> -  (when date
> - (org-add-link-props :date date :date-timestamp date-ts
> - :date-timestamp-inactive date-ts-ia))
> -  (setq desc (org-email-link-description))
> -  (setq link (org-make-link "mhe:" (org-mhe-get-message-real-folder) "#"
> - (org-remove-angle-brackets message-id)))
> -  (org-add-link-props :link link :description desc)
> -  link)))
> +(save-window-excursion
> +  (let* ((from (org-mhe-get-header "From:"))
> +  (to (org-mhe-get-header "To:"))
> +  (message-id (org-mhe-get-header "Message-Id:"))
> +  (subject (org-mhe-get-header "Subject:"))
> +  (date (org-mhe-get-header "Date:"))
> +  (date-ts (and date (format-time-string
> +  (org-time-stamp-format t) (date-to-time 
> date
> +  (date-ts-ia (and date (format-time-string
> + (org-time-stamp-format t t)
> + (date-to-time date
> +  link desc)
> + (org-store-link-props :type "mh" :from from :to to
> +   :subject subject :message-id message-id)
> + (when date
> +   (org-add-link-props :date date :date-timestamp date-ts
> +   :date-timestamp-inactive date-ts-ia))
> + (setq desc (org-email-link-description))
> + (setq link (org-make-link "mhe:" (org-mhe-get-message-real-folder) "#"
> +   (org-remove-angle-brackets message-id)))
> + (org-add-link-props :link link :description desc)
> + link
>  
>  (defun org-mhe-open (path)
>"Follow an MH-E message link specified by PATH."
> 

___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] org-mhe-store-link alters window layout

2011-02-07 Thread Stephen Eglen
If I run M-x org-store-link when my current emacs frame is just showing
one MH-E window (and nothing else in the frame), e.g. the "show-+inbox"
buffer, then the link to that email is created okay, but the window
frames are altered so that the +inbox summary window is also shown.
In general, the previous window contents are forgotten.  I suggest
adding a 'save-window-excursion' into org-mhe-store-link so that the
window arrangement is preserved on exit from the function.

Patch below is long just because of the extra indentation.

Stephen

diff --git a/lisp/org-mhe.el b/lisp/org-mhe.el
index c384062..c9b0481 100644
--- a/lisp/org-mhe.el
+++ b/lisp/org-mhe.el
@@ -83,27 +83,28 @@ supported by MH-E."
   "Store a link to an MH-E folder or message."
   (when (or (equal major-mode 'mh-folder-mode)
(equal major-mode 'mh-show-mode))
-(let* ((from (org-mhe-get-header "From:"))
-  (to (org-mhe-get-header "To:"))
-  (message-id (org-mhe-get-header "Message-Id:"))
-  (subject (org-mhe-get-header "Subject:"))
-  (date (org-mhe-get-header "Date:"))
-  (date-ts (and date (format-time-string
-  (org-time-stamp-format t) (date-to-time date
-  (date-ts-ia (and date (format-time-string
- (org-time-stamp-format t t)
- (date-to-time date
-  link desc)
-  (org-store-link-props :type "mh" :from from :to to
-   :subject subject :message-id message-id)
-  (when date
-   (org-add-link-props :date date :date-timestamp date-ts
-   :date-timestamp-inactive date-ts-ia))
-  (setq desc (org-email-link-description))
-  (setq link (org-make-link "mhe:" (org-mhe-get-message-real-folder) "#"
-   (org-remove-angle-brackets message-id)))
-  (org-add-link-props :link link :description desc)
-  link)))
+(save-window-excursion
+  (let* ((from (org-mhe-get-header "From:"))
+(to (org-mhe-get-header "To:"))
+(message-id (org-mhe-get-header "Message-Id:"))
+(subject (org-mhe-get-header "Subject:"))
+(date (org-mhe-get-header "Date:"))
+(date-ts (and date (format-time-string
+(org-time-stamp-format t) (date-to-time 
date
+(date-ts-ia (and date (format-time-string
+   (org-time-stamp-format t t)
+   (date-to-time date
+link desc)
+   (org-store-link-props :type "mh" :from from :to to
+ :subject subject :message-id message-id)
+   (when date
+ (org-add-link-props :date date :date-timestamp date-ts
+ :date-timestamp-inactive date-ts-ia))
+   (setq desc (org-email-link-description))
+   (setq link (org-make-link "mhe:" (org-mhe-get-message-real-folder) "#"
+ (org-remove-angle-brackets message-id)))
+   (org-add-link-props :link link :description desc)
+   link
 
 (defun org-mhe-open (path)
   "Follow an MH-E message link specified by PATH."



___
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode