[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] master 02b446a 27/33: posframe: Add initialize argument to posfra
From: |
Feng Shu |
Subject: |
[elpa] master 02b446a 27/33: posframe: Add initialize argument to posframe-show |
Date: |
Fri, 14 Dec 2018 06:21:18 -0500 (EST) |
branch: master
commit 02b446a577f5fb731ef0af31f2c13b14d192c2f3
Author: Feng Shu <address@hidden>
Commit: Feng Shu <address@hidden>
posframe: Add initialize argument to posframe-show
* posframe.el (posframe--initialize-p): New variable.
(posframe-show): Add initialize argument
---
posframe.el | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/posframe.el b/posframe.el
index d187629..b2f4fae 100644
--- a/posframe.el
+++ b/posframe.el
@@ -153,6 +153,8 @@ frame.")
(defvar-local posframe--refresh-timer nil
"Record the timer to deal with refresh argument of `posframe-show'.")
+(defvar-local posframe--initialize-p nil
+ "Record initialize status of `posframe-show'.")
(cl-defun posframe--create-posframe (posframe-buffer
&key
@@ -281,6 +283,7 @@ This posframe's buffer is POSFRAME-BUFFER."
respect-header-line
respect-mode-line
face-remap
+ initialize
no-properties
keep-ratio
override-parameters
@@ -372,6 +375,10 @@ user can set FACE-REMAP, more setting details can be found:
C-h v face-remapping-alist
+INITIALIZE is a function with no argument, it will run when
+posframe buffer is first selected with `with-current-buffer'
+in posframe-show, and only run once for speed reason.
+
OVERRIDE-PARAMETERS is very powful, *all* the frame parameters
used by posframe's frame can be overrided by it.
@@ -406,6 +413,13 @@ you can use `posframe-delete-all' to delete all posframes."
posframe)
(with-current-buffer posframe-buffer
+
+ ;; Initialize
+ (unless posframe--initialize-p
+ (when (functionp initialize)
+ (funcall initialize)
+ (setq posframe--initialize-p t)))
+
;; Move mouse to (0 . 0)
(posframe--mouse-banish parent-frame)
- [elpa] master 272ca09 10/33: Use posframe-hide-frame instead make-frame-invisible, (continued)
- [elpa] master 272ca09 10/33: Use posframe-hide-frame instead make-frame-invisible, Feng Shu, 2018/12/14
- [elpa] master 5803070 19/33: posframe: Recreate posframe when internal-border-width changed, Feng Shu, 2018/12/14
- [elpa] master d115a5a 23/33: Merge pull request #13 from yqrashawn/empty-frame-name, Feng Shu, 2018/12/14
- [elpa] master 2f4baf0 31/33: Merge pull request #17 from jingqi/master, Feng Shu, 2018/12/14
- [elpa] master 7ba9d9d 25/33: posframe: Add posframe-poshandler-frame-top-center document, Feng Shu, 2018/12/14
- [elpa] master 1ed5492 20/33: posframe: Add face-remap argument, Feng Shu, 2018/12/14
- [elpa] master baa2289 30/33: Change to looser line-end-style specification, Feng Shu, 2018/12/14
- [elpa] master a0dfcde 22/33: use empty posframe title for window manager, Feng Shu, 2018/12/14
- [elpa] master 9768b0a 18/33: posframe: support internal-border-width, Feng Shu, 2018/12/14
- [elpa] master d09e283 28/33: * posframe.el (posframe-show, posframe--initialized-p): Rename posframe--initialize-p to posframe--initialized-p, Feng Shu, 2018/12/14
- [elpa] master 02b446a 27/33: posframe: Add initialize argument to posframe-show,
Feng Shu <=
- [elpa] master a8e1bda 16/33: Update README again., Feng Shu, 2018/12/14
- [elpa] master 09e3f19 32/33: bump to version 0.4.2, Feng Shu, 2018/12/14
- [elpa] master 575e902 26/33: * posframe.el (posframe-show): Remove useless space, Feng Shu, 2018/12/14
- [elpa] master 1b309a2 24/33: posframe: Add posframe-poshandler-frame-top-center, Feng Shu, 2018/12/14
- [elpa] master 08ef38d 29/33: posframe: Add posframe-default-initialize-function, Feng Shu, 2018/12/14
- [elpa] master 945761d 21/33: posframe: cache posframe/parent-frame/parent-window's more info, Feng Shu, 2018/12/14
- [elpa] master 769adaa 33/33: Merge commit '09e3f1937d19243cfb02178540aaf5c78f2e2939', Feng Shu, 2018/12/14