aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew Innes2000-07-24 22:05:31 +0000
committerAndrew Innes2000-07-24 22:05:31 +0000
commit7fe165d7c7d0bcdd7be93457658504aed76df67c (patch)
tree086e54de2b414e5f782b733a6fa7f04140462481
parent9be978bae493d941d9eafca66a6bac602373e3a3 (diff)
downloademacs-7fe165d7c7d0bcdd7be93457658504aed76df67c.tar.gz
emacs-7fe165d7c7d0bcdd7be93457658504aed76df67c.zip
(timer-activate-when-idle): Add optional parameter
DONT-WAIT. Update docstring. (run-with-idle-timer): Specify extra parameter to timer-activate-when-idle, so that timer will be activated immediately if Emacs is already idle.
-rw-r--r--lisp/timer.el11
1 files changed, 7 insertions, 4 deletions
diff --git a/lisp/timer.el b/lisp/timer.el
index 66b16b60fb1..e91fd64ab2f 100644
--- a/lisp/timer.el
+++ b/lisp/timer.el
@@ -183,8 +183,11 @@ fire repeatedly that many seconds apart."
183 nil) 183 nil)
184 (error "Invalid or uninitialized timer"))) 184 (error "Invalid or uninitialized timer")))
185 185
186(defun timer-activate-when-idle (timer) 186(defun timer-activate-when-idle (timer &optional dont-wait)
187 "Arrange to activate TIMER whenever Emacs is next idle." 187 "Arrange to activate TIMER whenever Emacs is next idle.
188If optional argument DONT-WAIT is non-nil, then enable the
189timer to activate immediately, or at the right time, if Emacs
190is already idle."
188 (if (and (timerp timer) 191 (if (and (timerp timer)
189 (integerp (aref timer 1)) 192 (integerp (aref timer 1))
190 (integerp (aref timer 2)) 193 (integerp (aref timer 2))
@@ -206,7 +209,7 @@ fire repeatedly that many seconds apart."
206 (if last 209 (if last
207 (setcdr last (cons timer timers)) 210 (setcdr last (cons timer timers))
208 (setq timer-idle-list (cons timer timers))) 211 (setq timer-idle-list (cons timer timers)))
209 (aset timer 0 t) 212 (aset timer 0 (not dont-wait))
210 (aset timer 7 t) 213 (aset timer 7 t)
211 nil) 214 nil)
212 (error "Invalid or uninitialized timer"))) 215 (error "Invalid or uninitialized timer")))
@@ -384,7 +387,7 @@ This function returns a timer object which you can use in `cancel-timer'."
384 (let ((timer (timer-create))) 387 (let ((timer (timer-create)))
385 (timer-set-function timer function args) 388 (timer-set-function timer function args)
386 (timer-set-idle-time timer secs repeat) 389 (timer-set-idle-time timer secs repeat)
387 (timer-activate-when-idle timer) 390 (timer-activate-when-idle timer t)
388 timer)) 391 timer))
389 392
390(defun with-timeout-handler (tag) 393(defun with-timeout-handler (tag)