diff options
| author | Daniel Colascione | 2018-06-11 16:54:23 -0700 |
|---|---|---|
| committer | Daniel Colascione | 2018-06-11 16:54:23 -0700 |
| commit | 0626d5aba518a6d22ffacd7a1e3f4c70d7248e5f (patch) | |
| tree | 8ed6504f2530faa7ed7cd768181cb5fabfc00700 /doc | |
| parent | 4ff438a45a5d3e380622ceaf4b9aa93cf89be4c8 (diff) | |
| download | emacs-0626d5aba518a6d22ffacd7a1e3f4c70d7248e5f.tar.gz emacs-0626d5aba518a6d22ffacd7a1e3f4c70d7248e5f.zip | |
Add after-delete-frame-functions
Instead of working around the behavior delete-frame-functions, just
add an after-delete-frame-functions hook.
* doc/lispref/frames.texi (Deleting Frames): Document
`after-delete-frame-functions'.
* etc/NEWS: Mention `after-delete-frame-functions'.
* lisp/frame.el (blink-cursor--should-blink):
(blink-cursor--rescan-frames, blink-frame-mode): Get rid of the
ugly ignored-frame parameter and switch from
`delete-frame-functions' to `after-delete-frame-functions'.
* src/frame.c (syms_of_frame): New variable
`after-delete-frame-functions'.
(delete_frame): Use it.
Diffstat (limited to 'doc')
| -rw-r--r-- | doc/lispref/frames.texi | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/doc/lispref/frames.texi b/doc/lispref/frames.texi index 3a97ec01384..5e8b5b46d5d 100644 --- a/doc/lispref/frames.texi +++ b/doc/lispref/frames.texi | |||
| @@ -2530,6 +2530,7 @@ it. | |||
| 2530 | 2530 | ||
| 2531 | @deffn Command delete-frame &optional frame force | 2531 | @deffn Command delete-frame &optional frame force |
| 2532 | @vindex delete-frame-functions | 2532 | @vindex delete-frame-functions |
| 2533 | @vindex after-delete-frame-functions | ||
| 2533 | This function deletes the frame @var{frame}. The argument @var{frame} | 2534 | This function deletes the frame @var{frame}. The argument @var{frame} |
| 2534 | must specify a live frame (see below) and defaults to the selected | 2535 | must specify a live frame (see below) and defaults to the selected |
| 2535 | frame. | 2536 | frame. |
| @@ -2541,7 +2542,9 @@ performed recursively; so this step makes sure that no other frames with | |||
| 2541 | @var{frame} as their ancestor will exist. Then, unless @var{frame} | 2542 | @var{frame} as their ancestor will exist. Then, unless @var{frame} |
| 2542 | specifies a tooltip, this function runs the hook | 2543 | specifies a tooltip, this function runs the hook |
| 2543 | @code{delete-frame-functions} (each function getting one argument, | 2544 | @code{delete-frame-functions} (each function getting one argument, |
| 2544 | @var{frame}) before actually killing the frame. | 2545 | @var{frame}) before actually killing the frame. After actually killing |
| 2546 | the frame and removing the frame from the frame list, @code{delete-frame} | ||
| 2547 | runs @code{after-delete-frame-functions}. | ||
| 2545 | 2548 | ||
| 2546 | Note that a frame cannot be deleted as long as its minibuffer serves as | 2549 | Note that a frame cannot be deleted as long as its minibuffer serves as |
| 2547 | surrogate minibuffer for another frame (@pxref{Minibuffers and Frames}). | 2550 | surrogate minibuffer for another frame (@pxref{Minibuffers and Frames}). |