diff --git a/materialious/android/.idea/other.xml b/materialious/android/.idea/other.xml
index b45a6e02..95424375 100644
--- a/materialious/android/.idea/other.xml
+++ b/materialious/android/.idea/other.xml
@@ -146,6 +146,28 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -179,6 +201,17 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/materialious/android/app/build.gradle b/materialious/android/app/build.gradle
index fb41e883..a16716f6 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 77
- versionName "1.6.26"
+ versionCode 78
+ versionName "1.6.27"
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/electron/package-lock.json b/materialious/electron/package-lock.json
index 1dac5e75..68608aa4 100644
--- a/materialious/electron/package-lock.json
+++ b/materialious/electron/package-lock.json
@@ -2358,11 +2358,12 @@
}
},
"node_modules/electron": {
- "version": "33.3.1",
- "resolved": "https://registry.npmjs.org/electron/-/electron-33.3.1.tgz",
- "integrity": "sha512-Z7l2bVgpdKxHQMI4i0CirBX2n+iCYKOx5mbzNM3BpOyFELwlobEXKmzCmEnwP+3EcNeIhUQyIEBFQxN06QgdIw==",
+ "version": "33.3.2",
+ "resolved": "https://registry.npmjs.org/electron/-/electron-33.3.2.tgz",
+ "integrity": "sha512-2pWr0frM9UrZGX1d7eoFdMROw10h2vXIWJmXdjwlKnSWWUm18GCrEOUeDUr+IMgz5EjO7JM7FQDHDMApeMgHyg==",
"dev": true,
"hasInstallScript": true,
+ "license": "MIT",
"dependencies": {
"@electron/get": "^2.0.0",
"@types/node": "^20.9.0",
diff --git a/materialious/electron/package.json b/materialious/electron/package.json
index 4847115b..9ebd3c4a 100644
--- a/materialious/electron/package.json
+++ b/materialious/electron/package.json
@@ -1,6 +1,6 @@
{
"name": "Materialious",
- "version": "1.6.26",
+ "version": "1.6.27",
"description": "Modern material design for Invidious.",
"author": {
"name": "Ward Pearce",
diff --git a/materialious/package-lock.json b/materialious/package-lock.json
index 27fda152..0fcba754 100644
--- a/materialious/package-lock.json
+++ b/materialious/package-lock.json
@@ -1,12 +1,12 @@
{
"name": "materialious",
- "version": "1.6.24",
+ "version": "1.6.26",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "materialious",
- "version": "1.6.24",
+ "version": "1.6.26",
"dependencies": {
"@capacitor-community/electron": "^5.0.1",
"@capacitor/android": "^6.1.2",
@@ -2025,12 +2025,12 @@
}
},
"node_modules/@capacitor/android": {
- "version": "6.1.2",
- "resolved": "https://registry.npmjs.org/@capacitor/android/-/android-6.1.2.tgz",
- "integrity": "sha512-Yh0gQDY1bgRrL25J6ecIlvvs2kF8iNSwIPXjyw6Yz9mnwYxBazF5KZbjpKtGPnJgicJhFkYGsqOkEtxrve0EoQ==",
+ "version": "6.2.0",
+ "resolved": "https://registry.npmjs.org/@capacitor/android/-/android-6.2.0.tgz",
+ "integrity": "sha512-3YIDPylV0Q2adEQ/H568p496QdYG0jK/XGMdx7OGSqdBZen92ciAsYdyhLtyl91UVsN1lBhDi5H6j3T2KS6aJg==",
"license": "MIT",
"peerDependencies": {
- "@capacitor/core": "^6.1.0"
+ "@capacitor/core": "^6.2.0"
}
},
"node_modules/@capacitor/app": {
@@ -2185,17 +2185,18 @@
}
},
"node_modules/@capacitor/core": {
- "version": "6.1.2",
- "resolved": "https://registry.npmjs.org/@capacitor/core/-/core-6.1.2.tgz",
- "integrity": "sha512-xFy1/4qLFLp5WCIzIhtwUuVNNoz36+V7/BzHmLqgVJcvotc4MMjswW/TshnPQaLLujEOaLkA4h8ZJ0uoK3ImGg==",
+ "version": "6.2.0",
+ "resolved": "https://registry.npmjs.org/@capacitor/core/-/core-6.2.0.tgz",
+ "integrity": "sha512-B9IlJtDpUqhhYb+T8+cp2Db/3RETX36STgjeU2kQZBs/SLAcFiMama227o+msRjLeo3DO+7HJjWVA1+XlyyPEg==",
+ "license": "MIT",
"dependencies": {
"tslib": "^2.1.0"
}
},
"node_modules/@capacitor/screen-orientation": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/@capacitor/screen-orientation/-/screen-orientation-6.0.2.tgz",
- "integrity": "sha512-CF+RFUIUYrvztlX+voHwvONdAbf/F9xuJWfMDnxjiGliu+oPTNLLTWxAFPmoyi3sVJcNoeQ+qwWzUfXa7ag59Q==",
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/@capacitor/screen-orientation/-/screen-orientation-6.0.3.tgz",
+ "integrity": "sha512-5R+tf+twRNnkZFGSWsQkEBz1MFyP1kzZDyqOA9rtXJlTQYNcFJWouSXEuNa+Ba6i6nEi4X83BuXVzEFJ7zDrgQ==",
"license": "MIT",
"peerDependencies": {
"@capacitor/core": "^6.0.0"
@@ -12599,9 +12600,9 @@
"dev": true
},
"node_modules/undici": {
- "version": "5.28.4",
- "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.4.tgz",
- "integrity": "sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==",
+ "version": "5.28.5",
+ "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.5.tgz",
+ "integrity": "sha512-zICwjrDrcrUE0pyyJc1I2QzBkLM8FINsgOrt6WjA+BgajVq9Nxu2PbFFXUrAggLfDXlZGZBVZYw7WNV5KiBiBA==",
"license": "MIT",
"dependencies": {
"@fastify/busboy": "^2.0.0"
@@ -12796,10 +12797,11 @@
}
},
"node_modules/vite": {
- "version": "5.4.9",
- "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.9.tgz",
- "integrity": "sha512-20OVpJHh0PAM0oSOELa5GaZNWeDjcAvQjGXy2Uyr+Tp+/D2/Hdz6NLgpJLsarPTA2QJ6v8mX2P1ZfbsSKvdMkg==",
+ "version": "5.4.14",
+ "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.14.tgz",
+ "integrity": "sha512-EK5cY7Q1D8JNhSaPKVK4pwBFvaTmZxEnoKXLG/U9gmdDcihQGNzFlgIvaxezFR4glP1LsuiedwMBqCXH3wZccA==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"esbuild": "^0.21.3",
"postcss": "^8.4.43",
diff --git a/materialious/package.json b/materialious/package.json
index d6319e0d..9bd8fe4b 100644
--- a/materialious/package.json
+++ b/materialious/package.json
@@ -1,6 +1,6 @@
{
"name": "materialious",
- "version": "1.6.26",
+ "version": "1.6.27",
"private": true,
"scripts": {
"dev": "vite dev",
diff --git a/materialious/src/routes/(app)/+layout.svelte b/materialious/src/routes/(app)/+layout.svelte
index b9149486..37499094 100644
--- a/materialious/src/routes/(app)/+layout.svelte
+++ b/materialious/src/routes/(app)/+layout.svelte
@@ -22,11 +22,12 @@
themeColorStore
} from '$lib/store';
import SyncParty from '$lib/SyncParty.svelte';
- import { setAmoledTheme, setTheme } from '$lib/theme';
+ import { getDynamicTheme, setAmoledTheme, setTheme } from '$lib/theme';
import Thumbnail from '$lib/Thumbnail.svelte';
import { App } from '@capacitor/app';
import { Browser } from '@capacitor/browser';
import { Capacitor } from '@capacitor/core';
+ import { StatusBar } from '@capacitor/status-bar';
import 'beercss';
import ui from 'beercss';
import 'material-dynamic-colors';
@@ -84,9 +85,15 @@
setAmoledTheme();
});
- darkModeStore.subscribe(() => {
+ darkModeStore.subscribe(async () => {
setTheme();
setAmoledTheme();
+
+ if (Capacitor.getPlatform() === 'android') {
+ await StatusBar.setBackgroundColor({
+ color: (await getDynamicTheme())['--surface-container']
+ });
+ }
});
App.addListener('appUrlOpen', (data) => {
@@ -182,14 +189,20 @@
// So user preferences overwrite instance preferences.
bookmarkletLoadFromUrl();
- const themeHex = get(themeColorStore);
+ let themeHex = get(themeColorStore);
if (themeHex) {
await ui('theme', themeHex);
} else if (Capacitor.getPlatform() === 'android') {
- try {
- const colorPalette = await colorTheme.getColorPalette();
- await ui('theme', convertToHexColorCode(colorPalette.primary));
- } catch {}
+ if (!themeHex) {
+ try {
+ const colorPalette = await colorTheme.getColorPalette();
+ themeHex = convertToHexColorCode(colorPalette.primary);
+ await ui('theme', themeHex);
+ await StatusBar.setBackgroundColor({
+ color: (await getDynamicTheme())['--surface-container']
+ });
+ } catch {}
+ }
}
setTheme();
diff --git a/update_versions.py b/update_versions.py
index 062841bf..296f6b85 100644
--- a/update_versions.py
+++ b/update_versions.py
@@ -5,7 +5,7 @@ import json
import os
import re
-LATEST_VERSION = "1.6.26"
+LATEST_VERSION = "1.6.27"
WORKING_DIR = os.path.join(os.path.dirname(os.path.realpath(__file__)), "materialious")
ROOT_PACKAGE = os.path.join(WORKING_DIR, "package.json")