bongo-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bongo-patches] Temporarily display visual seek indicator in echo area


From: Daniel Brockman
Subject: [bongo-patches] Temporarily display visual seek indicator in echo area
Date: Sat, 28 Apr 2007 00:58:38 +0200
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.92 (gnu/linux)

Temporarily display visual seek indicator in echo area (instead
of calling `bongo-show') when seeking non-visually (i.e., using
`bongo-seek-forward', et al., from outside Bongo Seek mode).

diff -rN -u old-bongo/bongo.el new-bongo/bongo.el
--- old-bongo/bongo.el  2007-04-28 00:58:15.000000000 +0200
+++ new-bongo/bongo.el  2007-04-28 00:58:15.000000000 +0200
@@ -6767,6 +6767,14 @@
         (bongo-player-pause/resume bongo-player)
       (error "No active player"))))
 
+(defun bongo-minibuffer-seek-string ()
+  (save-window-excursion
+    (with-temp-buffer
+      (let ((bongo-seek-buffer (current-buffer)))
+        (select-window (minibuffer-window))
+        (bongo-seek-redisplay)
+        (buffer-string)))))
+
 (defun bongo-seek-forward (&optional n)
   "Seek N units forward in the currently playing track.
 The time unit is currently backend-specific.
@@ -6778,9 +6786,9 @@
           (error "No active player")
         (bongo-player-seek-by bongo-player n)
         (unless seeking-interactively
-          (when (and (bongo-player-elapsed-time bongo-player)
-                     (bongo-player-total-time bongo-player))
-            (bongo-show)))))))
+          (let ((message-log-max nil))
+            (with-temp-message (bongo-minibuffer-seek-string)
+              (sit-for 2))))))))
 
 (defun bongo-seek-backward (&optional n)
   "Seek N units backward in the currently playing track.
@@ -6793,13 +6801,12 @@
          (error "No active player")
        (bongo-player-seek-by bongo-player (- n))
        (unless seeking-interactively
-         (when (and (bongo-player-elapsed-time bongo-player)
-                    (bongo-player-total-time bongo-player))
-           (bongo-show)))))))
+         (let ((message-log-max nil))
+           (with-temp-message (bongo-minibuffer-seek-string)
+             (sit-for 2))))))))
 
 (defun bongo-seek-to (position)
-  "Seek to POSITION in the currently playing track.
-The time unit is currently backend-specific.
+  "Seek to POSITION (seconds) in the currently playing track.
 This functionality may not be available for all backends."
   (interactive
    (with-bongo-playlist-buffer
@@ -6829,9 +6836,9 @@
          (error "No active player")
        (bongo-player-seek-to bongo-player position)
        (unless seeking-interactively
-         (when (and (bongo-player-elapsed-time bongo-player)
-                    (bongo-player-total-time bongo-player))
-           (bongo-show)))))))
+         (let ((message-log-max nil))
+           (with-temp-message (bongo-minibuffer-seek-string)
+             (sit-for 2))))))))
 
 
 ;;;; Interactive seeking
-- 
Daniel Brockman <address@hidden>

reply via email to

[Prev in Thread] Current Thread [Next in Thread]