[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/subed 84935a7 152/389: Make sure adjusting forward/backwar
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/subed 84935a7 152/389: Make sure adjusting forward/backward never subtracts/adds |
Date: |
Fri, 3 Dec 2021 11:00:16 -0500 (EST) |
branch: elpa/subed
commit 84935a7b95e8662c935fa2686f425dccab882d8f
Author: Random User <rndusr@posteo.de>
Commit: Random User <rndusr@posteo.de>
Make sure adjusting forward/backward never subtracts/adds
---
subed/subed-srt.el | 10 ++++++++--
tests/test-subed-srt.el | 22 ++++++++++++++++++++++
2 files changed, 30 insertions(+), 2 deletions(-)
diff --git a/subed/subed-srt.el b/subed/subed-srt.el
index f4552ba..1a703df 100644
--- a/subed/subed-srt.el
+++ b/subed/subed-srt.el
@@ -312,7 +312,10 @@ Return new start time in milliseconds or nil if it didn't
change."
(setq msecs-new msecs-min))
(when (> msecs-new msecs-max)
(setq msecs-new msecs-max))
- (unless (eq msecs-new msecs-start)
+ ;; msecs-new must be bigger than the current start time if we are adding
+ ;; or smaller if we are subtracting.
+ (when (or (and (> msecs 0) (> msecs-new msecs-start)) ;; Adding
+ (and (< msecs 0) (< msecs-new msecs-start))) ;; Subtracting
(save-excursion
(subed-srt-jump-to-subtitle-time-start)
(when (looking-at subed-srt--regexp-timestamp)
@@ -336,7 +339,10 @@ Return new stop time in milliseconds or nil if it didn't
change."
(setq msecs-new msecs-min))
(when (and msecs-max (> msecs-new msecs-max))
(setq msecs-new msecs-max))
- (unless (eq msecs-new msecs-stop)
+ ;; msecs-new must be bigger than the current stop time if we are adding
or
+ ;; smaller if we are subtracting.
+ (when (or (and (> msecs 0) (> msecs-new msecs-stop)) ;; Adding
+ (and (< msecs 0) (< msecs-new msecs-stop))) ;; Subtracting
(save-excursion
(subed-srt-jump-to-subtitle-time-stop)
(when (looking-at subed-srt--regexp-timestamp)
diff --git a/tests/test-subed-srt.el b/tests/test-subed-srt.el
index 90e68c1..2433f08 100644
--- a/tests/test-subed-srt.el
+++ b/tests/test-subed-srt.el
@@ -783,6 +783,28 @@ Baz.
(expect (subed-srt--subtitle-msecs-stop 2)
:to-be (- (subed-srt--subtitle-msecs-start 3)
subed-subtitle-spacing))))
)
+ (it "without undershooting the target time."
+ (with-temp-buffer
+ (insert (concat "1\n"
+ "00:00:01,000 --> 00:00:02,000\n"
+ "Foo.\n\n"
+ "2\n"
+ "00:00:02,000 --> 00:00:03,000\n"
+ "Bar.\n"))
+ (subed-jump-to-subtitle-id 1)
+ (expect (subed-increase-stop-time 1) :to-be nil)
+ (expect (subed--subtitle-msecs-stop) :to-equal
2000)))
+ (it "without overshooting the target time."
+ (with-temp-buffer
+ (insert (concat "1\n"
+ "00:00:01,000 --> 00:00:02,000\n"
+ "Foo.\n\n"
+ "2\n"
+ "00:00:02,000 --> 00:00:03,000\n"
+ "Bar.\n"))
+ (subed-jump-to-subtitle-id 2)
+ (expect (subed-decrease-start-time 1) :to-be nil)
+ (expect (subed--subtitle-msecs-start) :to-equal
2000)))
)
(it "does nothing if no timestamp can be found."
(with-temp-buffer
- [nongnu] elpa/subed 43e8e91 236/389: Fix insert test, (continued)
- [nongnu] elpa/subed 43e8e91 236/389: Fix insert test, ELPA Syncer, 2021/12/03
- [nongnu] elpa/subed c84e5cb 233/389: Rename *-subtitle-kill to *-kill-subtitle, ELPA Syncer, 2021/12/03
- [nongnu] elpa/subed 5f803d5 244/389: Add some missing tests, ELPA Syncer, 2021/12/03
- [nongnu] elpa/subed aae6f0c 123/389: Add function: subed-srt--run-subtitle-time-adjusted-hook, ELPA Syncer, 2021/12/03
- [nongnu] elpa/subed b912311 128/389: Do not sync point to player if region is active, ELPA Syncer, 2021/12/03
- [nongnu] elpa/subed f95e914 132/389: Remove old junk code, ELPA Syncer, 2021/12/03
- [nongnu] elpa/subed 205d3c8 135/389: Add subed-shift-subtitle-forward/backward, ELPA Syncer, 2021/12/03
- [nongnu] elpa/subed 2952936 133/389: Reword some docstrings, ELPA Syncer, 2021/12/03
- [nongnu] elpa/subed 0a20cef 138/389: Run subtitle-time-adjusted-hook only if time was adjusted, ELPA Syncer, 2021/12/03
- [nongnu] elpa/subed 7e5690c 142/389: Reword subtitle shifting description, ELPA Syncer, 2021/12/03
- [nongnu] elpa/subed 84935a7 152/389: Make sure adjusting forward/backward never subtracts/adds,
ELPA Syncer <=
- [nongnu] elpa/subed b34eb47 158/389: Fix docstring, ELPA Syncer, 2021/12/03
- [nongnu] elpa/subed 19efbb8 161/389: Rename subed--mode-enabled to subed-mode--enabled-p, ELPA Syncer, 2021/12/03
- [nongnu] elpa/subed a9a6835 154/389: Ensure subtitle length stays the same when moving, ELPA Syncer, 2021/12/03
- [nongnu] elpa/subed 10e0e28 155/389: Use #' for functions, ELPA Syncer, 2021/12/03
- [nongnu] elpa/subed e799392 174/389: subed-move-subtitle: Fix docstring, ELPA Syncer, 2021/12/03
- [nongnu] elpa/subed 381ed1e 159/389: Add subed-srt--max-subtitle-id, ELPA Syncer, 2021/12/03
- [nongnu] elpa/subed 2b3a1d4 165/389: Regenerate IDs after killing a subtitle, ELPA Syncer, 2021/12/03
- [nongnu] elpa/subed 4d2c26d 163/389: Add subed-srt--regenerate-ids-soon-timer, ELPA Syncer, 2021/12/03
- [nongnu] elpa/subed a6300b2 164/389: Don't regenerate IDs immediately after inserting subtitle(s), ELPA Syncer, 2021/12/03
- [nongnu] elpa/subed 800b7aa 166/389: Move timer variables from subed-config.el to where they are used, ELPA Syncer, 2021/12/03