emacs-elpa-diffs
[Top][All Lists]
Advanced

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

[nongnu] elpa/subed dd4dc8c 332/389: Automatically disable point-to-play


From: ELPA Syncer
Subject: [nongnu] elpa/subed dd4dc8c 332/389: Automatically disable point-to-player sync while looping
Date: Fri, 3 Dec 2021 11:00:52 -0500 (EST)

branch: elpa/subed
commit dd4dc8cb4f68fba34e8e6551139b1fb02305ed97
Author: Random User <rndusr@posteo.de>
Commit: Random User <rndusr@posteo.de>

    Automatically disable point-to-player sync while looping
---
 subed/subed-common.el | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/subed/subed-common.el b/subed/subed-common.el
index 0de7101..3f6d998 100644
--- a/subed/subed-common.el
+++ b/subed/subed-common.el
@@ -786,9 +786,15 @@ If QUIET is non-nil, do not display a message in the 
minibuffer."
   "Whether the player is looping over the current subtitle."
   (or subed--subtitle-loop-start subed--subtitle-loop-stop))
 
+(defvar-local subed--enable-point-to-player-sync-after-disabling-loop nil)
+
 (defun subed-enable-loop-over-current-subtitle (&optional quiet)
   "Enable looping over the current subtitle in the player.
 
+If enabled, point-to-player synchronization is disabled and
+re-enabled again when `subed-disable-loop-over-current-subtitle'
+is called.
+
 If QUIET is non-nil, do not display a message in the minibuffer."
   (interactive)
   (unless (subed-loop-over-current-subtitle-p)
@@ -796,6 +802,9 @@ If QUIET is non-nil, do not display a message in the 
minibuffer."
     (add-hook 'subed-mpv-playback-position-hook #'subed--ensure-subtitle-loop 
:append :local)
     (add-hook 'subed-subtitle-motion-hook #'subed--set-subtitle-loop :append 
:local)
     (subed-debug "Enabling loop: %s - %s" subed--subtitle-loop-start 
subed--subtitle-loop-stop)
+    (when (subed-sync-point-to-player-p)
+      (subed-disable-sync-point-to-player)
+      (setq subed--enable-point-to-player-sync-after-disabling-loop t))
     (unless quiet
       (message "Enabled looping over current subtitle"))))
 
@@ -810,6 +819,9 @@ If QUIET is non-nil, do not display a message in the 
minibuffer."
     (setq subed--subtitle-loop-start nil
           subed--subtitle-loop-stop nil)
     (subed-debug "Disabling loop: %s - %s" subed--subtitle-loop-start 
subed--subtitle-loop-stop)
+    (when subed--enable-point-to-player-sync-after-disabling-loop
+      (subed-enable-sync-point-to-player)
+      (setq subed--enable-point-to-player-sync-after-disabling-loop nil))
     (unless quiet
       (message "Disabled looping over current subtitle"))))
 



reply via email to

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