diff --git a/materialious/src/lib/components/Player.svelte b/materialious/src/lib/components/Player.svelte index da2776fb..81399264 100644 --- a/materialious/src/lib/components/Player.svelte +++ b/materialious/src/lib/components/Player.svelte @@ -31,6 +31,7 @@ playerDefaultQualityStore, playerProxyVideosStore, playerSavePlaybackPositionStore, + playerStatisticsByDefault, playerYouTubeJsFallback, sponsorBlockCategoriesStore, sponsorBlockDisplayToastStore, @@ -325,6 +326,14 @@ if ($playerDefaultPlaybackSpeed && playerElement) { playerElement.playbackRate = $playerDefaultPlaybackSpeed; } + + if ($playerStatisticsByDefault) { + // Appears to be no native way in shaka to toggle statistics on and off + const shakaStatisticsButton = document.querySelector('.shaka-statistics-button') as + | HTMLButtonElement + | undefined; + shakaStatisticsButton?.click(); + } } async function reloadVideo() { diff --git a/materialious/src/lib/components/Settings/Player.svelte b/materialious/src/lib/components/Settings/Player.svelte index 38ecdd61..066c6a86 100644 --- a/materialious/src/lib/components/Settings/Player.svelte +++ b/materialious/src/lib/components/Settings/Player.svelte @@ -14,6 +14,7 @@ playerDefaultQualityStore, playerProxyVideosStore, playerSavePlaybackPositionStore, + playerStatisticsByDefault, playerTheatreModeByDefaultStore, playerYouTubeJsAlways, playerYouTubeJsFallback @@ -239,3 +240,19 @@ + +
+ +
diff --git a/materialious/src/lib/css/shaka-player-theme.css b/materialious/src/lib/css/shaka-player-theme.css index b59a55c2..24853d98 100644 --- a/materialious/src/lib/css/shaka-player-theme.css +++ b/materialious/src/lib/css/shaka-player-theme.css @@ -207,7 +207,7 @@ } .shaka-overflow-button-label span:not(.shaka-current-selection-span) { - font-weight: bold !important; + font-weight: 200 !important; } .youtube-theme .shaka-overflow-menu span + span { diff --git a/materialious/src/lib/externalSettings.ts b/materialious/src/lib/externalSettings.ts index be62ca2c..96fba3fd 100644 --- a/materialious/src/lib/externalSettings.ts +++ b/materialious/src/lib/externalSettings.ts @@ -33,7 +33,8 @@ import { synciousStore, themeColorStore, interfaceAutoExpandChapters, - playerDefaultPlaybackSpeed + playerDefaultPlaybackSpeed, + playerStatisticsByDefault } from '$lib/store'; import { get, type Writable } from 'svelte/store'; @@ -211,6 +212,11 @@ const persistedStores: { name: 'defaultPlaybackSpeed', store: playerDefaultPlaybackSpeed, type: 'number' + }, + { + name: 'playerStatistics', + store: playerStatisticsByDefault, + type: 'boolean' } ]; diff --git a/materialious/src/lib/i18n/locales/en.json b/materialious/src/lib/i18n/locales/en.json index 3f9b8425..afa0f36c 100644 --- a/materialious/src/lib/i18n/locales/en.json +++ b/materialious/src/lib/i18n/locales/en.json @@ -151,7 +151,8 @@ "youtubeJsFallback": "Local video processing fallback", "youtubeJsAlways": "Always use", "lockOrientation": "Orientation locked to aspect ratio", - "defaultPlaybackSpeed": "Default playback speed" + "defaultPlaybackSpeed": "Default playback speed", + "playerStatistics": "Show player statistics by default" }, "bookmarklet": "Bookmarklet", "instanceUrl": "Instance URL", diff --git a/materialious/src/lib/store.ts b/materialious/src/lib/store.ts index c22fd1e1..bb36fb13 100644 --- a/materialious/src/lib/store.ts +++ b/materialious/src/lib/store.ts @@ -47,6 +47,7 @@ export const playerYouTubeJsAlways = persisted('youTubeJsAlways', false); export const playerAndroidLockOrientation = persisted('androidLockOrientation', true); export const playerDefaultLanguage = persisted('defaultLanguage', ''); export const playerDefaultPlaybackSpeed: Writable = persisted('defaultPlaybackSpeed', 1); +export const playerStatisticsByDefault = persisted('playerStatistics', false); export const returnYtDislikesStore = persisted('returnYtDislikes', false); export const returnYTDislikesInstanceStore: Writable = persisted(