fix(webui): use theme vars for warnings, show restart notice after save
- commit
- 39cf1a7914ba0118534ed7bc7743f0dffa2a941d
- author
- brice · · 2025-12-28 19:45 UTC
- committer
- brice · · 2025-12-29 17:28 UTC
- parent
- f2573c8
- signature
- unsigned
1 file · +24 -5
M webui/src/pages/ConfigPage.svelte +24 -5
| @@ -86,6 +86,7 @@ | |||
| 86 | 86 | let saving = $state(false); | |
| 87 | 87 | let saveSuccess = $state(false); | |
| 88 | 88 | let saveError = $state<string | null>(null); | |
| 89 | + | let showRestartWarning = $state(false); | |
| 89 | 90 | let themeEvents = $state(0); | |
| 90 | 91 | let activeTab = $state("appearance"); | |
| 91 | 92 | ||
| @@ -182,6 +183,11 @@ | |||
| 182 | 183 | saveSuccess = true; | |
| 183 | 184 | saving = false; | |
| 184 | 185 | ||
| 186 | + | // Show restart warning if performance tab was active | |
| 187 | + | if (activeTab === "performance") { | |
| 188 | + | showRestartWarning = true; | |
| 189 | + | } | |
| 190 | + | ||
| 185 | 191 | // Refresh config from backend (in case watcher normalized values) | |
| 186 | 192 | reloadConfig(); | |
| 187 | 193 | ||
| @@ -409,13 +415,13 @@ | |||
| 409 | 415 | </Card.Description> | |
| 410 | 416 | </Card.Header> | |
| 411 | 417 | <Card.Content class="space-y-6"> | |
| 412 | - | <!-- Restart warning banner --> | |
| 413 | - | <div class="flex items-start gap-3 rounded-md border border-amber-500/30 bg-amber-500/10 px-4 py-3"> | |
| 414 | - | <span class="text-amber-500">⚠</span> | |
| 418 | + | <!-- Experimental feature warning --> | |
| 419 | + | <div class="flex items-start gap-3 rounded-md border border-info/30 bg-info/10 px-4 py-3"> | |
| 420 | + | <span class="text-info">🧪</span> | |
| 415 | 421 | <div class="space-y-1"> | |
| 416 | - | <p class="text-sm font-medium text-amber-500">Restart Required</p> | |
| 422 | + | <p class="text-sm font-medium text-info">Experimental Feature</p> | |
| 417 | 423 | <p class="text-xs text-muted-foreground"> | |
| 418 | - | Performance settings are applied at browser startup. Changes will take effect after restarting Dumber. | |
| 424 | + | Performance profiles are experimental. Results may vary depending on your hardware and WebKitGTK version. | |
| 419 | 425 | </p> | |
| 420 | 426 | </div> | |
| 421 | 427 | </div> | |
| @@ -539,6 +545,19 @@ | |||
| 539 | 545 | {saveError} | |
| 540 | 546 | </div> | |
| 541 | 547 | {/if} | |
| 548 | + | ||
| 549 | + | <!-- Restart warning after saving performance settings --> | |
| 550 | + | {#if showRestartWarning} | |
| 551 | + | <div class="flex items-start gap-3 border border-warning/30 bg-warning/10 px-4 py-3"> | |
| 552 | + | <span class="text-warning">⚠</span> | |
| 553 | + | <div class="space-y-1"> | |
| 554 | + | <p class="text-sm font-medium text-warning">Restart Required</p> | |
| 555 | + | <p class="text-xs text-muted-foreground"> | |
| 556 | + | Performance settings are applied at browser startup. Restart Dumber for changes to take effect. | |
| 557 | + | </p> | |
| 558 | + | </div> | |
| 559 | + | </div> | |
| 560 | + | {/if} | |
| 542 | 561 | {/if} | |
| 543 | 562 | </div> | |
| 544 | 563 | </ConfigShell> | |
| @@ -86,6 +86,7 @@ | |||||
| 86 | let saving = $state(false); | 86 | let saving = $state(false); | ||
| 87 | let saveSuccess = $state(false); | 87 | let saveSuccess = $state(false); | ||
| 88 | let saveError = $state<string | null>(null); | 88 | let saveError = $state<string | null>(null); | ||
| 89 | + | let showRestartWarning = $state(false); | |||
| 89 | let themeEvents = $state(0); | 90 | let themeEvents = $state(0); | ||
| 90 | let activeTab = $state("appearance"); | 91 | let activeTab = $state("appearance"); | ||
| 91 | 92 | ||||
| @@ -182,6 +183,11 @@ | |||||
| 182 | saveSuccess = true; | 183 | saveSuccess = true; | ||
| 183 | saving = false; | 184 | saving = false; | ||
| 184 | 185 | ||||
| 186 | + | // Show restart warning if performance tab was active | |||
| 187 | + | if (activeTab === "performance") { | |||
| 188 | + | showRestartWarning = true; | |||
| 189 | + | } | |||
| 190 | + | ||||
| 185 | // Refresh config from backend (in case watcher normalized values) | 191 | // Refresh config from backend (in case watcher normalized values) | ||
| 186 | reloadConfig(); | 192 | reloadConfig(); | ||
| 187 | 193 | ||||
| @@ -409,13 +415,13 @@ | |||||
| 409 | </Card.Description> | 415 | </Card.Description> | ||
| 410 | </Card.Header> | 416 | </Card.Header> | ||
| 411 | <Card.Content class="space-y-6"> | 417 | <Card.Content class="space-y-6"> | ||
| 412 | - | <!-- Restart warning banner --> | 418 | + | <!-- Experimental feature warning --> |
| 413 | - | <div class="flex items-start gap-3 rounded-md border border-amber-500/30 bg-amber-500/10 px-4 py-3"> | 419 | + | <div class="flex items-start gap-3 rounded-md border border-info/30 bg-info/10 px-4 py-3"> |
| 414 | - | <span class="text-amber-500">⚠</span> | 420 | + | <span class="text-info">🧪</span> |
| 415 | <div class="space-y-1"> | 421 | <div class="space-y-1"> | ||
| 416 | - | <p class="text-sm font-medium text-amber-500">Restart Required</p> | 422 | + | <p class="text-sm font-medium text-info">Experimental Feature</p> |
| 417 | <p class="text-xs text-muted-foreground"> | 423 | <p class="text-xs text-muted-foreground"> | ||
| 418 | - | Performance settings are applied at browser startup. Changes will take effect after restarting Dumber. | 424 | + | Performance profiles are experimental. Results may vary depending on your hardware and WebKitGTK version. |
| 419 | </p> | 425 | </p> | ||
| 420 | </div> | 426 | </div> | ||
| 421 | </div> | 427 | </div> | ||
| @@ -539,6 +545,19 @@ | |||||
| 539 | {saveError} | 545 | {saveError} | ||
| 540 | </div> | 546 | </div> | ||
| 541 | {/if} | 547 | {/if} | ||
| 548 | + | ||||
| 549 | + | <!-- Restart warning after saving performance settings --> | |||
| 550 | + | {#if showRestartWarning} | |||
| 551 | + | <div class="flex items-start gap-3 border border-warning/30 bg-warning/10 px-4 py-3"> | |||
| 552 | + | <span class="text-warning">⚠</span> | |||
| 553 | + | <div class="space-y-1"> | |||
| 554 | + | <p class="text-sm font-medium text-warning">Restart Required</p> | |||
| 555 | + | <p class="text-xs text-muted-foreground"> | |||
| 556 | + | Performance settings are applied at browser startup. Restart Dumber for changes to take effect. | |||
| 557 | + | </p> | |||
| 558 | + | </div> | |||
| 559 | + | </div> | |||
| 560 | + | {/if} | |||
| 542 | {/if} | 561 | {/if} | ||
| 543 | </div> | 562 | </div> | ||
| 544 | </ConfigShell> | 563 | </ConfigShell> | ||