Improved player position resuming and fix chapters on TV

This commit is contained in:
WardPearce
2025-06-25 01:37:09 +12:00
parent b989aa904c
commit 5ecbc9267c
7 changed files with 33 additions and 29 deletions
+2 -2
View File
@@ -7,8 +7,8 @@ android {
applicationId "us.materialio.app"
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode 134
versionName "1.9.17"
versionCode 135
versionName "1.9.18"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
aaptOptions {
// Files and dirs to omit from the packaged assets dir, modified to accommodate modern web apps.
@@ -69,7 +69,11 @@
<release version="1.9.17" date="2025-6-25">
<release version="1.9.18" date="2025-6-25">
<url>https://github.com/Materialious/Materialious/releases/tag/1.9.18</url>
</release>
<release version="1.9.17" date="2025-6-25">
<url>https://github.com/Materialious/Materialious/releases/tag/1.9.17</url>
</release>
<release version="1.9.16" date="2025-6-24">
+2 -2
View File
@@ -1,6 +1,6 @@
{
"name": "Materialious",
"version": "1.9.17",
"version": "1.9.18",
"description": "Modern material design for Invidious.",
"author": {
"name": "Ward Pearce",
@@ -44,4 +44,4 @@
"capacitor",
"electron"
]
}
}
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "materialious",
"version": "1.9.17",
"version": "1.9.18",
"private": true,
"scripts": {
"dev": "vite dev",
@@ -378,9 +378,7 @@
dashUrl += '?local=true';
}
await player.load(dashUrl);
await loadPlayerPos();
await player.load(dashUrl, await getLastPlayPos());
} else {
if (data.video.fallbackPatch === 'youtubejs') {
await player.load(data.video.dashUrl);
@@ -650,8 +648,8 @@
}
});
async function loadPlayerPos() {
if (loadTimeFromUrl($page)) return;
async function getLastPlayPos(): Promise<number> {
if (loadTimeFromUrl($page)) return 0;
let toSetTime = 0;
@@ -670,7 +668,7 @@
}
}
if (toSetTime > 0 && playerElement) playerElement.currentTime = toSetTime;
return toSetTime;
}
function savePlayerPos() {
@@ -111,22 +111,24 @@
<h5 style="margin-bottom: 0;">{$_('player.chapters')}</h5>
<div class="grid">
{#each data.content.timestamps as timestamp}
<article
role="presentation"
style="cursor: pointer;"
onclick={() => {
if (playerElement) playerElement.currentTime = timestamp.time;
}}
>
<div style="white-space: pre-line; overflow-wrap: break-word;text-align: center;">
<p style="no-margin no-padding">{timestamp.title}</p>
<span
class:primary={playerCurrentTime >= timestamp.time &&
(playerCurrentTime <= timestamp.endTime || timestamp.endTime === -1)}
class="chip no-margin">{timestamp.timePretty}</span
>
</div>
</article>
<ContentColumn>
<article
role="presentation"
style="cursor: pointer;"
onclick={() => {
if (playerElement) playerElement.currentTime = timestamp.time;
}}
>
<div style="white-space: pre-line; overflow-wrap: break-word;text-align: center;">
<p style="no-margin no-padding">{timestamp.title}</p>
<span
class:primary={playerCurrentTime >= timestamp.time &&
(playerCurrentTime <= timestamp.endTime || timestamp.endTime === -1)}
class="chip no-margin">{timestamp.timePretty}</span
>
</div>
</article>
</ContentColumn>
{/each}
</div>
{/if}
+1 -1
View File
@@ -3,7 +3,7 @@ import os
import re
from datetime import datetime
LATEST_VERSION = "1.9.17"
LATEST_VERSION = "1.9.18"
RELEASE_DATE = datetime.now().strftime("%Y-%-m-%d") # Format: YYYY-M-D
WORKING_DIR = os.path.join(os.path.dirname(os.path.realpath(__file__)), "materialious")