feat(ui): auto-theme settings UI + i18n
Repoint the existing auto-theme Settings scaffold from the "System" theme to the new dynamic "Auto (dynamic)" option: - state.slint: add theme-is-auto (distinct from theme-is-system, which stays the native OS-palette follow). - AppearanceSettings.slint: gate the Source dropdown, image picker, detected-DE hint and Regenerate button on theme-is-auto, and drop the placeholder `unsupported` flag now that the rows are functional. - translations: add "Auto theme generation failed" to all 7 catalogs and give the es "Wallpaper Sync" string a proper Mexican-neutral translation. cc
This commit is contained in:
1 parent
caabdf9327
commit
1bbc98cc8e
9 files changed
+31
-11
No files matched your search
@@ -4370,3 +4370,6 @@ msgstr "Audioausgabefehler"
|
||||
|
||||
msgid "Direct ALSA device access is blocked inside Flatpak/Snap — switch the audio backend to PipeWire or System Default"
|
||||
msgstr "Direkter ALSA-Gerätezugriff ist in Flatpak/Snap blockiert — Audio-Backend auf PipeWire oder Systemstandard umstellen"
|
||||
|
||||
msgid "Auto theme generation failed"
|
||||
msgstr "Automatische Themenerstellung fehlgeschlagen"
|
||||
@@ -136,3 +136,6 @@ msgstr "No labels in your Library yet."
|
||||
|
||||
msgid "Library Albums"
|
||||
msgstr "Library Albums"
|
||||
|
||||
msgid "Auto theme generation failed"
|
||||
msgstr "Auto theme generation failed"
|
||||
@@ -12,7 +12,7 @@ msgid "System Colors"
|
||||
msgstr "Colores del Sistema"
|
||||
|
||||
msgid "Wallpaper Sync"
|
||||
msgstr "Wallpaper Sync"
|
||||
msgstr "Sincronizar con el fondo"
|
||||
|
||||
msgid "Custom Image"
|
||||
msgstr "Imagen Personalizada"
|
||||
@@ -4400,3 +4400,6 @@ msgstr "Error de salida de audio"
|
||||
|
||||
msgid "Direct ALSA device access is blocked inside Flatpak/Snap — switch the audio backend to PipeWire or System Default"
|
||||
msgstr "El acceso directo a dispositivos ALSA está bloqueado dentro de Flatpak/Snap — cambia el backend de audio a PipeWire o al predeterminado del sistema"
|
||||
|
||||
msgid "Auto theme generation failed"
|
||||
msgstr "Error al generar el tema automático"
|
||||
@@ -4370,3 +4370,6 @@ msgstr "Erreur de sortie audio"
|
||||
|
||||
msgid "Direct ALSA device access is blocked inside Flatpak/Snap — switch the audio backend to PipeWire or System Default"
|
||||
msgstr "L'accès direct aux périphériques ALSA est bloqué dans Flatpak/Snap — passez le backend audio sur PipeWire ou la sortie système"
|
||||
|
||||
msgid "Auto theme generation failed"
|
||||
msgstr "Échec de la génération du thème automatique"
|
||||
@@ -4359,3 +4359,6 @@ msgstr "オーディオ出力エラー"
|
||||
|
||||
msgid "Direct ALSA device access is blocked inside Flatpak/Snap — switch the audio backend to PipeWire or System Default"
|
||||
msgstr "Flatpak/Snap 内では ALSA デバイスへの直接アクセスがブロックされます — オーディオバックエンドを PipeWire またはシステム既定に切り替えてください"
|
||||
|
||||
msgid "Auto theme generation failed"
|
||||
msgstr "自動テーマの生成に失敗しました"
|
||||
@@ -4370,3 +4370,6 @@ msgstr "Erro de saída de áudio"
|
||||
|
||||
msgid "Direct ALSA device access is blocked inside Flatpak/Snap — switch the audio backend to PipeWire or System Default"
|
||||
msgstr "O acesso direto a dispositivos ALSA está bloqueado no Flatpak/Snap — mude o backend de áudio para PipeWire ou o padrão do sistema"
|
||||
|
||||
msgid "Auto theme generation failed"
|
||||
msgstr "Falha ao gerar o tema automático"
|
||||
@@ -4383,3 +4383,6 @@ msgstr "Ошибка аудиовывода"
|
||||
|
||||
msgid "Direct ALSA device access is blocked inside Flatpak/Snap — switch the audio backend to PipeWire or System Default"
|
||||
msgstr "Прямой доступ к устройствам ALSA заблокирован в Flatpak/Snap — переключите аудиобэкенд на PipeWire или системный вывод"
|
||||
|
||||
msgid "Auto theme generation failed"
|
||||
msgstr "Не удалось сгенерировать автоматическую тему"
|
||||
@@ -199,9 +199,8 @@ export component AppearanceSettings inherits VerticalLayout {
|
||||
}
|
||||
}
|
||||
|
||||
// Auto-Theme controls — only when the "System" theme is selected.
|
||||
if AppearanceState.theme-is-system: SettingRow {
|
||||
unsupported: true;
|
||||
// Auto-Theme controls — only when the "Auto (dynamic)" theme is selected.
|
||||
if AppearanceState.theme-is-auto: SettingRow {
|
||||
label: @tr("Source");
|
||||
description: @tr("Generate a color theme from your system wallpaper or a custom image");
|
||||
QbzSelect {
|
||||
@@ -214,8 +213,7 @@ export component AppearanceSettings inherits VerticalLayout {
|
||||
}
|
||||
}
|
||||
}
|
||||
if AppearanceState.theme-is-system && AppearanceState.auto-theme-source-index == 2: SettingRow {
|
||||
unsupported: true;
|
||||
if AppearanceState.theme-is-auto && AppearanceState.auto-theme-source-index == 2: SettingRow {
|
||||
label: AppearanceState.auto-theme-custom-path != ""
|
||||
? AppearanceState.auto-theme-custom-path
|
||||
: @tr("Select Image...");
|
||||
@@ -226,12 +224,11 @@ export component AppearanceSettings inherits VerticalLayout {
|
||||
}
|
||||
}
|
||||
}
|
||||
if AppearanceState.theme-is-system && AppearanceState.auto-theme-detected-de != "": SettingRow {
|
||||
if AppearanceState.theme-is-auto && AppearanceState.auto-theme-detected-de != "": SettingRow {
|
||||
label: @tr("Detected: ") + AppearanceState.auto-theme-detected-de;
|
||||
description: @tr("Experimental: theme may not match your system exactly.");
|
||||
}
|
||||
if AppearanceState.theme-is-system: SettingRow {
|
||||
unsupported: true;
|
||||
if AppearanceState.theme-is-auto: SettingRow {
|
||||
label: @tr("Regenerate");
|
||||
SecondaryButton {
|
||||
label: @tr("Regenerate");
|
||||
|
||||
@@ -2898,9 +2898,11 @@ export global AppearanceState {
|
||||
|
||||
in-out property <bool> album-header-gradient: true;
|
||||
|
||||
// Auto-Theme (shown when the "System" theme is selected). Source:
|
||||
// 0 = System Colors, 1 = Wallpaper Sync, 2 = Custom Image.
|
||||
// True while the "System" theme is selected (native OS-palette follow).
|
||||
in-out property <bool> theme-is-system: false;
|
||||
// Auto-Theme (shown when the appended "Auto (dynamic)" theme is selected).
|
||||
// Source: 0 = System Colors, 1 = Wallpaper Sync, 2 = Custom Image.
|
||||
in-out property <bool> theme-is-auto: false;
|
||||
in-out property <[string]> auto-theme-sources: [@tr("System Colors"), @tr("Wallpaper Sync"), @tr("Custom Image")];
|
||||
in-out property <int> auto-theme-source-index: 0;
|
||||
in-out property <string> auto-theme-custom-path: "";
|
||||
|
||||
Reference in new issue
Block a user