diff options
author | Kenichi Handa <handa@m17n.org> | 2011-01-14 13:08:30 +0900 |
---|---|---|
committer | Kenichi Handa <handa@m17n.org> | 2011-01-14 13:08:30 +0900 |
commit | 66399c0a66e87c20edad6a7eb2474981d9bc7e4e (patch) | |
tree | 9998842124f34c1c0e75d6f9b796fd690ed2ea6d /lisp | |
parent | 1a6a03e4a30d48bdbb3f188c7de0c0ab09e16992 (diff) | |
parent | c88aaf48b207664ac714d161061488c86b0963d9 (diff) | |
download | emacs-66399c0a66e87c20edad6a7eb2474981d9bc7e4e.tar.gz |
merge emacs-23
Diffstat (limited to 'lisp')
-rw-r--r-- | lisp/ChangeLog | 4 | ||||
-rw-r--r-- | lisp/gnus/ChangeLog | 4 | ||||
-rw-r--r-- | lisp/gnus/message.el | 28 | ||||
-rw-r--r-- | lisp/subr.el | 29 |
4 files changed, 53 insertions, 12 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 9ed8ee80c89..0f6138bf698 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -9,6 +9,10 @@ (rmail-show-mime): If only a header part was decoded, find the coding system while ignoring mm-charset-override-alist. +2011-01-13 Chong Yidong <cyd@stupidchicken.com> + + * subr.el (event-start, event-end): Doc fix (Bug#7826). + 2011-01-12 Kenichi Handa <handa@m17n.org> * mail/rmailmm.el (rmail-mime-next-item) diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index 6a363c0b4f1..eecbe978c29 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog @@ -1,3 +1,7 @@ +2011-01-13 Chong Yidong <cyd@stupidchicken.com> + + * message.el (message-bury): Add special-case handling for Rmail. + 2011-01-12 Glenn Morris <rgm@gnu.org> * message.el (message-mail): A compose-mail function should diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el index 0ea0df46060..63fcf500189 100644 --- a/lisp/gnus/message.el +++ b/lisp/gnus/message.el @@ -4023,12 +4023,32 @@ Instead, just auto-save the buffer and then bury it." (defun message-bury (buffer) "Bury this mail BUFFER." - (let ((newbuf (other-buffer buffer))) - (bury-buffer buffer) - (if (and (window-dedicated-p (selected-window)) + (let ((newbuf (other-buffer (current-buffer)))) + (bury-buffer (current-buffer)) + (if (and (window-dedicated-p (frame-selected-window)) (not (null (delq (selected-frame) (visible-frame-list))))) (delete-frame (selected-frame)) - (switch-to-buffer newbuf)))) + ;; Temporary hack to make this behave like `mail-bury', when + ;; used with Rmail. Replaced in Emacs 24 with + (let (rmail-flag summary-buffer) + (and (not (one-window-p)) + (with-current-buffer + (window-buffer (next-window (selected-window) 'not)) + (setq rmail-flag (eq major-mode 'rmail-mode)) + (setq summary-buffer + (and (if (boundp 'mail-bury-selects-summary) + mail-bury-selects-summary + t) + (boundp 'rmail-summary-buffer) + rmail-summary-buffer + (buffer-name rmail-summary-buffer) + (not (get-buffer-window rmail-summary-buffer)) + rmail-summary-buffer)))) + (if rmail-flag + ;; If the Rmail buffer has a summary, show that. + (if summary-buffer (switch-to-buffer summary-buffer) + (delete-window)) + (switch-to-buffer newbuf)))))) (defun message-send (&optional arg) "Send the message in the current buffer. diff --git a/lisp/subr.el b/lisp/subr.el index d8618172103..7ddabbc0e90 100644 --- a/lisp/subr.el +++ b/lisp/subr.el @@ -854,24 +854,37 @@ in the current Emacs session, then this function may return nil." (defsubst event-start (event) "Return the starting position of EVENT. -If EVENT is a mouse or key press or a mouse click, this returns the location -of the event. -If EVENT is a drag, this returns the drag's starting position. -The return value is of the form +EVENT should be a click, drag, or key press event. +If it is a key press event, the return value has the form + (WINDOW POS (0 . 0) 0) +If it is a click or drag event, it has the form (WINDOW AREA-OR-POS (X . Y) TIMESTAMP OBJECT POS (COL . ROW) IMAGE (DX . DY) (WIDTH . HEIGHT)) -The `posn-' functions access elements of such lists." +The `posn-' functions access elements of such lists. +For more information, see Info node `(elisp)Click Events'. + +If EVENT is a mouse or key press or a mouse click, this is the +position of the event. If EVENT is a drag, this is the starting +position of the drag." (if (consp event) (nth 1 event) (list (selected-window) (point) '(0 . 0) 0))) (defsubst event-end (event) "Return the ending location of EVENT. EVENT should be a click, drag, or key press event. -If EVENT is a click event, this function is the same as `event-start'. -The return value is of the form +If EVENT is a key press event, the return value has the form + (WINDOW POS (0 . 0) 0) +If EVENT is a click event, this function is the same as +`event-start'. For click and drag events, the return value has +the form (WINDOW AREA-OR-POS (X . Y) TIMESTAMP OBJECT POS (COL . ROW) IMAGE (DX . DY) (WIDTH . HEIGHT)) -The `posn-' functions access elements of such lists." +The `posn-' functions access elements of such lists. +For more information, see Info node `(elisp)Click Events'. + +If EVENT is a mouse or key press or a mouse click, this is the +position of the event. If EVENT is a drag, this is the starting +position of the drag." (if (consp event) (nth (if (consp (nth 2 event)) 2 1) event) (list (selected-window) (point) '(0 . 0) 0))) |