summaryrefslogtreecommitdiff
path: root/lisp/term
diff options
context:
space:
mode:
authorYAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>2007-01-15 08:10:22 +0000
committerYAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>2007-01-15 08:10:22 +0000
commit025a24b5bcc2c70a28ed208b45cdb7bfc1d6d7a1 (patch)
tree736f6855562f95a18737c465ee371a154663ace4 /lisp/term
parent00d972ebb6253b3f32732cd7b5d202252100b9bf (diff)
downloademacs-025a24b5bcc2c70a28ed208b45cdb7bfc1d6d7a1.tar.gz
(mac-ae-quit-application): New function.
(mac-apple-event-map): Bind "quit application" Apple event to it.
Diffstat (limited to 'lisp/term')
-rw-r--r--lisp/term/mac-win.el11
1 files changed, 10 insertions, 1 deletions
diff --git a/lisp/term/mac-win.el b/lisp/term/mac-win.el
index 3ba38680989..db07315fe84 100644
--- a/lisp/term/mac-win.el
+++ b/lisp/term/mac-win.el
@@ -1714,6 +1714,15 @@ in `selection-converter-alist', which see."
nil t)))))
(select-frame-set-input-focus (selected-frame)))
+(defun mac-ae-quit-application (event)
+ "Quit the application Emacs with the Apple event EVENT."
+ (interactive "e")
+ (let ((ae (mac-event-ae event)))
+ (unwind-protect
+ (save-buffers-kill-emacs)
+ ;; Reaches here if the user has canceled the quit.
+ (mac-resume-apple-event ae -128)))) ; userCanceledErr
+
(defun mac-ae-get-url (event)
"Open the URL specified by the Apple event EVENT.
Currently the `mailto' scheme is supported."
@@ -1740,7 +1749,7 @@ Currently the `mailto' scheme is supported."
'mac-ae-open-documents)
(define-key mac-apple-event-map [core-event show-preferences] 'customize)
(define-key mac-apple-event-map [core-event quit-application]
- 'save-buffers-kill-emacs)
+ 'mac-ae-quit-application)
(define-key mac-apple-event-map [internet-event get-url] 'mac-ae-get-url)