Transparent windows require platform-specific workarounds (WebView2 on Windows, compositor support on Linux) and don't work on mobile. Use an opaque window instead, removing the outer padding, rounded corners, and drop shadow that depended on transparency. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
36 lines
1,003 B
Svelte
36 lines
1,003 B
Svelte
<script lang="ts">
|
|
import { onMount } from "svelte";
|
|
import { app } from "./lib/stores/app.svelte";
|
|
import SetupScreen from "./lib/screens/SetupScreen.svelte";
|
|
import TasksScreen from "./lib/screens/TasksScreen.svelte";
|
|
|
|
|
|
onMount(() => {
|
|
app.loadConfig();
|
|
});
|
|
</script>
|
|
|
|
<div class={app.darkMode ? "dark" : ""}>
|
|
<div class="h-screen w-screen">
|
|
<div
|
|
class="relative h-full w-full overflow-hidden bg-surface-light text-text-light dark:bg-surface-dark dark:text-text-dark"
|
|
style="container-type: inline-size"
|
|
>
|
|
{#if app.error}
|
|
<div
|
|
class="absolute top-0 left-0 right-0 z-50 flex items-center justify-between bg-danger px-4 py-2 text-sm text-white"
|
|
>
|
|
<span>{app.error}</span>
|
|
<button onclick={() => app.clearError()} class="ml-2 font-bold">✕</button>
|
|
</div>
|
|
{/if}
|
|
|
|
{#if app.screen === "setup"}
|
|
<SetupScreen />
|
|
{:else}
|
|
<TasksScreen />
|
|
{/if}
|
|
</div>
|
|
</div>
|
|
</div>
|