diff --git a/materialious/android/app/build.gradle b/materialious/android/app/build.gradle index c80bf262..610795ae 100644 --- a/materialious/android/app/build.gradle +++ b/materialious/android/app/build.gradle @@ -7,8 +7,8 @@ android { applicationId "us.materialio.app" minSdkVersion rootProject.ext.minSdkVersion targetSdkVersion rootProject.ext.targetSdkVersion - versionCode 101 - versionName "1.7.19" + versionCode 102 + versionName "1.7.20" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" aaptOptions { // Files and dirs to omit from the packaged assets dir, modified to accommodate modern web apps. diff --git a/materialious/android/app/capacitor.build.gradle b/materialious/android/app/capacitor.build.gradle index b9764570..6bea4029 100644 --- a/materialious/android/app/capacitor.build.gradle +++ b/materialious/android/app/capacitor.build.gradle @@ -14,7 +14,6 @@ dependencies { implementation project(':capacitor-clipboard') implementation project(':capacitor-screen-orientation') implementation project(':capacitor-status-bar') - implementation project(':capgo-inappbrowser') implementation project(':hugotomazi-capacitor-navigation-bar') implementation project(':capacitor-nodejs') diff --git a/materialious/android/capacitor.settings.gradle b/materialious/android/capacitor.settings.gradle index 2fd2c8fd..ef0cb561 100644 --- a/materialious/android/capacitor.settings.gradle +++ b/materialious/android/capacitor.settings.gradle @@ -17,9 +17,6 @@ project(':capacitor-screen-orientation').projectDir = new File('../node_modules/ include ':capacitor-status-bar' project(':capacitor-status-bar').projectDir = new File('../node_modules/@capacitor/status-bar/android') -include ':capgo-inappbrowser' -project(':capgo-inappbrowser').projectDir = new File('../node_modules/@capgo/inappbrowser/android') - include ':hugotomazi-capacitor-navigation-bar' project(':hugotomazi-capacitor-navigation-bar').projectDir = new File('../node_modules/@hugotomazi/capacitor-navigation-bar/android') diff --git a/materialious/electron/materialious.metainfo.xml b/materialious/electron/materialious.metainfo.xml index 84790dc8..e47d00c0 100644 --- a/materialious/electron/materialious.metainfo.xml +++ b/materialious/electron/materialious.metainfo.xml @@ -62,7 +62,11 @@ - + + + https://github.com/Materialious/Materialious/releases/tag/1.7.20 + + https://github.com/Materialious/Materialious/releases/tag/1.7.19 diff --git a/materialious/electron/package-lock.json b/materialious/electron/package-lock.json index 371835f2..c4d30472 100644 --- a/materialious/electron/package-lock.json +++ b/materialious/electron/package-lock.json @@ -1,12 +1,12 @@ { "name": "Materialious", - "version": "1.7.19", + "version": "1.7.20", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "Materialious", - "version": "1.7.19", + "version": "1.7.20", "license": "MIT", "dependencies": { "@capacitor-community/electron": "^5.0.0", @@ -2506,9 +2506,9 @@ } }, "node_modules/electron": { - "version": "34.4.1", - "resolved": "https://registry.npmjs.org/electron/-/electron-34.4.1.tgz", - "integrity": "sha512-iYzeLBdCrAR3i0RVSLa+mzuFZwH6HGxTGKsI+SS41sg2anZj4R5mHjOiHsxcZ50/ih47NJbuVRJgPIVlTF+USg==", + "version": "34.5.0", + "resolved": "https://registry.npmjs.org/electron/-/electron-34.5.0.tgz", + "integrity": "sha512-GabFMG7r2P1NQf5DYp6mnCXo5CcatxXb8YQo54VTStql6weeEv7tsqvl3lAssGwDdd4iMc8QpTCFjErBSVRWeQ==", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -5751,9 +5751,9 @@ } }, "node_modules/typescript": { - "version": "5.8.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.2.tgz", - "integrity": "sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==", + "version": "5.8.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", + "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", "dev": true, "license": "Apache-2.0", "bin": { diff --git a/materialious/electron/package.json b/materialious/electron/package.json index d7030157..06fc7dde 100644 --- a/materialious/electron/package.json +++ b/materialious/electron/package.json @@ -1,6 +1,6 @@ { "name": "Materialious", - "version": "1.7.19", + "version": "1.7.20", "description": "Modern material design for Invidious.", "author": { "name": "Ward Pearce", diff --git a/materialious/electron/src/setup.ts b/materialious/electron/src/setup.ts index 49b8dfb3..d6169790 100644 --- a/materialious/electron/src/setup.ts +++ b/materialious/electron/src/setup.ts @@ -7,7 +7,7 @@ import { import { USER_AGENT } from 'bgutils-js'; import chokidar from 'chokidar'; import type { MenuItemConstructorOptions } from 'electron'; -import { app, BrowserWindow, Menu, MenuItem, nativeImage, session, Tray } from 'electron'; +import { app, BrowserWindow, Menu, MenuItem, nativeImage, session, shell, Tray } from 'electron'; import electronIsDev from 'electron-is-dev'; import electronServe from 'electron-serve'; import windowStateKeeper from 'electron-window-state'; @@ -185,18 +185,14 @@ export class ElectronCapacitorApp { // Security this.MainWindow.webContents.setWindowOpenHandler((details) => { - if (!details.url.includes(this.customScheme)) { - return { action: 'deny' }; - } else { - return { action: 'allow' }; - } + shell.openExternal(details.url); + return { action: 'deny' }; }); this.MainWindow.webContents.on('will-navigate', (event, _newURL) => { if (!this.MainWindow.webContents.getURL().includes(this.customScheme)) { event.preventDefault(); } }); - // Link electron plugins into the system. setupCapacitorElectronPlugins(); diff --git a/materialious/package-lock.json b/materialious/package-lock.json index 6b4efda7..51d76809 100644 --- a/materialious/package-lock.json +++ b/materialious/package-lock.json @@ -1,12 +1,12 @@ { "name": "materialious", - "version": "1.7.19", + "version": "1.7.20", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "materialious", - "version": "1.7.19", + "version": "1.7.20", "hasInstallScript": true, "dependencies": { "@capacitor-community/electron": "^5.0.1", @@ -3423,9 +3423,9 @@ } }, "node_modules/@sveltejs/kit": { - "version": "2.20.2", - "resolved": "https://registry.npmjs.org/@sveltejs/kit/-/kit-2.20.2.tgz", - "integrity": "sha512-Dv8TOAZC9vyfcAB9TMsvUEJsRbklRTeNfcYBPaeH6KnABJ99i3CvCB2eNx8fiiliIqe+9GIchBg4RodRH5p1BQ==", + "version": "2.20.4", + "resolved": "https://registry.npmjs.org/@sveltejs/kit/-/kit-2.20.4.tgz", + "integrity": "sha512-B3Y1mb1Qjt57zXLVch5tfqsK/ebHe6uYTcFSnGFNwRpId3+fplLgQK6Z2zhDVBezSsPuhDq6Pry+9PA88ocN6Q==", "dev": true, "license": "MIT", "dependencies": { @@ -12904,9 +12904,9 @@ } }, "node_modules/vite": { - "version": "6.2.4", - "resolved": "https://registry.npmjs.org/vite/-/vite-6.2.4.tgz", - "integrity": "sha512-veHMSew8CcRzhL5o8ONjy8gkfmFJAd5Ac16oxBUjlwgX3Gq2Wqr+qNC3TjPIpy7TPV/KporLga5GT9HqdrCizw==", + "version": "6.2.5", + "resolved": "https://registry.npmjs.org/vite/-/vite-6.2.5.tgz", + "integrity": "sha512-j023J/hCAa4pRIUH6J9HemwYfjB5llR2Ps0CWeikOtdR8+pAURAk0DoJC5/mm9kd+UgdnIy7d6HE4EAvlYhPhA==", "dev": true, "license": "MIT", "dependencies": { diff --git a/materialious/package.json b/materialious/package.json index a6073be6..13101be0 100644 --- a/materialious/package.json +++ b/materialious/package.json @@ -1,6 +1,6 @@ { "name": "materialious", - "version": "1.7.19", + "version": "1.7.20", "private": true, "scripts": { "dev": "vite dev", diff --git a/materialious/src/lib/components/ChannelThumbnail.svelte b/materialious/src/lib/components/ChannelThumbnail.svelte index bf765092..0d8addc1 100644 --- a/materialious/src/lib/components/ChannelThumbnail.svelte +++ b/materialious/src/lib/components/ChannelThumbnail.svelte @@ -1,6 +1,6 @@ -{#if !thumbnailHidden} -
-
{}} id="thumbnail-container" role="region"> - - {#if !$interfaceLowBandwidthMode} - {#if !thumbnail} -
- {:else} - Thumbnail for video - {/if} - {/if} - {#if progress} - - {/if} - {#if !('liveVideo' in video) || !video.liveVideo} - {#if video.lengthSeconds !== 0} - {#if !$interfaceLowBandwidthMode} -
-  {videoLength(video.lengthSeconds)}  -
- {:else} -

{videoLength(video.lengthSeconds)}

- {/if} - {/if} - {:else if video.lengthSeconds !== 0} -
- {$_('thumbnail.live')} -
+
+ - -
- {#if !sideways && !$interfaceLowBandwidthMode && $interfaceDisplayThumbnailAvatars} -
- {#if authorImg} - Author - {:else} - - {/if} -
{/if} -
- - {letterCase(truncate(video.title.trimEnd(), 80))} - - -
- {video.author} - {#if !('publishedText' in video) && 'viewCountText' in video} - - • {video.viewCountText} - {$_('views')} - - {/if} - - {#if 'publishedText' in video} -
- {cleanNumber(video.viewCount)} • {video.publishedText} + {#if progress} + + {/if} + {#if !('liveVideo' in video) || !video.liveVideo} + {#if video.lengthSeconds !== 0} + {#if !$interfaceLowBandwidthMode} +
+  {videoLength(video.lengthSeconds)} 
+ {:else} +

{videoLength(video.lengthSeconds)}

{/if} + {/if} + {:else if video.lengthSeconds !== 0} +
+ {$_('thumbnail.live')}
+ {:else} +

{$_('thumbnail.live')}

+ {/if} + +
+ +
+ {#if !sideways && !$interfaceLowBandwidthMode && $interfaceDisplayThumbnailAvatars} +
+ {#if authorImg} + Author + {:else} + + {/if} +
+ {/if} +
+ + {letterCase(truncate(video.title.trimEnd(), 80))} + + +
+ {video.author} + {#if !('publishedText' in video) && 'viewCountText' in video} + + • {video.viewCountText} + {$_('views')} + + {/if} + + {#if 'publishedText' in video} +
+ {cleanNumber(video.viewCount)} • {video.publishedText} +
+ {/if}
-{/if} - - - +