From a22d5d16ef46b3b3bdca738f84f0e91ee5cace71 Mon Sep 17 00:00:00 2001 From: ThaUnknown <6506529+ThaUnknown@users.noreply.github.com> Date: Wed, 28 May 2025 01:31:10 +0200 Subject: [PATCH] feat: UI scale --- package.json | 2 +- src/app.d.ts | 1 + src/app.html | 1 - src/lib/components/ui/sidebar/sidebarlist.svelte | 4 ++-- src/lib/modules/native.ts | 1 + src/lib/modules/settings/defaults.ts | 1 + src/lib/modules/settings/settings.ts | 1 + src/routes/+layout.svelte | 5 +++++ src/routes/app/settings/interface/+page.svelte | 8 ++++++-- 9 files changed, 18 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index 29265d4..a25ae8a 100644 --- a/package.json +++ b/package.json @@ -30,7 +30,7 @@ "eslint-config-standard-universal": "^1.0.6", "gql.tada": "^1.8.10", "hayase-extensions": "github:hayase-app/extensions", - "jassub": "^1.7.18", + "jassub": "^1.7.20", "svelte": "^4.2.19", "svelte-check": "^4.2.1", "svelte-radix": "^1.1.1", diff --git a/src/app.d.ts b/src/app.d.ts index 3d4f360..4d79a57 100644 --- a/src/app.d.ts +++ b/src/app.d.ts @@ -102,6 +102,7 @@ export interface Native { spawnPlayer: (url: string) => Promise setHideToTray: (enabled: boolean) => Promise transparency: (enabled: boolean) => Promise + setZoom: (scale: number) => Promise isApp: boolean version: () => Promise navigate: (cb: (data: { target: string, value: string | undefined }) => void) => Promise diff --git a/src/app.html b/src/app.html index 3464714..7aea254 100644 --- a/src/app.html +++ b/src/app.html @@ -5,7 +5,6 @@ Hayase - %sveltekit.head% diff --git a/src/lib/components/ui/sidebar/sidebarlist.svelte b/src/lib/components/ui/sidebar/sidebarlist.svelte index f01b152..9cabcc3 100644 --- a/src/lib/components/ui/sidebar/sidebarlist.svelte +++ b/src/lib/components/ui/sidebar/sidebarlist.svelte @@ -50,10 +50,10 @@ - + - diff --git a/src/lib/modules/native.ts b/src/lib/modules/native.ts index 086c23b..fbcdcb1 100644 --- a/src/lib/modules/native.ts +++ b/src/lib/modules/native.ts @@ -85,6 +85,7 @@ export default Object.assign>({ spawnPlayer: () => sleep(rnd(100_000)), setHideToTray: async () => undefined, transparency: async () => undefined, + setZoom: async () => undefined, // @ts-expect-error yeah navigate: async (cb) => { globalThis.___navigate = cb }, downloadProgress: async (percent: number) => undefined, diff --git a/src/lib/modules/settings/defaults.ts b/src/lib/modules/settings/defaults.ts index dafba4b..4cc29c6 100644 --- a/src/lib/modules/settings/defaults.ts +++ b/src/lib/modules/settings/defaults.ts @@ -33,6 +33,7 @@ export default { torrentPath: '', angle: 'default' as 'default' | 'd3d11'| 'd3d9' | 'warp' | 'gl' | 'gles' | 'swiftshader' | 'vulkan' | 'metal', idleAnimation: true, + uiScale: 1, enableExternal: false, playerPath: '', playerSeek: '2', diff --git a/src/lib/modules/settings/settings.ts b/src/lib/modules/settings/settings.ts index 32a35ae..e88c61d 100644 --- a/src/lib/modules/settings/settings.ts +++ b/src/lib/modules/settings/settings.ts @@ -11,5 +11,6 @@ settings.subscribe(settings => { native.updateSettings({ torrentPersist, torrentDHT, torrentStreamedDownload, torrentSpeed, maxConns, torrentPort, dhtPort, torrentPeX }) native.setHideToTray(settings.hideToTray) native.transparency(settings.idleAnimation) + native.setZoom(settings.uiScale) if (settings.enableDoH) native.setDOH(settings.doHURL) }) diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte index 07614ed..c20b8c0 100644 --- a/src/routes/+layout.svelte +++ b/src/routes/+layout.svelte @@ -9,6 +9,7 @@ import { Menubar } from '$lib/components/ui/menubar' import { Toaster } from '$lib/components/ui/sonner' import native from '$lib/modules/native' + import { settings, SUPPORTS } from '$lib/modules/settings' let root: HTMLDivElement @@ -19,6 +20,10 @@ }) + + + +
diff --git a/src/routes/app/settings/interface/+page.svelte b/src/routes/app/settings/interface/+page.svelte index 25ba353..810b8ed 100644 --- a/src/routes/app/settings/interface/+page.svelte +++ b/src/routes/app/settings/interface/+page.svelte @@ -17,6 +17,7 @@