mirror of
https://github.com/SoPat712/Speeder.git
synced 2026-08-21 20:32:07 -04:00
Compare commits
117
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
461c8c448f
|
||
|
|
bff65230bb
|
||
|
|
0afb56abe0
|
||
|
|
a02b7b57f7
|
||
|
|
39c1c76db1
|
||
|
|
9b6d1ccd3c
|
||
|
|
a2d7f0d9d6
|
||
|
|
f8cbcd4368
|
||
|
|
04f1414118
|
||
|
|
dad223d4ad
|
||
|
|
e5ae1ed4ba
|
||
|
|
cb892a36a4
|
||
|
|
722eb0754d
|
||
|
|
1ae7bbdee3
|
||
|
|
6b2a5ed472
|
||
|
|
29689ae4ec
|
||
|
|
9c10183ab6
|
||
|
|
f1e8f44f42
|
||
|
|
7073330916
|
||
|
|
f10818964c
|
||
|
|
7fd8e5d92d
|
||
|
|
2adafb51f2
|
||
|
|
22c8f9d793
|
||
|
|
c0bd997287
|
||
|
|
85d4a0588a
|
||
|
|
fd9911855a
|
||
|
|
cd3088a6db
|
||
|
|
a2ab1ad261
|
||
|
|
5b8f2422ab
|
||
|
|
477e5ba8b2
|
||
|
|
8b1820823b
|
||
|
|
c429215626
|
||
|
|
9b7a6edd14
|
||
|
|
bbab33f55f
|
||
|
|
432ed37f45
|
||
|
|
a56742b421
|
||
|
|
9fd66f6668
|
||
|
|
51caae3b7c
|
||
|
|
80a54eed06
|
||
|
|
f626c5aa33
|
||
|
|
5df0bbc551
|
||
|
|
e61d56b59a
|
||
|
|
0bc5ca0315
|
||
|
|
2a56834ff3
|
||
|
|
cddf197a17
|
||
|
|
904e657bb9
|
||
|
|
e652850dfa
|
||
|
|
bfe20a84dd
|
||
|
|
46a8a62110
|
||
|
|
de582ae157
|
||
|
|
eb64de6ea3
|
||
|
|
eab6d10a19
|
||
|
|
76f6bd1a1e
|
||
|
|
29a9a1d07f
|
||
|
|
4d37b4f570
|
||
|
|
9d41e6ceeb
|
||
|
|
6d10a569d9
|
||
|
|
5f63718d62
|
||
|
|
eaffab1f27
|
||
|
|
d01c01a216
|
||
|
|
0b6bc5d0a0
|
||
|
|
3f5983685f
|
||
|
|
41d89e0993
|
||
|
|
a424dea5ca
|
||
|
|
ab7ae99807
|
||
|
|
5d47c511be
|
||
|
|
7713ba5bad | ||
|
|
ce0b28de4f
|
||
|
|
a2b041e225
|
||
|
|
4f87aadfd7
|
||
|
|
8456111bf0
|
||
|
|
6efe92a036
|
||
|
|
0cb13905ff
|
||
|
|
f32d1b3f71
|
||
|
|
e6c56bcecb
|
||
|
|
a7a0aafd68
|
||
|
|
3cf1a4acd1
|
||
|
|
a9956831c4
|
||
|
|
25d3acf576
|
||
|
|
7b8b4324af
|
||
|
|
8b9e4bea1d
|
||
|
|
8c94cc2088
|
||
|
|
19d3af02a2
|
||
|
|
306e0e3ea0
|
||
|
|
1536c13c3e
|
||
|
|
6bd319c8cc
|
||
|
|
3aee8c8f9a
|
||
|
|
939ee08466
|
||
|
|
5a175c3cf8
|
||
|
|
805e5a82e5
|
||
|
|
df34b1fee9
|
||
|
|
0741c6e535
|
||
|
|
fad0c49e65
|
||
|
|
66075fb6f3
|
||
|
|
bf4025dcb4
|
||
|
|
76a7b933bb
|
||
|
|
1cd533fc5c
|
||
|
|
8c5bd68d39
|
||
|
|
9c257af446
|
||
|
|
64a9b85587
|
||
|
|
edd997037a
|
||
|
|
f85a1f9f29
|
||
|
|
97366b76b6
|
||
|
|
8269875bb1
|
||
|
|
e34ec17f33
|
||
|
|
8d3905b654
|
||
|
|
7fd8a931d8
|
||
|
|
17319c1e25
|
||
|
|
841c1a246e
|
||
|
|
ed0f63e8bc
|
||
|
|
53f66f1eeb
|
||
|
|
f106ab490a
|
||
|
|
5a38121e09
|
||
|
|
36ed922b5c
|
||
|
|
3275d1f322
|
||
|
|
f6d706f096
|
||
|
|
04292a8018
|
@@ -3757,7 +3757,7 @@ function defineVideoController() {
|
||||
// Only hide if the video is not paused
|
||||
// (Many players keep controls visible while paused)
|
||||
// However, the user said "Reveal on every mouse and keyboard input"
|
||||
// and "auto-hidden after timespan".
|
||||
// and "auto-hidden after timespan".
|
||||
// We'll follow the timer strictly.
|
||||
wrapper.classList.add("vsc-idle-hidden");
|
||||
log("Generic hide: controller hidden due to inactivity", 5);
|
||||
@@ -4314,11 +4314,7 @@ function clearPendingInitialization(doc) {
|
||||
|
||||
function tryInitializeDocument(doc, forceReinit) {
|
||||
if (!doc) return false;
|
||||
if (
|
||||
!tc.runtimeSettingsHydrated ||
|
||||
(!forceReinit && vscInitializedDocuments.has(doc)) ||
|
||||
!doc.body
|
||||
) {
|
||||
if ((!forceReinit && vscInitializedDocuments.has(doc)) || !doc.body) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "Speeder",
|
||||
"short_name": "Speeder",
|
||||
"version": "6.0.5",
|
||||
"version": "6.0.4",
|
||||
"manifest_version": 2,
|
||||
"description": "Speed up, slow down, advance and rewind HTML5 audio/video with shortcuts (New and improved version of \"Video Speed Controller\")",
|
||||
"homepage_url": "https://github.com/SoPat712/speeder",
|
||||
|
||||
@@ -394,44 +394,6 @@ describe("inject.js media/controller lifecycle regressions", () => {
|
||||
expect(video.currentTime).toBe(63);
|
||||
});
|
||||
|
||||
it("finishes a forced SPA initialization after settings hydration", async () => {
|
||||
vi.useFakeTimers();
|
||||
bootInject({
|
||||
url: "https://www.youtube.com/",
|
||||
syncGetDelayMs: 1000
|
||||
});
|
||||
|
||||
const mount = document.createElement("div");
|
||||
const video = document.createElement("video");
|
||||
const rect = makeRect(0, 0, 1280, 720);
|
||||
mount.id = "movie_player";
|
||||
video.src = "blob:https://www.youtube.com/main-player";
|
||||
setRect(mount, rect);
|
||||
setBoxMetrics(mount, rect.width, rect.height);
|
||||
setRect(video, rect);
|
||||
mount.appendChild(video);
|
||||
document.body.appendChild(mount);
|
||||
|
||||
document.dispatchEvent(new Event("speeder-location-changed"));
|
||||
await vi.advanceTimersByTimeAsync(300);
|
||||
expect(window.tc.runtimeSettingsHydrated).toBe(false);
|
||||
expect(video.vsc).toBeUndefined();
|
||||
|
||||
await vi.advanceTimersByTimeAsync(700);
|
||||
await settleLifecycle();
|
||||
|
||||
expect(window.tc.runtimeSettingsHydrated).toBe(true);
|
||||
expect(video.vsc).toBeTruthy();
|
||||
video.dispatchEvent(
|
||||
new KeyboardEvent("keydown", {
|
||||
bubbles: true,
|
||||
code: "KeyD",
|
||||
key: "d"
|
||||
})
|
||||
);
|
||||
expect(video.playbackRate).toBe(1.1);
|
||||
});
|
||||
|
||||
it("skips ambient loops by default and includes them when explicitly enabled", async () => {
|
||||
bootInject();
|
||||
await settleLifecycle();
|
||||
|
||||
Reference in New Issue
Block a user