From 57bd9f9c9939260d16f40e4d54eb3ffe0f0a16b7 Mon Sep 17 00:00:00 2001 From: Marco Migozzi Date: Mon, 23 Feb 2026 09:26:03 +0100 Subject: [PATCH 1/8] feat(i18n): add full Italian locale support and enable it in language selector This commit introduces complete Italian localization for Noctalia shell and wires the locale into the runtime language list. Changes included: - Added new translation file: Assets/Translations/it.json - Localized the full string tree used by the shell UI, including: - common labels and shared terms - bar and widget settings - launcher, lock screen, notifications, wallpaper, weather, setup, tooltips - all settings panels and sub-panels (audio, display, dock, plugins, user interface, hooks, OSD, desktop widgets, color scheme, etc.) - Preserved all runtime placeholders and markup tokens (e.g. {count}, {name},
, , , ) - Enabled Italian in the language registry by updating Commons/I18n.qml availableLanguages Validation and consistency checks: - Verified JSON validity of Assets/Translations/it.json - Verified placeholder parity against English source to avoid interpolation regressions - Ensured translation key structure matches en.json so fallback behavior remains intact Result: - Italian (it) is now selectable from Region settings and loads as a first-class locale. --- Assets/Translations/it.json | 2049 +++++++++++++++++++++++++++++++++++ Commons/I18n.qml | 2 +- 2 files changed, 2050 insertions(+), 1 deletion(-) create mode 100644 Assets/Translations/it.json diff --git a/Assets/Translations/it.json b/Assets/Translations/it.json new file mode 100644 index 000000000..b4fe8d852 --- /dev/null +++ b/Assets/Translations/it.json @@ -0,0 +1,2049 @@ +{ + "actions": { + "clear-history": "Cancella cronologia", + "close-app": "Chiudi {app}", + "connect-vpn": "Connetti a {name}", + "cycle-visualizer": "Cambia visualizzatore", + "disable-bluetooth": "Disattiva Bluetooth", + "disable-dnd": "Disattiva Non disturbare", + "disable-wifi": "Disattiva Wi-Fi", + "disconnect-vpn": "Disconnetti {name}", + "dock-settings": "Impostazioni dock", + "enable-bluetooth": "Attiva Bluetooth", + "enable-dnd": "Attiva Non disturbare", + "enable-wifi": "Attiva Wi-Fi", + "launcher-settings": "Impostazioni launcher", + "lower-to-bottom": "Porta in basso", + "open-calendar": "Apri calendario", + "open-display-settings": "Impostazioni schermo", + "open-launcher": "Apri launcher", + "open-settings": "Apri impostazioni", + "raise-to-top": "Porta in primo piano", + "random-wallpaper": "Sfondo casuale", + "run-custom-command": "Esegui comando personalizzato", + "show-active-only": "Mostra solo attive", + "show-all": "Mostra tutto", + "toggle-mute": "Attiva/disattiva muto", + "widget-settings": "Impostazioni widget" + }, + "authentication": { + "error": "Errore di autenticazione", + "failed": "Autenticazione non riuscita" + }, + "bar": { + "active-window": { + "colorize-icons-description": "Applica i colori del tema all’icona della finestra attiva.", + "hide-mode-description": "Controlla il comportamento del widget quando non c’è alcuna finestra attiva.", + "scrolling-mode-description": "Controlla quando abilitare lo scorrimento del testo per titoli finestra lunghi.", + "show-app-icon-description": "Mostra l’icona dell’applicazione accanto al titolo della finestra.", + "show-app-icon-label": "Mostra icona app" + }, + "audio-visualizer": { + "color-name-description": "Seleziona il colore del visualizzatore.", + "color-name-label": "Colore riempimento", + "hide-when-idle-description": "Se attivo, il visualizzatore viene nascosto quando nessun player è in riproduzione.", + "hide-when-idle-label": "Nascondi quando non è in riproduzione nulla", + "width-description": "Larghezza personalizzata del componente." + }, + "battery": { + "device-default": "Predefinito (dispositivo schermo)", + "device-description": "Seleziona quale dispositivo batteria visualizzare.", + "device-label": "Dispositivo batteria", + "display-mode-description": "Scegli come visualizzare la batteria nella barra.", + "display-mode-graphic": "Batteria grafica", + "display-mode-graphic-clean": "Batteria grafica (senza %)", + "display-mode-icon-always": "Icona - Mostra sempre %", + "display-mode-icon-hover": "Icona - Mostra al passaggio", + "display-mode-icon-only": "Solo icona", + "hide-if-idle-description": "Nasconde il widget quando la batteria non sta caricando o scaricando.", + "hide-if-idle-label": "Nascondi quando inattiva", + "hide-if-not-detected-description": "Nasconde il widget quando non viene rilevata alcuna batteria nel sistema.", + "hide-if-not-detected-label": "Nascondi se non rilevata", + "low-battery-threshold-label": "Soglia avviso batteria scarica", + "show-noctalia-performance-description": "Mostra l’interruttore Modalità Prestazioni Noctalia nel pannello batteria.
Disattiva ombre e animazioni in Noctalia per ridurre l’uso di risorse.", + "show-noctalia-performance-label": "Mostra interruttore Prestazioni Noctalia", + "show-power-profile-description": "Mostra la selezione del profilo energetico nel pannello batteria.", + "show-power-profile-label": "Mostra controlli profilo energetico" + }, + "brightness": { + "apply-all-description": "Cambia la luminosità su tutti i monitor usando la rotella del mouse.", + "apply-all-label": "Applica modifiche di scorrimento a tutti i monitor" + }, + "clock": { + "clock-display-description": "Personalizza la visualizzazione dell’orologio aggiungendo token dall’elenco qui sotto. Per usare il formato 12 ore devi includere il token \"AP\".", + "clock-display-label": "Visualizzazione orologio", + "custom-font-description": "Seleziona un font personalizzato per la visualizzazione dell’orologio.", + "custom-font-label": "Font personalizzato", + "custom-font-placeholder": "Seleziona font personalizzato...", + "custom-font-search-placeholder": "Cerca font...", + "horizontal-bar-description": "Suggerimento: usa \\n per creare un’interruzione di riga.", + "horizontal-bar-label": "Barra orizzontale", + "preview": "Anteprima", + "tooltip-format-description": "Stringa di formato del tooltip mostrato al passaggio sull’orologio. Lascia vuoto per usare quello predefinito.", + "tooltip-format-label": "Formato tooltip", + "use-custom-font-description": "Sovrascrive la selezione del font predefinito con un font personalizzato per l’orologio.", + "use-custom-font-label": "Usa font personalizzato", + "use-monospaced-font-description": "Se attivo, l’orologio userà un font monospaziato.", + "use-monospaced-font-label": "Usa font monospaziato", + "vertical-bar-description": "Usa uno spazio per separare ogni parte su una nuova riga.", + "vertical-bar-label": "Barra verticale" + }, + "control-center": { + "browse-file": "Sfoglia file", + "browse-library": "Sfoglia libreria", + "color-selection-description": "Applica i colori del tema alle icone.", + "enable-colorization-description": "Abilita la colorazione dell’icona del centro di controllo applicando i colori del tema.", + "icon-description": "Seleziona un’icona dalla libreria o un file personalizzato.", + "select-custom-icon": "Seleziona un’icona personalizzata", + "use-distro-logo-description": "Usa il logo della tua distribuzione invece di un’icona personalizzata.", + "use-distro-logo-label": "Usa logo distro al posto dell’icona" + }, + "custom-button": { + "collapse-condition-description": "Se il testo di output corrisponde a questo valore, il pulsante verrà compresso.", + "collapse-condition-label": "Condizione di compressione", + "color-selection-description": "Applica i colori del tema a icona e testo.", + "default-tooltip": "Pulsante personalizzato, configurarlo nelle impostazioni", + "display-command-output-description": "Inserisci un comando da eseguire a intervalli regolari. La prima riga dell’output verrà mostrata come testo.", + "display-command-output-label": "Mostra output comando", + "display-command-output-stream-description": "Inserisci un comando da eseguire in modo continuo.", + "dynamic-text": "Testo dinamico", + "enable-colorization-description": "Abilita la colorazione di icona e testo del pulsante personalizzato applicando i colori del tema.", + "enable-colorization-label": "Abilita colorazione", + "general-tooltip-text-description": "Testo personalizzato da mostrare nel tooltip del pulsante.", + "general-tooltip-text-label": "Testo tooltip personalizzato", + "hide-mode-always-expanded": "Sempre espanso", + "hide-mode-description": "Controlla la visibilità del widget quando il comando non ha output.", + "hide-mode-expand-with-output": "Espandi quando c’è output", + "hide-mode-label": "Modalità nascondi", + "hide-mode-max-transparent": "Massimo espanso ma trasparente", + "icon-description": "Seleziona un’icona dalla libreria.", + "ipc-identifier-description": "Identificatore univoco per i comandi IPC. Usa questo identificatore con \"qs -c noctalia-shell ipc call cb [action] [identifier]\" per controllare questo pulsante via IPC.", + "ipc-identifier-label": "Identificatore IPC", + "left-click-description": "Comando da eseguire al clic sinistro sul pulsante.", + "left-click-label": "Clic sinistro", + "left-click-update-text": "Aggiorna testo visualizzato al clic sinistro", + "max-text-length-horizontal-description": "Numero massimo di caratteri da mostrare in barra orizzontale (0 per nascondere il testo).", + "max-text-length-horizontal-label": "Lunghezza max testo (orizzontale)", + "max-text-length-vertical-description": "Numero massimo di caratteri da mostrare in barra verticale (0 per nascondere il testo).", + "max-text-length-vertical-label": "Lunghezza max testo (verticale)", + "middle-click-description": "Comando da eseguire al clic centrale sul pulsante.", + "middle-click-label": "Clic centrale", + "middle-click-update-text": "Aggiorna testo visualizzato al clic centrale", + "parse-json-description": "Interpreta l’output del comando come oggetto JSON per impostare dinamicamente testo e icona.", + "parse-json-label": "Interpreta output come JSON", + "refresh-interval-description": "Intervallo in millisecondi.", + "refresh-interval-label": "Intervallo aggiornamento", + "right-click-description": "Comando da eseguire al clic destro sul pulsante.", + "right-click-label": "Clic destro", + "right-click-update-text": "Aggiorna testo visualizzato al clic destro", + "show-exec-tooltip-description": "Mostra tooltip con i dettagli dei comandi (clic sinistro/destro/centrale, rotella).", + "show-exec-tooltip-label": "Mostra tooltip comandi", + "show-icon-description": "Attiva/disattiva la visibilità dell’icona del widget.", + "show-icon-label": "Mostra icona", + "show-text-tooltip-description": "Mostra tooltip con l’output del comando di testo.", + "show-text-tooltip-label": "Mostra tooltip testo dinamico", + "text-stream-description": "Le righe in streaming del comando verranno mostrate come testo sul pulsante.", + "text-stream-label": "Flusso", + "wheel-description": "Comando da eseguire quando viene usata la rotella del mouse.
Usa $delta nel comando per il delta della rotella.", + "wheel-down": "Scorri giù", + "wheel-down-description": "Comando da eseguire quando la rotella viene fatta scorrere verso il basso.", + "wheel-down-label": "Comando rotella giù", + "wheel-label": "Rotella mouse", + "wheel-mode-separate-description": "Abilita comandi separati per rotella su e giù.", + "wheel-mode-separate-label": "Comandi rotella separati", + "wheel-up": "Scorri su", + "wheel-up-description": "Comando da eseguire quando la rotella viene fatta scorrere verso l’alto.", + "wheel-up-label": "Comando rotella su", + "wheel-update-text": "Aggiorna testo visualizzato allo scorrimento" + }, + "keyboard-layout": { + "show-icon-description": "Mostra l’icona del layout tastiera." + }, + "lock-keys": { + "hide-when-off-description": "Nasconde l’indicatore quando il tasto non è attivo.", + "hide-when-off-label": "Nascondi quando spento", + "show-caps-lock-description": "Mostra lo stato Caps Lock.", + "show-caps-lock-label": "Caps Lock", + "show-num-lock-description": "Mostra lo stato Num Lock.", + "show-num-lock-label": "Num Lock", + "show-scroll-lock-description": "Mostra lo stato Scroll Lock.", + "show-scroll-lock-label": "Scroll Lock" + }, + "media-mini": { + "compact-mode-description": "Abilita un layout salvaspazio per il pannello lettore multimediale.", + "compact-mode-label": "Modalità compatta", + "hide-mode-description": "Controlla il comportamento del widget quando non è in riproduzione alcun contenuto.", + "max-width-description": "Imposta la dimensione orizzontale massima del widget. Il widget si ridurrà con contenuti più brevi.", + "no-active-player": "Nessun player attivo", + "panel-section-description": "Configura aspetto e comportamento del pannello lettore multimediale.", + "panel-section-label": "Pannello lettore multimediale", + "scrolling-mode-description": "Controlla quando abilitare lo scorrimento del testo per titoli brano lunghi.", + "scrolling-mode-label": "Modalità scorrimento", + "show-album-art-description": "Mostra la copertina dell’album del brano attualmente in riproduzione.", + "show-album-art-label": "Mostra copertina album", + "show-artist-first-description": "Mostra artista - titolo invece di titolo - artista.", + "show-artist-first-label": "Mostra prima artista", + "show-progress-ring-description": "Mostra un indicatore circolare del progresso del brano.", + "show-progress-ring-label": "Mostra anello progresso", + "show-visualizer-description": "Mostra un visualizzatore audio durante la riproduzione musicale.", + "show-visualizer-label": "Mostra visualizzatore", + "use-fixed-width-description": "Se attivo, il widget userà sempre la larghezza massima invece di adattarsi dinamicamente al contenuto.", + "use-fixed-width-label": "Usa larghezza fissa", + "visualizer-type-description": "Scegli lo stile del visualizzatore audio da mostrare.", + "visualizer-type-label": "Tipo visualizzatore" + }, + "notification-history": { + "hide-widget-when-zero-description": "Nasconde l’icona notifiche quando non ci sono notifiche.", + "hide-widget-when-zero-label": "Nascondi icona quando non ci sono notifiche", + "hide-widget-when-zero-unread-description": "Nasconde l’icona notifiche quando non ci sono notifiche non lette.", + "hide-widget-when-zero-unread-label": "Nascondi icona quando non ci sono non lette", + "show-unread-badge-description": "Mostra un badge con il numero di notifiche non lette.", + "show-unread-badge-label": "Mostra badge non lette", + "unread-badge-color-description": "Seleziona il colore del badge notifiche non lette.", + "unread-badge-color-label": "Colore badge non lette" + }, + "section-editor": { + "placeholder": "Seleziona un widget da aggiungere...", + "search-placeholder": "Cerca widget..." + }, + "spacer": { + "width-description": "Larghezza spaziatura in pixel." + }, + "system-monitor": { + "compact-mode-description": "Mostra statistiche come mini grafici a barre invece di valori testuali. Evita spostamenti del layout.", + "compact-mode-label": "Modalità compatta", + "cpu-frequency-description": "Mostra la frequenza corrente della CPU in GHz.", + "cpu-frequency-label": "Mostra frequenza CPU", + "cpu-temperature-description": "Mostra le letture della temperatura CPU se disponibili.", + "cpu-temperature-label": "Temperatura CPU", + "cpu-usage-description": "Mostra la percentuale di utilizzo CPU corrente.", + "cpu-usage-label": "Utilizzo CPU", + "disk-path-description": "Seleziona quale punto di mount disco monitorare.", + "disk-path-label": "Percorso disco", + "gpu-temperature-description": "Mostra le letture della temperatura GPU se disponibili.", + "load-average-description": "Mostra il carico medio del sistema.", + "load-average-label": "Carico medio", + "memory-percentage-description": "Mostra l’uso memoria in percentuale invece che in valori assoluti.", + "memory-percentage-label": "Memoria in percentuale", + "memory-usage-description": "Mostra le informazioni sull’uso RAM corrente.", + "memory-usage-label": "Uso memoria", + "network-traffic-description": "Mostra velocità di upload e download di rete.", + "network-traffic-label": "Traffico di rete", + "storage-as-percentage-description": "Mostra lo spazio disco in percentuale invece che in valori assoluti.", + "storage-as-percentage-label": "Disco in percentuale", + "storage-available-description": "Mostra quanto spazio disco è disponibile invece di quanto è usato.", + "storage-available-label": "Spazio disco disponibile", + "storage-usage-description": "Mostra informazioni sull’uso dello spazio disco.", + "storage-usage-label": "Uso spazio disco", + "swap-usage-description": "Mostra utilizzo della memoria swap.", + "swap-usage-label": "Uso swap", + "use-monospace-font-description": "Usa font monospaziato per larghezza caratteri coerente.", + "use-monospace-font-label": "Font monospaziato", + "use-padding-description": "Aggiunge spazi iniziali ai valori testuali per evitare spostamenti del layout.", + "use-padding-description-disabled-monospace-font": "Per questa funzione è necessario un font monospaziato.", + "use-padding-description-disabled-vertical": "La barra verticale non supporta il padding del testo.", + "use-padding-label": "Padding testo" + }, + "taskbar": { + "colorize-icons-description": "Applica i colori del tema alle icone della taskbar.", + "hide-mode-description": "Controlla il comportamento del widget quando non ci sono finestre corrispondenti.", + "hide-mode-label": "Modalità nascondimento", + "icon-scale-description": "Imposta il fattore di scala per le icone della taskbar.", + "icon-scale-label": "Scala icone", + "max-width-description": "Larghezza massima della taskbar come percentuale della larghezza schermo.", + "max-width-label": "Larghezza massima", + "only-active-workspaces-description": "Mostra solo app delle workspace attive.", + "only-active-workspaces-label": "Solo dalle workspace attive", + "only-same-monitor-description": "Mostra solo app del monitor in cui si trova la barra.", + "only-same-monitor-label": "Solo dallo stesso monitor", + "show-pinned-apps-description": "Mostra nella taskbar le app fissate dal dock.", + "show-pinned-apps-label": "Mostra app fissate", + "show-title-description": "Mostra i titoli finestra nella taskbar.", + "show-title-description-disabled": "La taskbar verticale non supporta la visualizzazione dei titoli.", + "show-title-label": "Mostra titolo", + "smart-width-description": "Regola automaticamente la larghezza delle voci in base al loro numero.", + "smart-width-label": "Larghezza intelligente", + "title-width-description": "Imposta la larghezza dei titoli finestra nella taskbar (in pixel).", + "title-width-label": "Larghezza titolo", + "title-width-reset-tooltip": "Reimposta larghezza titolo" + }, + "tray": { + "chevron-color-description": "Applica i colori del tema all’icona chevron del cassetto.", + "chevron-color-label": "Colore chevron", + "colorize-icons-description": "Applica i colori del tema alle icone tray.", + "colorize-icons-label": "Colora icone", + "drawer-enabled-description": "Se attivo, gli elementi tray non fissati vengono mostrati in un pannello cassetto.
Se disattivo, tutti gli elementi tray vengono mostrati in linea.", + "drawer-enabled-label": "Abilita cassetto", + "hide-passive-description": "Se attivo, gli elementi tray con stato \"Passive\" verranno nascosti.", + "hide-passive-label": "Nascondi elementi passivi" + }, + "volume": { + "display-mode-description": "Scegli come vuoi che questo valore venga mostrato." + }, + "workspace": { + "character-count-description": "Numero di caratteri da mostrare nei nomi workspace (1-10).", + "character-count-label": "Numero caratteri", + "empty-color-description": "Imposta il colore di sfondo per workspace vuote.", + "empty-color-label": "Colore workspace vuota", + "enable-scrollwheel-description": "Passa tra workspace usando la rotella del mouse.", + "enable-scrollwheel-label": "Scorri per cambiare workspace", + "focused-color-description": "Imposta il colore di sfondo per la workspace focalizzata.", + "focused-color-label": "Colore workspace focalizzata", + "follow-focused-screen-description": "Mostra workspace dello schermo attualmente focalizzato invece dello schermo dove si trova la barra.", + "follow-focused-screen-label": "Segui schermo focalizzato", + "grouped-border-opacity-description": "Imposta il livello di opacità dei bordi contenitore workspace.", + "grouped-border-opacity-label": "Opacità bordi", + "hide-unoccupied-description": "Non mostrare workspace senza finestre.", + "hide-unoccupied-label": "Nascondi non occupate", + "label-mode-description": "Scegli come visualizzare le etichette workspace.", + "label-mode-label": "Modalità etichette", + "occupied-color-description": "Imposta il colore di sfondo per workspace occupate.", + "occupied-color-label": "Colore workspace occupata", + "pill-size-description": "Regola la dimensione delle pill workspace.", + "pill-size-label": "Dimensione pill", + "reverse-scrolling-description": "Inverti direzione del cambio workspace quando scorri.", + "reverse-scrolling-label": "Inverti scorrimento", + "show-applications-description": "Mostra icone applicazioni dentro ogni workspace.", + "show-applications-label": "Mostra applicazioni", + "show-badge-description": "Mostra badge numero workspace in modalità raggruppata.", + "show-badge-label": "Mostra badge workspace", + "show-labels-only-when-occupied-description": "Mostra etichette workspace solo quando contengono finestre.", + "show-labels-only-when-occupied-label": "Mostra etichette solo se occupate", + "unfocused-icons-opacity-description": "Imposta il livello di opacità delle icone app non focalizzate.", + "unfocused-icons-opacity-label": "Opacità icone non focalizzate" + } + }, + "battery": { + "battery-health": "Stato batteria", + "battery-level": "Livello batteria", + "capacity-level": "Capacità: {level}", + "charging-rate": "Velocità di carica: {rate} W", + "discharging-rate": "Velocità di scarica: {rate} W", + "health": "Salute: {percent}%", + "inhibit-idle-description": "Mantiene il sistema attivo.", + "no-battery-detected": "Nessuna batteria rilevata", + "plugged-in": "Collegato alla corrente", + "power-profile": "Profilo energetico", + "time-left": "Tempo rimanente: {time}", + "time-until-full": "Tempo alla carica completa: {time}" + }, + "bluetooth": { + "panel": { + "available-devices": "Dispositivi disponibili", + "blocked": "Bloccato", + "connected-devices": "Dispositivi connessi", + "device-address": "Indirizzo dispositivo", + "disabled": "Bluetooth disattivato", + "discoverable": "Visibile", + "enable-message": "Attiva il Bluetooth per vedere i dispositivi disponibili.", + "known-devices": "Dispositivi conosciuti", + "no-devices": "Nessun dispositivo disponibile", + "paired-devices": "Dispositivi associati", + "pairing-mode": "Assicurati che il dispositivo sia in modalità associazione.", + "scanning": "Ricerca dispositivi in corso...", + "signal-text-excellent": "Segnale: Eccellente", + "signal-text-fair": "Segnale: Discreto", + "signal-text-good": "Segnale: Buono", + "signal-text-poor": "Segnale: Scarso", + "signal-text-unknown": "Segnale: Sconosciuto", + "signal-text-very-poor": "Segnale: Molto scarso" + } + }, + "changelog": { + "error": { + "fetch-failed": "Impossibile caricare il changelog. Riprova più tardi.", + "rate-limit": "Limite di richieste GitHub superato. Riprova tra qualche minuto." + }, + "panel": { + "buttons-discord": "Unisciti al nostro Discord", + "buttons-dismiss": "OK", + "buttons-feedback": "Invia feedback", + "empty": "Le note di rilascio non sono ancora disponibili.", + "highlight-title": "Novità principali", + "released": "Rilasciato il {date}", + "subtitle-fresh": "Grazie per aver installato Noctalia! Ecco cosa include questa build.", + "subtitle-updated": "Aggiornato da {previousVersion}", + "title": "Novità della versione {version}", + "version": "Versione {version}", + "version-new-user": "Nuova installazione" + } + }, + "common": { + "actions": "Azioni", + "active": "Attivo", + "add": "Aggiungi", + "appearance": "Aspetto", + "apply": "Applica", + "automation": "Automazione", + "available": "Disponibile", + "back": "Indietro", + "battery": "Batteria", + "behavior": "Comportamento", + "bluetooth": "Bluetooth", + "brightness": "Luminosità", + "browse": "Sfoglia", + "calendar": "Calendario", + "calendar-panel": "Pannello calendario", + "cancel": "Annulla", + "cards": "Schede", + "charging": "In carica", + "clear": "Cancella", + "clipboard": "Appunti", + "close": "Chiudi", + "color-muted": "Smorzato", + "colors": "Colori", + "command": "Comando", + "confirm": "Conferma", + "connect": "Connetti", + "connected": "Connesso", + "connecting": "Connessione...", + "continue": "Continua", + "contributors": "Contributori", + "copied-to-clipboard": "Copiato negli appunti", + "countdown": "Conto alla rovescia", + "date": "Data", + "default": "Predefinito", + "delete": "Elimina", + "devices": "Dispositivi", + "disabled": "Disattivato", + "discharging": "In scarica", + "disconnect": "Disconnetti", + "disconnected": "Disconnesso", + "disconnecting": "Disconnessione...", + "display-mode": "Modalità di visualizzazione", + "download": "Scarica", + "duration": "Durata", + "dysfunctional": "Non funzionante", + "edit": "Modifica", + "enabled": "Attivato", + "error": "Errore", + "ethernet": "Ethernet", + "events": "Eventi", + "execute": "Esegui", + "faithful": "Fedele", + "focus": "Messa a fuoco", + "frequency": "Frequenza", + "gateway": "Gateway", + "general": "Generale", + "height": "Altezza", + "hibernate": "Ibernazione", + "history": "Cronologia", + "icon": "Icona", + "idle": "Inattivo", + "info": "Info", + "input": "Ingresso", + "install": "Installa", + "installed": "Installato", + "interface": "Interfaccia", + "internet": "Internet", + "keybind": "Scorciatoia", + "language": "Lingua", + "loading": "Caricamento...", + "local": "Locale", + "location": "Posizione", + "lock": "Blocca", + "logout": "Disconnetti sessione", + "look": "Aspetto", + "media": "Media", + "media-player": "Lettore multimediale", + "memory": "Memoria", + "monitors": "Monitor", + "network": "Rete", + "next": "Successivo", + "night-light": "Luce notturna", + "no": "No", + "no-results": "Nessun risultato", + "no-summary": "Nessun riepilogo", + "none": "Nessuno", + "not-found": "Non trovato", + "notifications": "Notifiche", + "official": "Ufficiale", + "on-surface": "Su superficie", + "output": "Uscita", + "pair": "Associa", + "paired": "Associato", + "pairing": "Associazione...", + "panels": "Pannelli", + "password": "Password", + "pause": "Pausa", + "pin": "Fissa", + "play": "Riproduci", + "polling": "Interrogazione", + "position": "Posizione", + "previous": "Precedente", + "primary": "Primario", + "random": "Casuale", + "reboot": "Riavvia", + "reboot-to-uefi": "Riavvia in UEFI", + "record": "Avvia registrazione", + "refresh": "Aggiorna", + "required": "(obbligatorio)", + "reset": "Reimposta", + "reset-to-default": "Ripristina predefiniti", + "result-count": "{count} risultato", + "result-count-plural": "{count} risultati", + "resume": "Riprendi", + "save": "Salva", + "scanning": "Scansione...", + "screen-corners": "Angoli schermo", + "search": "Cerca", + "second": "{count} secondo", + "second-plural": "{count} secondi", + "secondary": "Secondario", + "security": "Sicurezza", + "select": "Seleziona", + "select-color": "Seleziona colore", + "select-color-description": "Applica i colori del tema per evidenziare.", + "select-icon-color": "Seleziona colore icona", + "settings": "Impostazioni", + "shortcuts": "Scorciatoie", + "shutdown": "Spegni", + "signal": "Segnale", + "sound": "Suono", + "sources": "Sorgenti", + "start": "Avvia", + "stop": "Ferma", + "supporters": "Sostenitori", + "suspend": "Sospendi", + "templates": "Template", + "tertiary": "Terziario", + "test": "Prova", + "thresholds": "Soglie", + "title": "Titolo", + "toast": "Notifica popup", + "trusted": "Attendibile", + "uninstall": "Disinstalla", + "unknown": "Sconosciuto", + "unpair": "Rimuovi associazione", + "unpin": "Sblocca", + "update": "Aggiorna", + "upload": "Carica", + "version": "Versione", + "vibrant": "Vivace", + "visualizer": "Visualizzatore", + "volume": "Volume", + "volumes": "Volumi", + "wallpaper": "Sfondo", + "weather": "Meteo", + "weather-loading": "Caricamento meteo...", + "week": "Settimana", + "widgets": "Widget", + "width": "Larghezza", + "wifi": "Wi-Fi", + "windows": "Finestre", + "yes": "Sì" + }, + "control-center": { + "power-profile": { + "tooltip-action": "Profilo energetico", + "tooltip-disabled": "Installa power-profiles-daemon per usare i profili energetici" + }, + "wifi": { + "label-disconnected": "Wi-Fi disconnesso", + "label-ethernet": "Ethernet" + } + }, + "display-modes": { + "always-hide": "Nascondi sempre", + "always-show": "Mostra sempre", + "force-open": "Apri sempre", + "on-hover": "Al passaggio del mouse" + }, + "hide-modes": { + "auto-hide": "Nascondi automaticamente", + "hidden": "Nascondi se vuoto", + "idle": "Nascondi quando inattivo", + "non-exclusive": "Non esclusivo", + "transparent": "Trasparente se vuoto", + "visible": "Sempre visibile" + }, + "launcher": { + "categories": { + "all": "Tutte", + "audiovideo": "Audio e video", + "chat": "Chat", + "development": "Sviluppo", + "education": "Formazione", + "emoji-activity": "Attività", + "emoji-animals": "Animali", + "emoji-flags": "Bandiere", + "emoji-food": "Cibo e bevande", + "emoji-nature": "Natura", + "emoji-objects": "Oggetti", + "emoji-people": "Persone e corpo", + "emoji-recent": "Recenti", + "emoji-symbols": "Simboli", + "emoji-travel": "Viaggi e luoghi", + "game": "Giochi", + "graphics": "Grafica", + "misc": "Varie", + "office": "Ufficio", + "pinned": "Fissate", + "system": "Sistema", + "webbrowser": "Browser web" + }, + "providers": { + "applications": "Applicazioni", + "calculator": "Calcolatrice", + "calculator-deprecated": "Il comando >calc è deprecato e verrà rimosso presto. Digita direttamente le espressioni matematiche nella ricerca.", + "calculator-description": "Calcolatrice — valuta espressioni matematiche", + "calculator-enter-expression": "Inserisci un’espressione matematica", + "calculator-press-enter-to-copy": "Premi Invio per copiare il risultato", + "clipboard": "Cronologia appunti", + "clipboard-clear-description": "Cancella tutta la cronologia appunti", + "clipboard-clear-description-full": "Rimuovi tutti gli elementi dalla cronologia appunti", + "clipboard-clear-history": "Cancella cronologia appunti", + "clipboard-delete": "Elimina voce appunti", + "clipboard-history-disabled": "Cronologia appunti disattivata", + "clipboard-history-disabled-description": "Attiva la cronologia appunti nelle impostazioni o installa cliphist", + "clipboard-loading": "Caricamento cronologia appunti...", + "clipboard-search-description": "Cerca nella cronologia appunti", + "command-description": "Esegui comandi shell", + "emoji": "Selettore emoji", + "emoji-loading": "Caricamento emoji...", + "emoji-loading-description": "Attendi prego", + "emoji-no-recent": "Nessuna emoji recente", + "emoji-search-description": "Cerca e copia emoji", + "settings-search-description": "Cerca e vai alle impostazioni", + "windows-search-description": "Cerca e metti a fuoco finestre aperte" + } + }, + "lock-screen": { + "authenticating": "Autenticazione in corso...", + "password": "Inserisci la password...", + "restart": "Riavvia", + "shut-down": "Spegni" + }, + "notifications": { + "panel": { + "click-to-collapse": "Fai clic per comprimere", + "click-to-expand": "Fai clic per espandere", + "description": "Le notifiche appariranno qui quando arrivano.", + "no-notifications": "Nessuna notifica" + }, + "range": { + "earlier": "Precedenti", + "today": "Oggi", + "yesterday": "Ieri" + }, + "time": { + "diff-d": "1 giorno fa", + "diff-dd": "{diff} giorni fa", + "diff-h": "1 ora fa", + "diff-hh": "{diff} ore fa", + "diff-m": "1 minuto fa", + "diff-mm": "{diff} minuti fa", + "now": "ora" + } + }, + "options": { + "bar": { + "density-comfortable": "Comoda", + "density-compact": "Compatta", + "density-default": "Predefinita", + "density-mini": "Mini", + "density-spacious": "Ampia", + "display-mode-always-visible": "Sempre visibile", + "type-floating": "Flottante", + "type-framed": "Incorniciata", + "type-simple": "Semplice" + }, + "control-center": { + "quick-settings-style-classic": "Classico", + "quick-settings-style-modern": "Moderno" + }, + "frame-rates-fps": "{fps} FPS", + "launcher-density": { + "comfortable": "Comoda", + "compact": "Compatta", + "default": "Predefinita" + }, + "launcher-view-mode": { + "grid": "Griglia", + "list": "Elenco" + }, + "notification-density": { + "compact": "Compatta", + "default": "Predefinita" + }, + "scrolling-modes": { + "always": "Scorri sempre", + "hover": "Scorri al passaggio del mouse", + "never": "Non scorrere mai" + }, + "session-menu-grid-layout": { + "grid": "Griglia", + "single-row": "Singola riga" + }, + "settings-panel-mode": { + "attached": "Pannello agganciato alla barra", + "centered": "Pannello centrato", + "window": "Finestra separata" + }, + "visualizer-types": { + "linear": "Lineare", + "mirrored": "Specchiato", + "wave": "Onda" + }, + "visualizer-visibility": { + "with-background": "Solo con sfondo" + }, + "workspace-labels": { + "index": "Indice", + "index-and-name": "Indice e nome", + "name": "Nome" + } + }, + "panels": { + "about": { + "become-supporter": "Diventa sostenitore", + "changelog": "Visualizza changelog", + "contributors-description": "Un ringraziamento al nostro {count} contributore fantastico!", + "contributors-description-plural": "Un ringraziamento ai nostri {count} contributori fantastici!", + "copy-info": "Copia info", + "debug-disabled": "Modalità debug disattivata", + "debug-enabled": "Modalità debug attivata", + "info-copied": "Info copiate negli appunti", + "noctalia-desc": "Una shell desktop elegante e minimale, progettata con cura per Wayland, costruita con Quickshell.", + "noctalia-git-commit": "Commit Git:", + "noctalia-installed-version": "Versione installata:", + "noctalia-latest-version": "Ultima versione:", + "noctalia-title": "Shell Noctalia", + "privacy-policy": "Informativa privacy", + "support": "Supportaci", + "supporter-badge": "Sostenitore", + "supporters-desc": "Un enorme grazie al nostro fantastico sostenitore!", + "supporters-desc-plural": "Un enorme grazie ai nostri {count} fantastici sostenitori!", + "supporters-loading": "Caricamento sostenitori...", + "system-cpu": "CPU:", + "system-disk": "Disco:", + "system-gpu": "GPU:", + "system-host": "Host:", + "system-install-hint": "Installa fastfetch per visualizzare le informazioni di sistema", + "system-kernel": "Kernel:", + "system-loading": "Caricamento informazioni sistema...", + "system-memory": "Memoria:", + "system-monitor": "Monitor:", + "system-not-installed": "fastfetch non è installato", + "system-os": "SO:", + "system-packages": "Pacchetti:", + "system-product": "Prodotto:", + "system-title": "Informazioni di sistema", + "system-uptime": "Uptime:", + "system-wm": "WM:", + "telemetry-data-copied": "Dati telemetria copiati negli appunti", + "telemetry-desc": "Aiuta a migliorare Noctalia condividendo info di sistema anonime (risoluzione schermo, compositor, distro). Inviate una sola volta all’avvio, nessun tracciamento, dati eliminati automaticamente dopo 30 giorni.", + "telemetry-enabled": "Invia informazioni di sistema anonime", + "telemetry-show-data": "Visualizza dati", + "telemetry-title": "Privacy", + "title": "Informazioni", + "up-to-date": "Sei aggiornato!", + "update-available": "Aggiornamento disponibile", + "view-commit": "Visualizza commit su GitHub" + }, + "audio": { + "devices-desc": "Configura i dispositivi audio di input e output disponibili.", + "devices-input-device-description": "Seleziona il dispositivo audio di input desiderato.", + "devices-input-device-label": "Dispositivo input", + "devices-output-device-description": "Seleziona il dispositivo audio di output desiderato.", + "devices-output-device-label": "Dispositivo output", + "devices-title": "Dispositivi audio", + "external-mixer-description": "Inserisci il comando o il percorso dell’applicazione da avviare quando attivi il mixer audio esterno.", + "external-mixer-label": "Comando mixer audio esterno", + "external-mixer-placeholder": "pwvucontrol || pavucontrol", + "media-desc": "Imposta le applicazioni multimediali preferite e ignorate.", + "media-excluded-player-description": "Aggiungi parole chiave per i player che vuoi ignorare. Ogni parola chiave deve stare su una nuova riga.", + "media-excluded-player-label": "Player escluso", + "media-excluded-player-placeholder": "digita una sottostringa e premi +", + "media-frame-rate-description": "Valori più alti sono più fluidi ma usano più risorse.", + "media-frame-rate-label": "Frame rate", + "media-primary-player-description": "Inserisci una parola chiave per identificare il tuo player principale.", + "media-primary-player-label": "Player principale", + "media-primary-player-placeholder": "es. spotify, vlc, mpv", + "media-scrolling-speed-description": "Tempo in secondi affinché il titolo scorra dall’inizio alla fine.", + "media-scrolling-speed-label": "Velocità scorrimento", + "media-scrolling-title-description": "Abilita lo scorrimento continuo per titoli media lunghi.", + "media-scrolling-title-label": "Titolo scorrevole", + "media-title": "Lettori multimediali", + "on-middle-clicked-description": "Comando da eseguire quando il pulsante riceve clic centrale.", + "panel-applications-empty": "Nessuna applicazione sta riproducendo audio", + "title": "Audio", + "visualizer-type-description": "Scegli un tipo di visualizzazione per la riproduzione multimediale.", + "visualizer-type-label": "Tipo visualizzazione", + "volumes-desc": "Regola i controlli del volume e i livelli audio.", + "volumes-input-volume-description": "Livello volume di input del microfono.", + "volumes-mute-input-description": "Silenzia l’input audio predefinito (microfono).", + "volumes-mute-input-label": "Silenzia input audio", + "volumes-mute-output-description": "Silenzia l’output audio principale del sistema.", + "volumes-mute-output-label": "Silenzia output audio", + "volumes-output-volume-description": "Livello volume di sistema.", + "volumes-step-size-description": "Regola la dimensione del passo per le variazioni volume (rotella mouse, scorciatoie tastiera).", + "volumes-step-size-label": "Passo volume", + "volumes-volume-feedback-description": "Riproduci un suono di feedback quando regoli il volume.", + "volumes-volume-feedback-label": "Riproduci suono feedback volume", + "volumes-volume-overdrive-description": "Consenti di alzare il volume oltre il 100%. Potrebbe non essere supportato da tutto l’hardware.", + "volumes-volume-overdrive-label": "Consenti overdrive volume" + }, + "bar": { + "appearance-auto-hide-delay-description": "Tempo prima che la barra si nasconda dopo l’uscita del mouse", + "appearance-auto-hide-delay-label": "Ritardo nascondi", + "appearance-auto-hide-exclusive-note": "Nota: la zona esclusiva viene disabilitata automaticamente quando il nascondimento automatico è attivo", + "appearance-auto-show-delay-description": "Tempo prima che la barra appaia quando il mouse entra nel bordo", + "appearance-auto-show-delay-label": "Ritardo mostra", + "appearance-background-opacity-description": "Imposta l’opacità sfondo specifica per la barra.", + "appearance-background-opacity-label": "Opacità sfondo barra", + "appearance-capsule-color-description": "Scegli un colore per le capsule barra oppure nessuno per usare il colore superficie predefinito.", + "appearance-capsule-color-label": "Colore capsula", + "appearance-capsule-opacity-description": "Imposta il livello opacità degli sfondi widget quando la capsula è mostrata.", + "appearance-capsule-opacity-label": "Opacità capsula", + "appearance-density-description": "Regola il padding della barra per un aspetto compatto o ampio.", + "appearance-density-label": "Densità barra", + "appearance-desc": "Personalizza aspetto e posizione della barra.", + "appearance-display-mode-description": "Scegli quando la barra è visibile.", + "appearance-floating-description": "Mostra la barra come \"pill\" flottante.", + "appearance-floating-label": "Barra flottante", + "appearance-font-scale-description": "Regola la scala dimensione font per il testo mostrato nella barra.", + "appearance-font-scale-label": "Scala font", + "appearance-frame-radius": "Raggio interno", + "appearance-frame-settings-description": "Regola spessore frame e raggio angolo interno", + "appearance-frame-settings-label": "Impostazioni frame", + "appearance-frame-thickness": "Spessore", + "appearance-hide-on-overview-description": "Nascondi barra e chiudi pannelli quando l’overview compositor è attiva.", + "appearance-hide-on-overview-label": "Nascondi barra in overview", + "appearance-margins-description": "Regola i margini attorno alla barra flottante.", + "appearance-margins-horizontal": "Orizzontale", + "appearance-margins-label": "Margini", + "appearance-margins-vertical": "Verticale", + "appearance-outer-corners-description": "Mostra angoli curvati verso l’esterno sulla barra.", + "appearance-outer-corners-label": "Angoli esterni", + "appearance-position-description": "Scegli dove posizionare la barra sullo schermo.", + "appearance-position-label": "Posizione barra", + "appearance-show-capsule-description": "Mostra sfondi widget.", + "appearance-show-capsule-label": "Mostra capsula", + "appearance-show-on-workspace-switch-description": "Mostra automaticamente la barra per poco quando cambia la workspace.", + "appearance-show-on-workspace-switch-label": "Mostra barra al cambio workspace", + "appearance-show-outline-description": "Mostra un bordo visibile attorno a ogni widget.", + "appearance-show-outline-label": "Mostra contorni widget", + "appearance-type-description": "Scegli lo stile barra: Semplice, Flottante o Incorniciata.", + "appearance-type-label": "Tipo barra", + "appearance-use-separate-opacity-description": "Abilita per usare un valore opacità separato per lo sfondo barra.", + "appearance-use-separate-opacity-label": "Usa opacità barra separata", + "appearance-widget-spacing-description": "Regola la spaziatura tra i widget nella barra.", + "appearance-widget-spacing-label": "Spaziatura widget", + "monitor-configure-widgets": "Configura widget", + "monitor-override-settings": "Sovrascrivi impostazioni globali", + "monitor-override-settings-description": "Usa impostazioni personalizzate per questo monitor.", + "monitor-reset-all": "Reimposta tutto", + "monitor-widgets-title": "Configurazione Widget - {monitor}", + "monitors-desc": "Mostra barra su monitor specifici. Se non ne scegli nessuno, verranno usati tutti.", + "monitors-desc-new": "Configura quali monitor mostrano la barra e personalizza impostazioni per monitor.", + "monitors-title": "Visualizzazione monitor", + "title": "Barra", + "tray-blacklist-description": "Aggiungi regole esclusione tray, supporta wildcard (*).", + "tray-blacklist-label": "Lista nera", + "tray-blacklist-placeholder": "es. nm-applet, Fcitx*", + "tray-pin-application": "Fissa applicazione", + "tray-unpin-application": "Rimuovi applicazione fissata", + "use-global-widgets": "Usa widget globali", + "widgets-desc": "Trascina i widget per cambiarne l’ordine. Usa il menu clic destro per spostare widget tra sezioni o rimuoverli.", + "widgets-title": "Posizionamento widget" + }, + "color-scheme": { + "color-source-use-wallpaper-colors-description": "Genera schemi colore dal tuo sfondo. Estrae automaticamente i colori per creare un tema coerente.", + "color-source-use-wallpaper-colors-label": "Usa colori dello sfondo", + "dark-mode-mode-description": "Abilita il passaggio automatico tra Modalità Chiara e Scura.", + "dark-mode-mode-label": "Programmazione Modalità Scura", + "dark-mode-mode-manual": "Manuale", + "dark-mode-mode-off": "Disattivata", + "dark-mode-switch-description": "Passa a un tema più scuro per una visione più confortevole di notte.", + "delete-error-description": "Eliminazione di {scheme} non riuscita", + "delete-error-title": "Eliminazione non riuscita", + "delete-success-description": "{scheme} eliminato con successo", + "delete-success-title": "Schema colore eliminato", + "download-button": "Scarica altro", + "download-downloading": "Download in corso...", + "download-empty": "Nessuno schema colore disponibile", + "download-error-api-error": "Errore API: {status}", + "download-error-description": "Download di {scheme} non riuscito", + "download-error-download-failed": "Download fallito con codice uscita: {code}", + "download-error-invalid-response": "Formato risposta API non valido", + "download-error-no-files": "Nessun file trovato per lo schema", + "download-error-parse-failed": "Analisi risposta API non riuscita: {error}", + "download-error-rate-limit": "Limite richieste API GitHub superato", + "download-error-title": "Download non riuscito", + "download-fetching": "Recupero schemi colore disponibili...", + "download-success-description": "{scheme} scaricato con successo", + "download-success-title": "Schema colore scaricato", + "download-title": "Scarica Schemi Colore", + "method-description": { + "content": "Schema Material Design con estrazione colore ad alta fedeltà che rispecchia da vicino i colori reali del contenuto sorgente.", + "dysfunctional": "Simile a Faithful ma sceglie come primario il secondo gruppo colore più dominante.", + "faithful": "Tenta di restare vicino al colore sorgente mantenendo una palette armoniosa.", + "fruit-salad": "Schema Material Design che produce una palette vivace e giocosa con tonalità varie e diversificate.", + "monochrome": "Schema Material Design in scala di grigi a tinta singola con contenuto cromatico minimo.", + "muted": "Genera tonalità più morbide e desaturate per un aspetto calmo e sobrio.", + "rainbow": "Schema Material Design che genera colori su tutto lo spettro per massima diversità cromatica.", + "tonal-spot": "Algoritmo predefinito Material Design. Crea palette bilanciate usando variazioni tonali del colore sorgente.", + "vibrant": "Massimizza la saturazione colore per palette audaci e d’impatto con tonalità vivide." + }, + "predefined-desc": "Scegli da una raccolta di schemi colore predefiniti.", + "predefined-generate-templates-label": "Genera template per schemi predefiniti", + "predefined-title": "Schemi colore predefiniti", + "templates-desc": "Applica colori ad applicazioni esterne.", + "templates-filter-description": "Mostra template di una categoria specifica.", + "templates-filter-label": "Filtra per categoria", + "templates-misc-description": "Crea i tuoi template.", + "templates-misc-label": "Avanzato", + "templates-misc-user-templates-description": "Abilita solo se sai cosa stai facendo — consulta la documentazione online.", + "templates-misc-user-templates-label": "Abilita template utente", + "templates-none-detected": "Nessuno rilevato", + "templates-write-path": "Scrive: {filepath}", + "title": "Schema colore", + "wallpaper-method-description": "Scegli il tuo metodo preferito di generazione palette.", + "wallpaper-method-label": "Metodo generazione palette", + "wallpaper-monitor-source-description": "Seleziona quale monitor usare per estrarre i colori dallo sfondo.", + "wallpaper-monitor-source-label": "Sorgente generazione colore" + }, + "connections": { + "authentication-required": "Autenticazione richiesta", + "bluetooth-devices-unnamed": "I dispositivi senza nome non sono mostrati.", + "bluetooth-discoverable": "Questo dispositivo è visibile come {hostName} mentre questa scheda impostazioni è aperta.", + "bluetooth-rssi-polling-description": "Campiona periodicamente l’RSSI dei dispositivi connessi tramite bluetoothctl. Potrebbe non essere disponibile per tutti i dispositivi; usa risorse minime quando attivo.", + "bluetooth-rssi-polling-interval-description": "Configura la frequenza di aggiornamento dell’intensità segnale per i dispositivi connessi.", + "bluetooth-rssi-polling-interval-label": "Intervallo polling", + "bluetooth-rssi-polling-label": "Polling segnale Bluetooth", + "disable-discoverability-description": "Nascondi il tuo dispositivo ai dispositivi Bluetooth vicini.", + "disable-discoverability-label": "Disattiva visibilità dispositivo", + "hide-unnamed-devices-description": "Nascondi dispositivi che appaiono solo come indirizzi Bluetooth.", + "hide-unnamed-devices-label": "Nascondi dispositivi senza nome", + "pin-instructions": "Inserisci il codice PIN mostrato sul tuo dispositivo.", + "title": "Connessioni" + }, + "control-center": { + "cards-desc": "Personalizza quali controlli appaiono nel centro di controllo e in quale ordine.", + "desc": "Configura posizione e comportamento del pannello centro di controllo.", + "position-description": "Scegli dove appare il pannello centro di controllo quando viene aperto.", + "shortcuts-custom-button-command-description": "Comando da eseguire quando il pulsante viene cliccato.", + "shortcuts-custom-button-enable-on-state-logic-description": "Abilita una seconda icona e uno stato \"attivo\" basato su un comando di controllo.", + "shortcuts-custom-button-enable-on-state-logic-label": "Abilita logica stato attivo", + "shortcuts-custom-button-icon-description": "Seleziona un’icona dalla libreria.", + "shortcuts-custom-button-on-clicked-label": "Comando clic sinistro", + "shortcuts-custom-button-on-middle-clicked-description": "Comando da eseguire al clic centrale del pulsante.", + "shortcuts-custom-button-on-state-command-description": "Comando da eseguire per verificare se il pulsante deve essere nello stato \"attivo\". Restituisce 0 per attivo, valore diverso da 0 per spento.", + "shortcuts-custom-button-on-state-command-label": "Comando controllo stato attivo", + "shortcuts-custom-button-on-state-icon-description": "L’icona del pulsante quando è nello stato \"attivo\".", + "shortcuts-custom-button-on-state-icon-label": "Icona stato attivo", + "shortcuts-custom-button-state-checks-add": "Aggiungi controllo stato", + "shortcuts-custom-button-state-checks-command": "Comando da eseguire per questo controllo stato", + "shortcuts-custom-button-state-checks-label": "Controlli stato", + "shortcuts-custom-button-state-checks-remove": "Rimuovi", + "shortcuts-custom-button-tooltip-description": "Tooltip da mostrare al passaggio del mouse sul pulsante.", + "shortcuts-custom-button-tooltip-label": "Suggerimento", + "shortcuts-title": "Widget scorciatoie", + "system-monitor-disk-path-description": "Seleziona quale punto di mount disco deve monitorare la scheda monitor di sistema nel centro di controllo.", + "system-monitor-disk-path-label": "Percorso disco monitor di sistema", + "title": "Centro di controllo" + }, + "desktop-widgets": { + "clock-enabled-description": "Mostra un widget orologio sul desktop.", + "clock-enabled-label": "Abilita widget orologio", + "clock-format-label": "Formato", + "clock-height-description": "Altezza del widget orologio in pixel.", + "clock-height-label": "Altezza", + "clock-minimal-mode-description": "Usa una visualizzazione orologio minimale con ora e data.", + "clock-minimal-mode-label": "Modalità minimale", + "clock-rounded-corners-description": "Usa angoli arrotondati per lo sfondo del widget.", + "clock-rounded-corners-label": "Angoli arrotondati", + "clock-show-background-description": "Mostra il contenitore sfondo per il widget orologio.", + "clock-show-background-label": "Mostra sfondo", + "clock-show-date-description": "Mostra la data corrente sotto l’ora.", + "clock-show-date-label": "Mostra data", + "clock-show-seconds-description": "Mostra i secondi nell’orario.", + "clock-show-seconds-label": "Mostra secondi", + "clock-style-analog": "Analogico", + "clock-style-binary": "Binario", + "clock-style-description": "Scegli lo stile di visualizzazione dell’orologio.", + "clock-style-digital": "Digitale", + "clock-style-label": "Stile orologio", + "clock-style-minimal": "Minimale", + "clock-width-description": "Larghezza del widget orologio in pixel.", + "cpu-intensive-note": "I widget contrassegnati con ! usano più CPU e vanno abilitati con attenzione.", + "edit-mode-button-label": "Entra in modalità modifica", + "edit-mode-controls-explanation": "Clic sinistro e trascina: sposta o ridimensiona il widget.\nClic destro: apri opzioni menu contestuale.", + "edit-mode-description": "Abilita modalità modifica per spostare e riposizionare i widget desktop. Quando attiva, i widget mostrano un contorno di trascinamento e possono essere riposizionati.", + "edit-mode-exit-button": "Esci da modalità modifica", + "edit-mode-grid-snap-label": "Aggancio griglia", + "edit-mode-label": "Modalità modifica", + "enabled-description": "Abilita o disabilita completamente i widget desktop.", + "enabled-label": "Abilita widget desktop", + "general-desc": "Configura i widget che appaiono sul desktop.", + "general-title": "Widget desktop", + "media-player-enabled-description": "Mostra un widget lettore multimediale sul desktop.", + "media-player-enabled-label": "Abilita widget lettore multimediale", + "media-player-rounded-corners-description": "Abilita angoli arrotondati sui bordi del widget.", + "media-player-show-album-art-description": "Mostra la copertina album e le informazioni traccia (titolo e artista).", + "media-player-show-album-art-label": "Mostra copertina e titolo", + "media-player-show-background-description": "Mostra il contenitore sfondo.", + "media-player-show-buttons-description": "Mostra pulsanti controllo media (riproduci/pausa, precedente, successivo).", + "media-player-show-buttons-label": "Mostra pulsanti", + "media-player-show-visualizer-description": "Mostra la sovrapposizione visualizzatore audio.", + "media-player-visualizer-type-description": "Scegli un tipo di visualizzazione.", + "overview-enabled-description": "Mostra widget desktop quando l’overview del compositor è aperta.", + "overview-enabled-label": "Mostra in overview", + "system-stat-layout-bottom": "In basso", + "system-stat-layout-description": "Scegli come mostrare la legenda rispetto al grafico.", + "system-stat-layout-label": "Disposizione", + "system-stat-layout-side": "Laterale", + "system-stat-rounded-corners-description": "Usa angoli arrotondati per lo sfondo del widget.", + "system-stat-rounded-corners-label": "Angoli arrotondati", + "system-stat-show-background-description": "Mostra il contenitore sfondo per il widget statistiche sistema.", + "system-stat-show-background-label": "Mostra sfondo", + "system-stat-stat-type-description": "Scegli quale statistica di sistema visualizzare.", + "system-stat-stat-type-label": "Tipo statistica", + "title": "Widget Desktop", + "weather-enabled-description": "Mostra un widget meteo sul desktop.", + "weather-enabled-label": "Abilita widget meteo", + "weather-show-background-description": "Mostra il contenitore sfondo per il widget meteo." + }, + "display": { + "monitors-backlight-device-auto-option": "Predefinito", + "monitors-backlight-device-description": "Seleziona un dispositivo di retroilluminazione per questa uscita.", + "monitors-backlight-device-label": "Dispositivo retroilluminazione", + "monitors-brightness-step-description": "Regola la dimensione del passo per le variazioni luminosità (rotella mouse e scorciatoie tastiera).", + "monitors-brightness-step-label": "Passo luminosità", + "monitors-brightness-unavailable-ddc-disabled": "Controllo luminosità non disponibile. Abilita \"Supporto luminosità esterna\" per controllare la luminosità di questo schermo.", + "monitors-brightness-unavailable-generic": "Il controllo luminosità non è disponibile per questo schermo.", + "monitors-desc": "Regola le impostazioni di luminosità per ciascun monitor.", + "monitors-enforce-minimum-description": "Risolve il problema della retroilluminazione che su alcuni schermi si spegne completamente a luminosità 0%.", + "monitors-enforce-minimum-label": "Forza luminosità minima (1%)", + "monitors-external-brightness-description": "Abilita il supporto DDCUtil per controllare la luminosità dei monitor esterni tramite protocollo DDC/CI.", + "monitors-external-brightness-label": "Supporto luminosità esterna", + "monitors-global-brightness-description": "Regola la luminosità di tutti i monitor contemporaneamente.", + "monitors-global-brightness-label": "Tutti i monitor", + "monitors-title": "Impostazioni per monitor", + "night-light-auto-schedule-description": "Basato su orario di alba e tramonto a {location} — consigliato.", + "night-light-auto-schedule-label": "Programmazione automatica", + "night-light-desc": "Riduce l’emissione di luce blu per aiutarti a dormire meglio e ridurre l’affaticamento visivo.", + "night-light-enable-description": "Applica un filtro colore caldo per ridurre l’emissione di luce blu.", + "night-light-enable-label": "Abilita Luce notturna", + "night-light-force-activation-description": "Ignora la programmazione e applica subito il filtro notturno.", + "night-light-force-activation-label": "Forza attivazione", + "night-light-manual-schedule-description": "Imposta orari personalizzati per alba e tramonto.", + "night-light-manual-schedule-label": "Programmazione manuale", + "night-light-manual-schedule-select-start": "Seleziona ora inizio", + "night-light-manual-schedule-select-stop": "Seleziona ora fine", + "night-light-manual-schedule-sunrise": "Ora alba", + "night-light-manual-schedule-sunset": "Ora tramonto", + "night-light-temperature-day": "Giorno", + "night-light-temperature-day-description": "Controlla la temperatura durante il giorno.", + "night-light-temperature-description": "Imposta il calore colore per notte e giorno.", + "night-light-temperature-label": "Temperatura colore", + "night-light-temperature-night": "Notte", + "night-light-temperature-night-description": "Controlla la temperatura durante la notte.", + "title": "Schermo" + }, + "dock": { + "appearance-background-opacity-description": "Regola l’opacità dello sfondo del dock.", + "appearance-border-radius-description": "Regola il raggio bordo del dock.", + "appearance-border-radius-label": "Raggio bordo", + "appearance-colorize-icons-description": "Applica i colori del tema alle icone app del dock (solo app non focalizzate).", + "appearance-colorize-icons-label": "Colora icone", + "appearance-dead-opacity-description": "Regola l’opacità delle icone app non in esecuzione.", + "appearance-dead-opacity-label": "Opacità app non attive", + "appearance-desc": "Personalizza comportamento e aspetto del dock.", + "appearance-display-auto-hide": "Nascondi automaticamente", + "appearance-display-description": "Scegli come si comporta il dock.", + "appearance-display-exclusive": "Esclusivo", + "appearance-floating-distance-description": "Imposta la distanza tra il dock e il bordo dello schermo.", + "appearance-floating-distance-label": "Distanza flottante dock", + "appearance-frame-indicator-description": "Mostra un piccolo indicatore sul frame quando il dock è nascosto.", + "appearance-frame-indicator-label": "Indicatore frame dock", + "appearance-group-apps-description": "Raggruppa più finestre della stessa app in una sola voce dock.", + "appearance-group-apps-label": "Raggruppa stesse app", + "appearance-group-click-action-cycle": "Scorri finestre", + "appearance-group-click-action-description": "Scegli cosa fa il clic sinistro sulle app raggruppate.", + "appearance-group-click-action-label": "Azione clic app raggruppata", + "appearance-group-click-action-list": "Apri elenco finestre", + "appearance-group-context-menu-mode-description": "Scegli come si comporta il menu contestuale per app raggruppate.", + "appearance-group-context-menu-mode-extended": "Esteso", + "appearance-group-context-menu-mode-label": "Modalità menu app raggruppata", + "appearance-group-context-menu-mode-list": "Elenco finestre", + "appearance-group-indicator-style-description": "Scegli come gli indicatori app raggruppate mostrano lo stato della finestra focalizzata.", + "appearance-group-indicator-style-dots": "Punti", + "appearance-group-indicator-style-label": "Stile indicatore raggruppato", + "appearance-group-indicator-style-number": "Numero", + "appearance-hide-show-speed-description": "Regola la velocità dell’animazione mostra/nascondi del dock.", + "appearance-hide-show-speed-label": "Velocità mostra/nascondi", + "appearance-icon-size-description": "Regola la dimensione complessiva del dock.", + "appearance-icon-size-label": "Dimensione dock", + "appearance-inactive-indicators-description": "Mostra indicatori per tutte le app, non solo quella attualmente attiva.", + "appearance-inactive-indicators-label": "Indicatori in esecuzione", + "appearance-launcher-position-description": "Scegli dove appare l’icona launcher nel dock.", + "appearance-launcher-position-end": "Fine", + "appearance-launcher-position-label": "Posizione launcher", + "appearance-launcher-position-start": "Inizio", + "appearance-pinned-static-description": "Spinge sempre le icone app fissate a sinistra in ordine statico.", + "appearance-pinned-static-label": "App fissate statiche", + "appearance-position-description": "Scegli dove appare il dock sullo schermo.", + "appearance-position-label": "Posizione", + "appearance-show-launcher-icon-description": "Mostra l’icona launcher applicazioni nel dock.", + "appearance-show-launcher-icon-label": "Mostra launcher app", + "appearance-sit-on-frame-description": "Allinea il dock dentro il bordo frame invece di posizionarlo sopra.", + "appearance-sit-on-frame-label": "Dock sul frame", + "appearance-type-description": "Scegli tra pill flottante o barra statica agganciata al bordo.", + "appearance-type-floating": "Flottante", + "appearance-type-label": "Stile dock", + "appearance-type-static": "Statico", + "enabled-description": "Mostra o nascondi completamente il dock.", + "enabled-label": "Abilita dock", + "monitors-desc": "Mostra dock su monitor specifici. Se non ne scegli nessuno, verranno usati tutti.", + "monitors-only-same-monitor-description": "Mostra solo app del monitor in cui si trova il dock.", + "monitors-only-same-monitor-label": "Solo app dello stesso monitor", + "monitors-title": "Visualizzazione monitor", + "title": "Dock" + }, + "general": { + "copy-settings": "Copia impostazioni", + "fonts-default-description": "Font principale usato in tutta l’interfaccia.", + "fonts-default-label": "Font predefinito", + "fonts-default-placeholder": "Seleziona font predefinito...", + "fonts-default-scale-description": "Aumenta o riduci la dimensione del testo standard.", + "fonts-default-scale-label": "Dimensione font predefinito", + "fonts-default-search-placeholder": "Cerca font...", + "fonts-desc": "Scegli i font usati in tutta l’interfaccia.", + "fonts-monospace-description": "Font monospaziato usato per numeri e visualizzazione statistiche.", + "fonts-monospace-label": "Font monospaziato", + "fonts-monospace-placeholder": "Seleziona font monospaziato...", + "fonts-monospace-scale-description": "Aumenta o riduci la dimensione del testo monospaziato.", + "fonts-monospace-scale-label": "Dimensione font monospaziato", + "fonts-monospace-search-placeholder": "Cerca font monospaziato...", + "fonts-title": "Font", + "keybinds-conflict-description": "La combinazione di tasti è già assegnata a {action}.", + "keybinds-conflict-title": "Conflitto scorciatoia", + "keybinds-description": "Configura i tasti di navigazione globali per pannelli e launcher.", + "keybinds-down": "Sposta in basso", + "keybinds-enter": "Conferma / Azione", + "keybinds-escape": "Chiudi / Indietro", + "keybinds-left": "Sposta a sinistra", + "keybinds-modifier-description": "Le scorciatoie devono includere un tasto modificatore (Ctrl o Alt).", + "keybinds-modifier-title": "Modificatore richiesto", + "keybinds-remove": "Rimuovi / Elimina", + "keybinds-right": "Sposta a destra", + "keybinds-title": "Scorciatoie navigazione", + "keybinds-up": "Sposta in alto", + "language-desc": "Scegli la lingua preferita per l’applicazione.", + "language-select-auto-detect": "Automatico", + "language-select-description": "Seleziona la lingua usata nell’interfaccia dell’applicazione.", + "language-select-label": "Lingua applicazione", + "launch-setup-wizard": "Procedura guidata", + "profile-desc": "Modifica i dettagli utente e l’avatar.", + "profile-picture-description": "La tua immagine profilo mostrata in tutta l’interfaccia.", + "profile-picture-label": "Immagine profilo", + "profile-select-avatar": "Seleziona immagine avatar", + "profile-title": "Profilo", + "profile-tooltip": "Immagine profilo", + "reverse-scrolling-description": "Inverte la direzione di scorrimento interpretata", + "reverse-scrolling-label": "Inverti scorrimento", + "screen-corners-desc": "Personalizza arrotondamento angoli schermo ed effetti visivi.", + "screen-corners-radius-description": "Regola gli angoli arrotondati dello schermo.", + "screen-corners-radius-label": "Raggio angoli schermo", + "screen-corners-radius-reset": "Reimposta raggio angoli schermo", + "screen-corners-show-corners-description": "Mostra angoli arrotondati sul bordo dello schermo.", + "screen-corners-show-corners-label": "Mostra angoli schermo", + "screen-corners-solid-black-description": "Usa nero pieno invece del colore di sfondo della barra.", + "screen-corners-solid-black-label": "Angoli neri pieni", + "screen-corners-title": "Angoli schermo", + "settings-copied": "Impostazioni copiate negli appunti", + "tab-basics": "Base", + "tab-keybinds": "Scorciatoie" + }, + "hooks": { + "info-command-info-description": "• I comandi vengono eseguiti via shell (sh -lc)
• I comandi girano in background (staccati)
• I pulsanti test eseguono con i valori correnti", + "info-parameters-description": "• Hook sfondo: $1 = percorso sfondo, $2 = nome schermo
• Hook cambio tema: $1 = true/false (stato Modalità Scura)
• Hook blocco/sblocco schermo: nessun parametro
• Hook modalità prestazioni: nessun parametro
• Hook sessione: $1 = azione (shutdown/reboot)", + "info-parameters-label": "Parametri disponibili", + "noctalia-started-description": "Comando da eseguire quando Noctalia ha finito il caricamento.", + "noctalia-started-label": "Noctalia avviata", + "noctalia-started-placeholder": "es. notify-send \"Noctalia caricata\"", + "performance-mode-disabled-description": "Comando da eseguire quando Modalità Prestazioni Noctalia è disabilitata.", + "performance-mode-disabled-label": "Modalità prestazioni disabilitata", + "performance-mode-disabled-placeholder": "es. notify-send \"Prestazioni\" \"Modalità disabilitata\"", + "performance-mode-enabled-description": "Comando da eseguire quando Modalità Prestazioni Noctalia è abilitata.", + "performance-mode-enabled-label": "Modalità prestazioni abilitata", + "performance-mode-enabled-placeholder": "es. notify-send \"Prestazioni\" \"Modalità abilitata\"", + "screen-lock-description": "Comando da eseguire quando lo schermo viene bloccato.", + "screen-lock-label": "Schermo bloccato", + "screen-lock-placeholder": "es. notify-send \"Schermo\" \"Bloccato\"", + "screen-unlock-description": "Comando da eseguire quando la schermata blocco viene sbloccata.", + "screen-unlock-label": "Schermo sbloccato", + "screen-unlock-placeholder": "es. notify-send \"Schermo\" \"Sbloccato\"", + "session-description": "Comando da eseguire prima di spegnimento o riavvio. Riceve il tipo azione in $1 (shutdown/reboot).", + "session-label": "Fine sessione", + "session-placeholder": "es. notify-send \"Sessione\" \"$1\"", + "system-hooks-desc": "Configura comandi da eseguire quando avvengono eventi di sistema.", + "system-hooks-enable-description": "Abilita o disabilita tutti i comandi hook.", + "system-hooks-enable-label": "Abilita hook", + "system-hooks-title": "Hook di sistema", + "theme-changed-description": "Comando da eseguire quando il tema passa tra Modalità Scura e Chiara.", + "theme-changed-label": "Tema cambiato", + "theme-changed-placeholder": "es. notify-send \"Tema\" \"Cambiato\"", + "title": "Hook", + "wallpaper-changed-description": "Comando da eseguire quando cambia lo sfondo.", + "wallpaper-changed-label": "Sfondo cambiato", + "wallpaper-changed-placeholder": "es. notify-send \"Sfondo\" \"Cambiato\"" + }, + "idle": { + "custom-add": "Aggiungi comando", + "custom-description": "Esegui un comando shell dopo un periodo di inattività.", + "custom-entry-command": "Comando", + "custom-entry-delete": "Elimina", + "custom-entry-timeout": "Tempo inattività", + "custom-label": "Comandi inattività personalizzati", + "enable-description": "Spegni automaticamente schermo, blocca o sospendi dopo un periodo di inattività.", + "enable-label": "Abilita gestione inattività", + "fade-duration-description": "Secondi per l’animazione dissolvenza al nero prima che parta ogni azione. Qualsiasi movimento mouse annulla la dissolvenza.", + "fade-duration-label": "Durata dissolvenza", + "lock-description": "Secondi di inattività prima che si attivi la schermata blocco.", + "lock-label": "Schermata blocco", + "screen-off-description": "Secondi di inattività prima che i monitor vengano spenti.", + "screen-off-label": "Spegni schermo", + "status-description": "Tempo inattività come riportato dal compositor.", + "status-label": "Tempo inattività", + "suspend-description": "Secondi di inattività prima che il sistema venga sospeso.", + "tab-behavior": "Comportamento", + "tab-custom": "Personalizzato", + "timeouts-description": "Imposta a 0 per disabilitare una fase. I timeout vengono sospesi mentre Mantieni attivo è attivo.", + "timeouts-label": "Timeout", + "unavailable": "Il monitoraggio inattività nativo non è disponibile su questo compositor." + }, + "indicator": { + "default-value": "Default: {value}", + "system-default": "System Default" + }, + "launcher": { + "clipboard-desc": "Accedi e gestisci la cronologia appunti dal launcher.", + "execute-desc": "Configura come vengono avviate le applicazioni.", + "execute-title": "Esecuzione", + "settings-annotation-tool-description": "Comando da eseguire quando fai clic sul pulsante annota nella cronologia appunti. L’immagine verrà passata in pipe a questo comando.", + "settings-annotation-tool-label": "Strumento annotazioni", + "settings-annotation-tool-placeholder": "es. 'gradia', 'satty -f -'", + "settings-auto-paste-description": "Incolla automaticamente l’elemento appunti selezionato. Richiede wtype.", + "settings-auto-paste-label": "Incolla automaticamente", + "settings-clip-preview-description": "Mostra un’anteprima del contenuto appunti quando usi il comando >clip.", + "settings-clip-preview-label": "Abilita anteprima clip", + "settings-clip-wrap-text-description": "Va a capo il testo nell’elenco appunti invece di troncarlo.", + "settings-clip-wrap-text-label": "Testo appunti a capo", + "settings-clipboard-history-description": "Accedi agli elementi copiati in precedenza dal launcher.", + "settings-clipboard-history-label": "Abilita cronologia appunti", + "settings-clipboard-watch-image-description": "Stringa comando completa passata a wl-paste per cambi immagine. (richiede riavvio)", + "settings-clipboard-watch-image-label": "Comando monitoraggio immagini", + "settings-clipboard-watch-text-description": "Stringa comando completa passata a wl-paste per cambi testo. (richiede riavvio)", + "settings-clipboard-watch-text-label": "Comando monitoraggio testo", + "settings-custom-launch-prefix-description": "Prefissa i comandi con un launcher personalizzato (es. \"runapp\" per integrazione systemd).", + "settings-custom-launch-prefix-enabled-description": "Usa un prefisso personalizzato per avviare applicazioni invece del metodo predefinito.", + "settings-custom-launch-prefix-enabled-label": "Abilita prefisso avvio personalizzato", + "settings-custom-launch-prefix-label": "Prefisso avvio personalizzato", + "settings-density-description": "Regola la dimensione delle icone applicazione e la densità del launcher.", + "settings-density-label": "Densità", + "settings-desc": "Personalizza comportamento e aspetto del launcher.", + "settings-enable-session-search-description": "Mostra azioni sessione (blocco, spegnimento, riavvio, ecc.) durante la ricerca nel launcher.", + "settings-enable-session-search-label": "Abilita ricerca sessione", + "settings-enable-settings-search-description": "Mostra risultati impostazioni durante la ricerca nel launcher.", + "settings-enable-settings-search-label": "Abilita ricerca impostazioni", + "settings-enable-windows-search-description": "Cerca e metti a fuoco finestre attive.", + "settings-enable-windows-search-label": "Abilita ricerca finestre", + "settings-grid-view-description": "Mostra elementi in layout a griglia invece che a elenco.", + "settings-icon-mode-description": "Usa icone di sistema native invece delle icone Tabler.", + "settings-icon-mode-label": "Usa icone native", + "settings-ignore-mouse-input-description": "Disabilita interazione mouse e rotella nel launcher.", + "settings-ignore-mouse-input-label": "Ignora input mouse", + "settings-overlay-layer-description": "Mostra il launcher sul layer overlay, sopra le finestre fullscreen. Se attivo, il launcher non verrà agganciato alla barra.", + "settings-overlay-layer-label": "Mostra sopra fullscreen", + "settings-position-description": "Scegli dove appare il pannello launcher.", + "settings-show-categories-description": "Mostra schede categoria per filtrare le applicazioni.", + "settings-show-categories-label": "Mostra categorie", + "settings-show-icon-background-description": "Mostra uno sfondo a rettangolo arrotondato dietro le icone.", + "settings-show-icon-background-label": "Mostra sfondo icone", + "settings-sort-by-usage-description": "Se attivo, le app avviate più spesso appaiono per prime nell’elenco.", + "settings-sort-by-usage-label": "Ordina per più usate", + "settings-terminal-command-description": "Comando per avviare un terminale. Es. \"kitty -e\" o \"gnome-terminal --\".", + "settings-terminal-command-label": "Comando terminale", + "settings-use-app2unit-description": "Usa un metodo di avvio alternativo per gestire meglio i processi app e prevenire problemi.", + "settings-use-app2unit-label": "Usa App2Unit per avviare applicazioni", + "settings-view-mode-description": "Scegli il layout delle voci launcher.", + "settings-view-mode-label": "Modalità vista", + "title": "Launcher" + }, + "location": { + "calendar-cards-desc": "Organizza e abilita/disabilita le schede nel pannello calendario.", + "calendar-cards-title": "Schede calendario", + "calendar-header-label": "Intestazione calendario", + "calendar-month-label": "Mese calendario", + "date-time-12hour-format-description": "Mostra l’ora in formato 12 ore nella schermata blocco e nel calendario. L’orologio della barra ha impostazioni proprie.", + "date-time-12hour-format-label": "Usa formato ora 12 ore", + "date-time-desc": "Personalizza come vengono mostrati data e ora.", + "date-time-first-day-of-week-automatic": "Automatico (usa locale di sistema)", + "date-time-first-day-of-week-description": "Scegli quale giorno inizia la settimana nel calendario.", + "date-time-first-day-of-week-label": "Primo giorno della settimana", + "date-time-show-events-description": "Mostra gli eventi nel pannello calendario.", + "date-time-show-events-label": "Mostra eventi calendario", + "date-time-title": "Data e ora", + "date-time-use-analog-description": "Mostra un orologio in stile analogico nella finestra calendario.", + "date-time-use-analog-label": "Usa orologio stile analogico", + "date-time-week-numbers-description": "Mostra nel calendario la settimana dell’anno (es. settimana 38).", + "date-time-week-numbers-label": "Mostra numeri settimana", + "location-desc": "Ottieni meteo accurato e pianificazione Luce notturna impostando la tua posizione.", + "location-search-description": "es. Torino, TO", + "location-search-label": "Cerca una posizione", + "location-search-placeholder": "Inserisci il nome della posizione", + "location-title": "La tua posizione", + "weather-desc": "Scegli l’unità di temperatura preferita.", + "weather-enabled-description": "Mostra informazioni meteo in tutta l’interfaccia e recupera dati meteo. Se disattivato, tutti gli elementi meteo saranno nascosti e non verranno effettuate richieste di rete.", + "weather-enabled-label": "Abilita meteo", + "weather-fahrenheit-description": "Mostra la temperatura in Fahrenheit invece che in Celsius.", + "weather-fahrenheit-label": "Mostra temperatura in Fahrenheit (°F)", + "weather-hide-city-description": "Nascondi il nome città dalle visualizzazioni meteo in tutta l’interfaccia.", + "weather-hide-city-label": "Nascondi nome città", + "weather-hide-timezone-description": "Nascondi l’abbreviazione del fuso orario dalle visualizzazioni meteo in tutta l’interfaccia.", + "weather-hide-timezone-label": "Nascondi fuso orario", + "weather-show-effects-description": "Mostra effetti visivi aggiuntivi (come pioggia, neve o fulmini) sulla scheda meteo.", + "weather-show-effects-label": "Mostra effetti meteo", + "weather-show-in-calendar-description": "Mostra la previsione meteo giornaliera direttamente nella vista calendario.", + "weather-show-in-calendar-label": "Mostra meteo nel calendario" + }, + "lock-screen": { + "allow-password-with-fprintd-description": "Quando fprintd (autenticazione impronta digitale) è attivo, questa opzione ti consente comunque di accedere con la password invece che con l’impronta.", + "allow-password-with-fprintd-label": "Consenti accesso con password con fprintd", + "auto-start-auth-description": "Avvia automaticamente l’autenticazione con impronta senza richiedere pressione tasti o clic su pulsante.", + "auto-start-auth-label": "Avvio automatico autenticazione", + "clock-format-description": "Personalizza il formato orologio usando token di sintassi data/ora.", + "clock-format-label": "Formato orologio", + "clock-style-analog": "Analogico", + "clock-style-custom": "Personalizzato", + "clock-style-description": "Scegli lo stile visivo dell’orologio nella schermata blocco.", + "clock-style-digital": "Digitale", + "clock-style-label": "Stile orologio", + "compact-lockscreen-description": "Mostra solo input di accesso e controlli di sistema, nascondendo i widget meteo e media.", + "compact-lockscreen-label": "Schermata blocco compatta", + "lock-on-suspend-description": "Blocca automaticamente lo schermo quando il sistema viene sospeso.", + "lock-on-suspend-label": "Blocca alla sospensione", + "lock-screen-animations-description": "Abilita o disabilita le animazioni della schermata blocco.", + "lock-screen-animations-label": "Animazioni schermata blocco", + "lock-screen-blur-strength-description": "Applica un effetto sfocatura allo sfondo della schermata blocco.", + "lock-screen-blur-strength-label": "Intensità sfocatura schermata blocco", + "lock-screen-tint-strength-description": "Applica una sovrapposizione colorata allo sfondo della schermata blocco.", + "lock-screen-tint-strength-label": "Intensità tinta schermata blocco", + "monitors-desc": "Mostra la schermata blocco su monitor specifici. Se non ne scegli nessuno, verranno usati tutti.", + "password-chars-description": "Icone carine usate per nascondere la password.", + "password-chars-label": "Icone password casuali", + "show-hibernate-description": "Mostra l’opzione \"ibernazione\" nei controlli alimentazione.", + "show-hibernate-label": "Mostra ibernazione", + "show-session-buttons-description": "Consenti accesso alle impostazioni di alimentazione dalla schermata blocco.", + "show-session-buttons-label": "Controlli alimentazione", + "title": "Schermata blocco" + }, + "network": { + "bluetooth-description": "Attiva la gestione Bluetooth.", + "bluetooth-rssi-polling-description": "Campiona periodicamente l’RSSI dei dispositivi connessi tramite bluetoothctl. Potrebbe non essere disponibile per tutti i dispositivi; usa risorse minime quando attivo.", + "bluetooth-rssi-polling-label": "Polling segnale Bluetooth", + "desc": "Gestisci connessioni Wi-Fi e Bluetooth.", + "wifi-description": "Gestisci reti wireless (richiede NetworkManager)." + }, + "notifications": { + "duration-critical-urgency-description": "Per quanto tempo restano visibili le notifiche a priorità critica.", + "duration-critical-urgency-label": "Urgenza critica", + "duration-desc": "Configura per quanto tempo le notifiche restano visibili in base al livello di urgenza.", + "duration-low-urgency-description": "Per quanto tempo restano visibili le notifiche a priorità bassa.", + "duration-low-urgency-label": "Urgenza bassa", + "duration-normal-urgency-description": "Per quanto tempo restano visibili le notifiche a priorità normale.", + "duration-normal-urgency-label": "Urgenza normale", + "duration-respect-expire-description": "Usa il timeout di scadenza impostato nella notifica.", + "duration-respect-expire-label": "Rispetta timeout di scadenza", + "duration-title": "Durata notifiche", + "history-clear-dismiss-description": "Rimuove la notifica dalla cronologia quando viene ignorata.", + "history-clear-dismiss-label": "Cancella quando ignorata", + "history-critical-urgency-description": "Salva in cronologia le notifiche a priorità critica.", + "history-critical-urgency-label": "Salva in cronologia urgenza critica", + "history-desc": "Controlla quali notifiche vengono salvate in cronologia in base al livello di urgenza.", + "history-low-urgency-description": "Salva in cronologia le notifiche a priorità bassa.", + "history-low-urgency-label": "Salva in cronologia urgenza bassa", + "history-normal-urgency-description": "Salva in cronologia le notifiche a priorità normale.", + "history-normal-urgency-label": "Salva in cronologia urgenza normale", + "monitors-desc": "Mostra notifiche su monitor specifici. Se non ne scegli nessuno, verranno usati tutti.", + "settings-always-on-top-description": "Mostra le notifiche sopra finestre fullscreen e altri layer.", + "settings-background-opacity-description": "Regola l’opacità degli sfondi notifica.", + "settings-density-description": "Scegli la densità delle schede notifica.", + "settings-density-label": "Densità", + "settings-desc": "Configura aspetto e comportamento delle notifiche.", + "settings-do-not-disturb-description": "Disabilita tutti i popup notifica quando attivo.", + "settings-enabled-description": "Abilita o disabilita il demone notifiche; richiede riavvio della shell Noctalia.", + "settings-enabled-label": "Abilita notifiche", + "settings-location-description": "Dove appaiono le notifiche sullo schermo.", + "settings-markdown-description": "Renderizza il contenuto delle notifiche usando formattazione Markdown.", + "settings-markdown-label": "Abilita Markdown", + "sounds-desc": "Configura effetti sonori notifiche e volume.", + "sounds-enabled-description": "Abilita effetti sonori per le notifiche in arrivo.", + "sounds-enabled-label": "Abilita suoni notifiche", + "sounds-excluded-apps-description": "Salta la riproduzione del suono notifica configurato per applicazioni specifiche che hanno già suoni integrati.", + "sounds-excluded-apps-label": "Applicazioni escluse", + "sounds-excluded-apps-placeholder": "discord,firefox,chrome,chromium,edge", + "sounds-files-critical-description": "Percorso del file audio riprodotto per notifiche a priorità critica.", + "sounds-files-critical-label": "Suono urgenza critica", + "sounds-files-critical-select-title": "Seleziona file suono urgenza critica", + "sounds-files-desc": "Configura file audio personalizzati per diversi livelli di urgenza notifica.", + "sounds-files-low-description": "Percorso del file audio riprodotto per notifiche a priorità bassa.", + "sounds-files-low-label": "Suono urgenza bassa", + "sounds-files-low-select-title": "Seleziona file suono urgenza bassa", + "sounds-files-normal-description": "Percorso del file audio riprodotto per notifiche a priorità normale.", + "sounds-files-normal-label": "Suono urgenza normale", + "sounds-files-normal-select-title": "Seleziona file suono urgenza normale", + "sounds-files-placeholder": "Inserisci percorso file audio", + "sounds-files-select-file": "Seleziona file audio", + "sounds-files-title": "File audio", + "sounds-files-unified-description": "Percorso del file audio riprodotto per le notifiche.", + "sounds-files-unified-label": "Suono notifica", + "sounds-files-unified-select-title": "Seleziona file suono notifica", + "sounds-separate-description": "Usa file audio diversi per notifiche a priorità bassa, normale e critica.", + "sounds-separate-label": "Usa suoni diversi per priorità", + "sounds-title": "Impostazioni suono", + "sounds-unavailable-description": "Installa Qt6 Multimedia per abilitare i suoni notifica.", + "sounds-unavailable-label": "Suoni notifiche non disponibili", + "sounds-volume-description": "Regola il livello volume per i suoni notifica.", + "sounds-volume-label": "Volume suono", + "toast-battery-description": "Mostra un avviso quando il livello batteria scende sotto questa percentuale.", + "toast-battery-label": "Avviso batteria", + "toast-desc": "Configura aspetto e comportamento dei toast.", + "toast-keyboard-description": "Mostra un toast quando cambia il layout tastiera.", + "toast-keyboard-label": "Layout tastiera", + "toast-media-description": "Mostra un toast quando cambia lo stato riproduzione media.", + "toast-media-label": "Media" + }, + "osd": { + "always-on-top-description": "Mostra OSD sopra finestre fullscreen e altri layer.", + "always-on-top-label": "Sempre in primo piano", + "background-opacity-description": "Controlla la trasparenza dello sfondo OSD.", + "background-opacity-label": "Opacità sfondo", + "description": "Configura indicatori a schermo come overlay volume e luminosità.", + "duration-auto-hide-description": "Regola il tempo prima che OSD scompaia.", + "duration-auto-hide-label": "Nascondi automaticamente dopo", + "duration-desc": "Per quanto tempo OSD resta visibile prima di nascondersi automaticamente.", + "duration-title": "Timeout nascondimento automatico", + "enabled-description": "Mostra in tempo reale le variazioni di volume e luminosità.", + "enabled-label": "Abilita On-Screen Display", + "events-desc": "Seleziona quali eventi attivano OSD.", + "general-desc": "Configura visibilità e comportamento di OSD.", + "location-description": "Dove appaiono gli indicatori a schermo.", + "monitors-desc": "Mostra OSD su monitor specifici. Se non ne scegli nessuno, verranno usati tutti.", + "title": "On-Screen Display", + "types-brightness-description": "Mostra OSD quando cambia la luminosità schermo.", + "types-brightness-label": "Luminosità", + "types-custom-text-description": "Mostra OSD per messaggi testuali personalizzati da IPC.", + "types-custom-text-label": "Testo personalizzato", + "types-desc": "Seleziona gli eventi che attivano OSD.", + "types-input-volume-description": "Mostra OSD quando cambia il volume microfono.", + "types-input-volume-label": "Volume input", + "types-lockkey-description": "Mostra OSD quando Caps Lock, Num Lock o Scroll Lock vengono attivati/disattivati.", + "types-lockkey-label": "Tasti lock", + "types-media-description": "Mostra OSD quando cambia lo stato riproduzione media (play, pausa, salta).", + "types-media-label": "Riproduzione media", + "types-title": "Eventi attivazione OSD", + "types-volume-description": "Mostra OSD quando cambia il volume output audio.", + "types-volume-label": "Volume output" + }, + "plugins": { + "auto-update": "Aggiorna automaticamente plugin", + "auto-update-description": "Aggiorna automaticamente tutti i plugin all’avvio della shell.", + "available-description": "Sfoglia e installa plugin dalle sorgenti configurate.", + "available-label": "Plugin disponibili", + "available-no-plugins-description": "Controlla le sorgenti plugin o aggiorna l’elenco.", + "available-no-plugins-label": "Nessun plugin disponibile", + "check-for-updates": "Controlla aggiornamenti", + "checking-for-updates": "Controllo aggiornamenti...", + "collision-already-installed": "Questo plugin è già installato", + "collision-custom-version-exists": "È già installata una versione personalizzata da \"{source}\"", + "collision-official-version-exists": "La versione ufficiale di questo plugin è già installata", + "development-disable": "Disabilita modalità sviluppo per questo plugin", + "development-enable": "Abilita modalità sviluppo per questo plugin", + "filter-downloaded": "Scaricati", + "filter-not-downloaded": "Non scaricati", + "filter-tags-description": "Filtra plugin per categoria o stato download.", + "filter-tags-label": "Tag", + "hot-reload-description": "Ricarica automaticamente i plugin quando i loro file cambiano. Utile per sviluppo plugin.", + "hot-reload-label": "Hot reload (modalità dev)", + "hot-reloaded": "Plugin ricaricato: {name}", + "install-error": "Installazione non riuscita: {error}", + "install-incompatible": "{plugin} richiede Noctalia v{version} o superiore", + "install-success": "{plugin} installato con successo", + "installed-description": "Gestisci e configura tutti i plugin installati localmente.", + "installed-label": "Plugin installati", + "installed-no-plugins-description": "Installa plugin dalla sezione \"Disponibili\".", + "installed-no-plugins-label": "Nessun plugin installato", + "installing": "Installazione {plugin}...", + "open-plugin-page": "Apri pagina plugin", + "open-plugins-tab": "Apri impostazioni plugin", + "plugin-settings-title": "Impostazioni {plugin}", + "refresh-refreshing": "Aggiornamento elenco plugin...", + "refresh-tooltip": "Aggiorna plugin disponibili", + "settings-error-not-loaded": "Plugin non caricato", + "settings-saved": "Impostazioni plugin salvate", + "settings-tooltip": "Impostazioni plugin", + "source-custom": "Sorgente personalizzata", + "sources-add-custom": "Aggiungi repository personalizzato", + "sources-add-dialog-description": "Aggiungi un repository GitHub come sorgente plugin.", + "sources-add-dialog-error": "Aggiunta sorgente plugin non riuscita", + "sources-add-dialog-name": "Nome repository", + "sources-add-dialog-name-placeholder": "I miei plugin personalizzati", + "sources-add-dialog-success": "Sorgente plugin aggiunta con successo", + "sources-add-dialog-title": "Aggiungi sorgente plugin", + "sources-add-dialog-url": "URL repository", + "sources-description": "Gestisci repository plugin.", + "sources-placeholder": "Il mio fantastico repository", + "sources-remove-tooltip": "Rimuovi sorgente plugin", + "title": "Plugin", + "translations-reloaded": "Traduzioni ricaricate: {name}", + "uninstall-dialog-description": "Sei sicuro di voler disinstallare {plugin}? Verranno rimossi tutti i dati del plugin.", + "uninstall-dialog-title": "Disinstalla plugin", + "uninstall-error": "Disinstallazione non riuscita: {error}", + "uninstall-success": "{plugin} disinstallato con successo", + "uninstalling": "Disinstallazione {plugin}...", + "update-all": "Aggiorna tutti ({count})", + "update-all-success": "Tutti i plugin aggiornati con successo", + "update-available": "Nuovo aggiornamento plugin disponibile", + "update-available-plural": "Aggiornamenti plugin disponibili ({count})", + "update-error": "Aggiornamento plugin non riuscito: {plugin}: {error}", + "update-pending": "v{current} → v{new} (richiede Noctalia v{required})", + "update-success": "{plugin} aggiornato a v{version}", + "update-version": "v{current} → v{new}", + "updating": "Aggiornamento..." + }, + "region": { + "title": "Regione" + }, + "session-menu": { + "countdown-duration-description": "Imposta quanto dura il timer conto alla rovescia prima di eseguire azioni di alimentazione.", + "countdown-duration-label": "Durata conto alla rovescia", + "enable-countdown-description": "Mostra un timer conto alla rovescia prima di eseguire azioni di alimentazione.", + "enable-countdown-label": "Abilita timer conto alla rovescia", + "entries-desc": "Personalizza quali azioni di alimentazione appaiono nel menu sessione e in quale ordine.", + "entries-title": "Azioni alimentazione", + "entry-settings-command-description": "Comando personalizzato da eseguire per questa azione. Lascia vuoto per usare il comando di sistema predefinito.", + "entry-settings-command-placeholder": "es. systemctl poweroff", + "entry-settings-default-command-lock": "Schermata blocco interna (nessun comando)", + "entry-settings-default-command-logout": "Logout interno (nessun comando)", + "entry-settings-default-info-description": "Se non viene specificato un comando personalizzato, verrà usato il comando di sistema predefinito.", + "entry-settings-default-info-label": "Comando predefinito", + "entry-settings-keybind-description": "Assegna una combinazione tasti per attivare questa azione quando il menu sessione è aperto.", + "entry-settings-keybind-placeholder": "Premi Registra per assegnare un tasto...", + "entry-settings-keybind-recording": "Registrazione... Premi qualsiasi combinazione tasti", + "entry-settings-title": "Configura {entry}", + "entry-settings-tooltip": "Configura comando", + "general-desc": "Configura comportamento e aspetto del pannello menu sessione.", + "large-buttons-layout-description": "Scegli come vengono mostrati i pulsanti grandi del menu sessione.", + "large-buttons-layout-label": "Layout pulsanti grandi", + "large-buttons-style-description": "Mostra il menu sessione con pulsanti grandi in layout a griglia.", + "large-buttons-style-label": "Stile pulsanti grandi", + "position-description": "Scegli dove appare il pannello menu sessione quando viene aperto.", + "show-header-description": "Mostra titolo e pulsante chiusura in alto nel menu sessione.", + "show-header-label": "Mostra intestazione", + "show-keybinds-description": "Mostra suggerimenti scorciatoie nelle opzioni sessione.", + "show-keybinds-label": "Mostra scorciatoie" + }, + "system-monitor": { + "critical-color-label": "Colore critico", + "custom-highlight-colors-title-label": "Colori evidenziazione personalizzati", + "disk-available-label": "Disco disponibile", + "disk-section-label": "Utilizzo disco", + "enable-dgpu-monitoring-description": "Attenzione: questo riattiverà la GPU discreta (NVIDIA/AMD), il che può influire significativamente sulla durata batteria nei portatili con grafica ibrida.", + "enable-dgpu-monitoring-label": "Abilita monitoraggio GPU discreta", + "external-monitor-description": "Inserisci il comando o il percorso dell’applicazione da avviare quando attivi il monitor di sistema esterno.", + "external-monitor-label": "Comando monitor di sistema esterno", + "external-monitor-placeholder": "resources || missioncenter || jdsystemmonitor || corestats || system-monitoring-center || gnome-system-monitor || plasma-systemmonitor || mate-system-monitor || ukui-system-monitor || deepin-system-monitor || pantheon-system-monitor", + "general-desc": "Configura comportamento e aspetto del monitor di sistema.", + "gpu-section-label": "Temperatura GPU", + "highlight-colors-section-label": "Colori evidenziazione", + "polling-interval-label": "Intervallo polling", + "polling-section-description": "Configura la frequenza di aggiornamento di ogni metrica di sistema.", + "polling-section-label": "Intervalli polling", + "threshold-critical": "Soglia critica", + "threshold-warning": "Soglia avviso", + "thresholds-section-description": "Regola soglie avviso/critiche per ogni metrica di sistema.", + "use-custom-highlight-colors-description": "Quando disattivato, vengono usati i colori evidenziazione predefiniti del tema.", + "use-custom-highlight-colors-label": "Usa colori evidenziazione personalizzati", + "warning-color-label": "Colore avviso" + }, + "user-interface": { + "allow-panels-without-bar-description": "Se attivo, i pannelli possono aprirsi su qualsiasi schermo. Se disattivo, i pannelli si aprono solo sugli schermi con barra, riducendo l’uso memoria.", + "allow-panels-without-bar-label": "Consenti pannelli su schermi senza barra", + "animation-disable-description": "Disabilita tutte le animazioni per un’esperienza più veloce e reattiva.", + "animation-disable-label": "Disabilita animazioni UI", + "animation-speed-description": "Regola la velocità globale delle animazioni.", + "animation-speed-label": "Velocità animazione", + "animation-speed-reset": "Reimposta velocità animazione", + "appearance-desc": "Personalizza elementi visivi come tooltip, bordi e ombre.", + "box-border-description": "Mostra un contorno attorno alle aree contenuto.", + "box-border-label": "Contorno contenitore", + "box-border-radius-description": "Regola l’arrotondamento degli angoli delle principali sezioni layout, come sidebar, schede e pannelli contenuto.", + "box-border-radius-label": "Raggio contenitore", + "control-border-radius-description": "Controlla la curvatura degli elementi interattivi, inclusi pulsanti, interruttori e campi testo.", + "control-border-radius-label": "Raggio input", + "desc": "Personalizza aspetto, stile e comportamento dell’interfaccia.", + "dim-desktop-description": "Oscura il desktop quando pannelli o menu sono aperti.", + "dim-desktop-label": "Oscura desktop", + "dimmer-opacity-description": "Imposta il livello di opacità dell’oscuramento desktop.", + "dimmer-opacity-label": "Opacità desktop oscurato", + "panel-background-opacity-description": "Imposta l’opacità sfondo per tutti i pannelli (barra, launcher, impostazioni, ecc...).", + "panel-background-opacity-label": "Opacità sfondo pannelli", + "panels-attached-to-bar-description": "I pannelli si agganciano alla barra e ai bordi schermo, creando un aspetto continuo con eleganti angoli invertiti.", + "panels-attached-to-bar-label": "Aggancia pannelli ai bordi", + "panels-overlay-description": "Assicura che pannelli e barra restino visibili anche sopra applicazioni fullscreen.", + "panels-overlay-label": "Mantieni pannelli e barra in primo piano", + "scaling-description": "Cambia la dimensione dell’interfaccia utente generale, esclusa la barra.", + "scaling-label": "Scala interfaccia", + "settings-panel-mode-description": "Scegli layout impostazioni (potrebbe richiedere riapertura).", + "settings-panel-mode-label": "Modalità pannello impostazioni", + "shadows-description": "Abilita ombre esterne sotto barre e pannelli.", + "shadows-direction-description": "Scegli la direzione in cui viene proiettata l’ombra.", + "shadows-direction-label": "Direzione ombra", + "shadows-label": "Ombre esterne", + "title": "Interfaccia utente", + "tooltips-description": "Abilita o disabilita i tooltip in tutta l’interfaccia.", + "tooltips-label": "Mostra tooltip" + }, + "wallpaper": { + "automation-change-mode-alphabetical": "Alfabetico", + "automation-change-mode-description": "Scegli come selezionare gli sfondi durante il cambio automatico.", + "automation-change-mode-label": "Modalità cambio", + "automation-custom-interval-description": "Inserisci il tempo come HH:MM (es. 01:30).", + "automation-custom-interval-label": "Intervallo personalizzato", + "automation-interval-description": "Quanto spesso cambiare automaticamente gli sfondi.", + "automation-interval-label": "Intervallo sfondo", + "automation-random-wallpaper-description": "Pianifica cambi sfondo casuali a intervalli regolari.", + "automation-scheduled-change-description": "Cambia automaticamente gli sfondi a intervalli regolari.", + "automation-scheduled-change-label": "Cambio pianificato", + "look-feel-edge-smoothness-description": "Applica un effetto morbido e sfumato al bordo delle transizioni.", + "look-feel-edge-smoothness-label": "Ammorbidisci bordo transizione", + "look-feel-fill-color-description": "Scegli un colore di riempimento che potrebbe apparire dietro lo sfondo.", + "look-feel-fill-mode-description": "Seleziona come l’immagine deve scalare per adattarsi alla risoluzione del monitor.", + "look-feel-fill-mode-label": "Modalità riempimento", + "look-feel-skip-startup-transition-description": "Salta l’animazione sfondo all’avvio della shell.", + "look-feel-skip-startup-transition-label": "Salta transizione avvio", + "look-feel-title": "Aspetto e stile", + "look-feel-transition-duration-description": "Durata delle animazioni di transizione in secondi.", + "look-feel-transition-duration-label": "Durata transizione", + "look-feel-transition-type-description": "Tipo animazione durante il passaggio tra sfondi.", + "look-feel-transition-type-label": "Tipo transizione", + "settings-desc": "Controlla come gli sfondi vengono gestiti e visualizzati.", + "settings-enable-management-description": "Gestisci gli sfondi con Noctalia. Disattiva se preferisci usare un’altra applicazione.", + "settings-enable-management-label": "Abilita gestione sfondi", + "settings-enable-overview-description": "Applica uno sfondo sfocato e attenuato alla schermata overview.", + "settings-enable-overview-label": "Abilita sfondo overview", + "settings-folder-description": "Percorso della tua cartella sfondi principale.", + "settings-folder-label": "Cartella sfondi", + "settings-hide-wallpaper-filenames-tooltip-hide": "Nascondi nomi file", + "settings-hide-wallpaper-filenames-tooltip-show": "Mostra nomi file", + "settings-monitor-specific-description": "Imposta una cartella sfondi diversa per ogni monitor.", + "settings-monitor-specific-label": "Cartelle specifiche per monitor", + "settings-monitor-specific-tooltip": "Cartella sfondi monitor", + "settings-overview-blur-strength-description": "Applica intensità sfocatura all’overview.", + "settings-overview-blur-strength-label": "Intensità sfocatura overview", + "settings-overview-tint-description": "Applica intensità tinta all’overview.", + "settings-overview-tint-label": "Intensità tinta overview", + "settings-recursive-search-description": "Cerca sfondi anche nelle sottocartelle della cartella sfondi.", + "settings-recursive-search-label": "Cerca nelle sottocartelle", + "settings-select-monitor-folder": "Seleziona cartella sfondi monitor", + "settings-selector-description": "Scegli il tuo sfondo.", + "settings-selector-position-description": "Scegli dove appare il pannello selettore sfondo.", + "settings-show-hidden-files-tooltip-hide": "Nascondi file nascosti", + "settings-show-hidden-files-tooltip-show": "Mostra file nascosti", + "settings-title": "Impostazioni sfondo", + "settings-view-mode-description": "Scegli come visualizzare gli sfondi dalla tua cartella.", + "settings-view-mode-label": "Modalità visualizzazione", + "view-mode-browse": "Sfoglia cartelle", + "view-mode-cycle-tooltip": "Modalità visualizzazione: {mode} (clic per cambiare)", + "view-mode-recursive": "Sottocartelle appiattite", + "view-mode-single": "Cartella radice" + } + }, + "placeholders": { + "add-new-keybind": "Aggiungi una nuova scorciatoia", + "command-example": "echo \"Ciao Mondo\"", + "enter-command": "Inserisci un comando da eseguire (app o script personalizzato)", + "enter-ipc-identifier": "Inserisci un identificatore univoco per i comandi IPC", + "enter-path": "Inserisci percorso...", + "enter-text-to-collapse": "es. 'non è in riproduzione'. Usa /regex/ per i pattern.", + "enter-tooltip": "Inserisci tooltip", + "enter-width-pixels": "Inserisci larghezza in pixel", + "keybind-recording": "Registrazione scorciatoia...", + "search": "Cerca...", + "search-icons": "es. noctalia, niri, batteria, nuvola", + "search-launcher": "Cerca voci... oppure usa > per i comandi", + "search-wallhaven": "Cerca su Wallhaven...", + "search-wallpapers": "Digita per filtrare gli sfondi..." + }, + "positions": { + "bottom": "In basso", + "bottom-center": "In basso al centro", + "bottom-left": "In basso a sinistra", + "bottom-right": "In basso a destra", + "center": "Centro", + "center-left": "Centro sinistra", + "center-right": "Centro destra", + "close-to-bar": "Vicino al pulsante della barra", + "follow-bar": "Segui la barra", + "left": "Sinistra", + "right": "Destra", + "top": "In alto", + "top-center": "In alto al centro", + "top-left": "In alto a sinistra", + "top-right": "In alto a destra" + }, + "session-menu": { + "action-in-seconds": "{action} tra {seconds} secondi...", + "cancel-timer": "Annulla timer", + "title": "Menu sessione" + }, + "setup": { + "all-done": "Tutto fatto!", + "appearance": { + "subheader": "Scegli la modalità scura e le sorgenti colore (sfondo o predefinite)." + }, + "customize": { + "header": "Personalizza la tua esperienza", + "subheader": "Regola posizione barra, densità, scala e altro." + }, + "skip-setup": "Salta configurazione", + "telemetry-wizard-done": "Capito!", + "telemetry-wizard-note": "Hai il controllo: puoi attivarla o disattivarla quando vuoi nelle impostazioni", + "telemetry-wizard-subtitle": "Abbiamo aggiunto analisi anonime per migliorare Noctalia", + "telemetry-wizard-title": "Aggiornamento privacy", + "wallpaper": { + "choose-dir": "Scegli una cartella che contenga le immagini degli sfondi", + "dir-browse": "Sfoglia cartella sfondi", + "dir-description": "Scegli la cartella che contiene i tuoi sfondi.", + "dir-label": "Cartella sfondi", + "dir-select-title": "Seleziona cartella sfondi", + "header": "Scegli il tuo sfondo", + "no-dir": "Nessuna cartella sfondi selezionata", + "no-valid": "Nessun file immagine valido trovato in: {dir}", + "none-in-dir": "Nessuno sfondo trovato nella cartella", + "preview-error": "Impossibile caricare l'immagine", + "select-prompt": "Seleziona uno sfondo qui sotto", + "subheader": "Imposta l’atmosfera con uno sfondo bellissimo." + }, + "welcome-note": "Solo poche basi per iniziare: tutte le opzioni sono nelle impostazioni", + "welcome-subtitle": "Rendiamo il tuo desktop davvero tuo", + "welcome-title": "Benvenuto in Noctalia!" + }, + "system": { + "cpu-temperature": "{temp}°C", + "disk-usage": "{percent}%", + "location-display": "{name} ({coordinates})", + "monitor-description": "{model} ({width}x{height} @ {scale}x)", + "no-media-player-detected": "Nessun lettore multimediale rilevato", + "scaling-percentage": "{percentage}%", + "signal-strength": "{signal}%", + "unknown-app": "App sconosciuta", + "uptime": "Attivo da: {uptime}", + "user-requested": "Richiesto dall'utente", + "welcome-back": "Bentornato,", + "widget-settings-title": "Impostazioni {widget}" + }, + "system-monitor": { + "cpu-temp": "Temperatura CPU", + "cpu-usage": "Uso CPU", + "disk": "Disco", + "download-speed": "Velocità download", + "gpu-temp": "Temperatura GPU", + "load-average": "Carico medio", + "title": "Monitor di sistema", + "upload-speed": "Velocità upload" + }, + "toast": { + "airplane-mode": { + "title": "Modalità aereo" + }, + "battery": { + "critical": "Batteria critica", + "critical-desc": "Batteria al {percent}% — collega subito il caricatore", + "low": "Batteria scarica", + "low-desc": "Batteria al {percent}% — collega il caricatore" + }, + "bluetooth": { + "title": "Bluetooth" + }, + "dark-mode": { + "title": "Tema scuro" + }, + "hooks": { + "title-error": "Hook non riuscito", + "title-success": "Hook completato" + }, + "network": { + "internet": "Accesso a Internet", + "internet-connected": "Connesso a Internet", + "internet-disconnected": "Disconnesso da Internet", + "internet-limited": "Connesso senza Internet", + "title": "Rete" + }, + "night-light": { + "title": "Luce notturna" + }, + "notifications": { + "title": "Notifiche" + }, + "power-profile": { + "title": "Profilo energetico" + }, + "settings": { + "refresh": { + "title": "Impostazioni aggiornate" + }, + "restore": { + "title": "Impostazioni ripristinate" + } + }, + "template": { + "generic": { + "error": { + "title": "Applicazione modello fallita" + }, + "success": { + "title": "Modello applicato" + } + }, + "multiple": { + "error": { + "title": "Applicazione modelli fallita" + }, + "success": { + "title": "Modelli applicati" + } + } + }, + "wifi": { + "title": "Wi-Fi" + } + }, + "tooltips": { + "add-widget": "Aggiungi widget", + "bluetooth-devices": "Dispositivi Bluetooth", + "brightness-at": "Luminosità: {brightness}%", + "click-to-start-recording": "Registratore schermo (avvia registrazione)", + "click-to-stop-recording": "Registratore schermo (ferma registrazione)", + "collapse": "Comprimi barra laterale", + "copy-address": "Copia indirizzo", + "delete-notification": "Elimina notifica", + "dismiss-notification": "Ignora notifica", + "do-not-disturb-enabled": "Non disturbare", + "expand": "Espandi barra laterale", + "forget-network": "Dimentica rete", + "grid-view": "Vista a griglia", + "hidden-files-hide": "File nascosti", + "hide-unnamed-devices": "Nascondi dispositivi senza nome", + "home": "Cartella home", + "input-muted": "Attiva/disattiva muto input", + "keep-awake": "Mantieni attivo", + "keyboard-layout": "Layout tastiera {layout}", + "list-view": "Vista elenco", + "manage-vpn": "Connessioni VPN", + "manage-wifi": "Wi-Fi", + "max-widgets-reached": "Numero massimo di widget raggiunto", + "microphone-volume-at": "Volume microfono: {volume}%", + "move-to-section": "Sposta in {section}", + "mute": "Muto", + "next-media": "Brano successivo", + "next-month": "Mese successivo", + "night-light-not-installed": "Luce notturna (non disponibile)", + "noctalia-performance-enabled": "Modalità prestazioni Noctalia", + "open-annotation-tool": "Apri con strumento annotazioni", + "open-control-center": "Centro di controllo", + "open-notification-history-enable-dnd": "Cronologia notifiche", + "open-settings": "Impostazioni", + "open-tray-dropdown": "Area di notifica", + "output-muted": "Attiva/disattiva muto output", + "power-profile": "Profilo energetico {profile}", + "previous-media": "Brano precedente", + "previous-month": "Mese precedente", + "refresh-devices": "Aggiorna dispositivi", + "refresh-wallhaven": "Aggiorna risultati Wallhaven", + "refresh-wallpaper-list": "Aggiorna elenco sfondi", + "remove-widget": "Rimuovi widget", + "search-close": "Chiudi ricerca", + "session-menu": "Menu sessione", + "show-all-devices": "Mostra tutti i dispositivi", + "switch-to-dark-mode": "Modalità scura", + "switch-to-light-mode": "Modalità chiara", + "unmute": "Riattiva audio", + "up": "Cartella superiore", + "volume-at": "Volume uscita: {volume}%", + "wallpaper-selector": "Selettore sfondi" + }, + "wallpaper": { + "browse": { + "empty-directory": "Questa cartella è vuota.", + "go-root": "Vai alla cartella radice degli sfondi", + "go-up": "Vai alla cartella superiore", + "go-up-hint": "Usa il pulsante indietro per salire di livello." + }, + "configure-directory": "Configura la cartella degli sfondi con le immagini.", + "fill-modes": { + "crop": "Ritaglia (Riempi)", + "fit": "Adatta (Contieni)", + "repeat": "Ripeti (Affianca)", + "stretch": "Allunga" + }, + "no-match": "Nessuna corrispondenza trovata.", + "no-wallpaper": "Nessuno sfondo trovato.", + "panel": { + "apikey-help": "Una chiave API è richiesta per accedere ai contenuti NSFW.", + "apikey-label": "Chiave API", + "apikey-managed-by-env": "Gestita tramite la variabile d’ambiente NOCTALIA_WALLHAVEN_API_KEY.", + "apikey-placeholder": "Inserisci la tua chiave API Wallhaven", + "apply-all-monitors-description": "Applica lo sfondo selezionato a tutti i monitor.", + "apply-all-monitors-label": "Applica a tutti i monitor", + "categories-anime": "Anime", + "categories-label": "Categorie", + "categories-people": "Persone", + "color-extraction-disabled": "Usa estrazione colori dallo sfondo", + "color-extraction-enabled": "Usa schemi colore predefiniti", + "order-asc": "Crescente", + "order-desc": "Decrescente", + "order-label": "Ordine", + "purity-label": "Filtro contenuti", + "purity-nsfw": "NSFW", + "purity-sfw": "SFW", + "purity-sketchy": "Sketchy", + "ratios-all-portrait": "Tutti verticali", + "ratios-all-wide": "Tutti orizzontali", + "ratios-any": "Qualsiasi", + "ratios-label": "Rapporto d’aspetto", + "resolution-atleast": "Almeno", + "resolution-exact": "Esatta", + "resolution-label": "Risoluzione", + "resolution-mode-label": "Modalità", + "solid-color-tooltip": "Sfondo a colore uniforme", + "sorting-date-added": "Data aggiunta", + "sorting-favorites": "Preferiti", + "sorting-label": "Ordina per", + "sorting-relevance": "Rilevanza", + "sorting-toplist": "Top list", + "sorting-views": "Visualizzazioni", + "source-label": "Sorgente", + "source-wallhaven": "Wallhaven", + "title": "Selettore sfondi", + "wallhaven-settings-title": "Impostazioni Wallhaven" + }, + "transitions": { + "disc": "Disco", + "fade": "Dissolvenza", + "honeycomb": "Nido d’ape", + "pixelate": "Pixelato", + "stripes": "Strisce", + "wipe": "Scorrimento" + }, + "try-different-search": "Prova una ricerca diversa.", + "wallhaven": { + "loading": "Caricamento sfondi...", + "no-results": "Nessuno sfondo trovato. Prova una ricerca diversa.", + "page": "{current} di {total}", + "page-prefix": "Pagina", + "page-suffix": "di {total}" + } + }, + "weather": { + "clear-sky": "Cielo sereno", + "drizzle": "Pioviggine", + "fog": "Nebbia", + "mainly-clear": "Prevalentemente sereno", + "overcast": "Coperto", + "partly-cloudy": "Parzialmente nuvoloso", + "rain-showers": "Rovesci di pioggia", + "snow": "Neve", + "thunderstorm": "Temporale" + }, + "widgets": { + "color-picker": { + "palette-description": "Scegli da un’ampia gamma di colori predefiniti.", + "palette-label": "Tavolozza", + "palette-theme-colors": "Accesso rapido alla tavolozza colori del tema.", + "title": "Selettore colore" + }, + "datetime-tokens": { + "ampm-lowercase": "am/pm in minuscolo", + "ampm-uppercase": "AM/PM in maiuscolo", + "common-12hour-time-minutes": "Ora a 12 ore con minuti", + "common-24hour-time-minutes": "Ora a 24 ore con minuti", + "common-24hour-time-seconds": "Ora a 24 ore con secondi", + "common-european-date": "Formato data europeo", + "common-iso-date": "Formato data ISO", + "common-us-date": "Formato data USA", + "common-weekday-date": "Giorno della settimana con data", + "common-weekday-month-day": "Giorno settimana, mese e giorno", + "day-abbreviated": "Nome giorno abbreviato", + "day-full": "Nome giorno completo", + "day-leading-zero": "Giorno con zero iniziale (01-31)", + "day-no-leading-zero": "Giorno senza zero iniziale (1-31)", + "hour-leading-zero": "Ora con zero iniziale (00-23) — formato 24 ore", + "hour-no-leading-zero": "Ora senza zero iniziale (0-23) — formato 24 ore", + "minute-leading-zero": "Minuto con zero iniziale (00-59)", + "minute-no-leading-zero": "Minuto senza zero iniziale (0-59)", + "month-abbreviated": "Nome mese abbreviato", + "month-full": "Nome mese completo", + "month-number-leading-zero": "Mese come numero con zero iniziale (01-12)", + "month-number-no-zero": "Mese come numero senza zero iniziale (1-12)", + "second-leading-zero": "Secondo con zero iniziale (00-59)", + "second-no-leading-zero": "Secondo senza zero iniziale (0-59)", + "timezone-abbreviation": "Abbreviazione fuso orario", + "year-four-digit": "Anno a quattro cifre", + "year-two-digit": "Anno a due cifre (00-99)" + }, + "file-picker": { + "item": "elemento", + "items": "elementi", + "search-placeholder": "Cerca file e cartelle...", + "select-current": "Seleziona corrente", + "select-file": "Seleziona file", + "select-folder": "Seleziona cartella", + "selected": "Selezionato:", + "title": "Selettore file" + }, + "file-picker-title": "Seleziona un file", + "icon-picker": { + "title": "Selettore icone" + }, + "tooltip-placeholder": "Segnaposto" + }, + "wifi": { + "panel": { + "action-required": "Azione richiesta", + "available-interfaces": "Interfacce disponibili", + "available-networks": "Reti disponibili", + "disabled": "Wi‑Fi disattivato", + "disconnecting": "Disconnessione in corso...", + "dns": "DNS", + "enable-message": "Attiva il Wi‑Fi per vedere le reti disponibili.", + "enter-password": "Inserisci password Wi‑Fi...", + "forget": "Dimentica", + "forget-network": "Dimentica questa rete", + "forgetting": "Dimenticando...", + "interface": "Interfaccia di rete", + "internet-connected": "Internet connesso", + "internet-limited": "Nessun accesso a Internet", + "internet-status": "Stato Internet", + "ipv4": "IPv4", + "known-networks": "Reti conosciute", + "link-speed": "Velocità collegamento", + "no-ethernet-devices": "Nessun dispositivo Ethernet rilevato", + "no-networks": "Nessuna rete Wi‑Fi trovata", + "saved": "Salvata", + "scan-again": "Scansiona di nuovo", + "searching": "Ricerca reti in corso...", + "title": "Wi‑Fi" + }, + "signal": { + "excellent": "Eccellente", + "fair": "Discreto", + "good": "Buono", + "poor": "Scarso" + } + } +} diff --git a/Commons/I18n.qml b/Commons/I18n.qml index 557190106..7cd839350 100644 --- a/Commons/I18n.qml +++ b/Commons/I18n.qml @@ -14,7 +14,7 @@ Singleton { property string systemDetectedLangCode: "" property string fullLocaleCode: "" // Preserves regional locale variants // Static list of available translations — update when adding/removing translation files - property var availableLanguages: ["en", "de", "es", "fr", "hu", "ja", "ko-KR", "ku", "nl", "nn-HN", "nn-NO", "pl", "pt", "ru", "sv", "tr", "uk-UA", "zh-CN", "zh-TW"] + property var availableLanguages: ["en", "de", "es", "fr", "hu", "it", "ja", "ko-KR", "ku", "nl", "nn-HN", "nn-NO", "pl", "pt", "ru", "sv", "tr", "uk-UA", "zh-CN", "zh-TW"] property var translations: ({}) property var fallbackTranslations: ({}) From 3f8f4156f8ce13a05c8683e882f240f8ed20235b Mon Sep 17 00:00:00 2001 From: Lemmy Date: Mon, 23 Feb 2026 13:54:23 -0500 Subject: [PATCH 2/8] brightness: fix OSD showing on every settings update. --- Services/Hardware/BrightnessService.qml | 41 ++++++++++--------------- 1 file changed, 17 insertions(+), 24 deletions(-) diff --git a/Services/Hardware/BrightnessService.qml b/Services/Hardware/BrightnessService.qml index e4447873f..dc0d6d1b6 100644 --- a/Services/Hardware/BrightnessService.qml +++ b/Services/Hardware/BrightnessService.qml @@ -98,7 +98,7 @@ Singleton { function setMappedBacklightDevice(outputName, devicePath): void { var normalizedOutput = String(outputName || "").trim(); if (normalizedOutput === "") - return; + return; var normalizedDevicePath = normalizeBacklightDevicePath(devicePath); var mappings = Settings.data.brightness.backlightDeviceMappings || []; @@ -108,34 +108,34 @@ Singleton { for (var i = 0; i < mappings.length; i++) { var mapping = mappings[i]; if (!mapping || typeof mapping !== "object") - continue; + continue; var mappingOutput = String(mapping.output || "").trim(); var mappingDevice = normalizeBacklightDevicePath(mapping.device || ""); if (mappingOutput === "" || mappingDevice === "") - continue; + continue; if (mappingOutput === normalizedOutput) { if (!replaced && normalizedDevicePath !== "") { nextMappings.push({ - "output": normalizedOutput, - "device": normalizedDevicePath - }); + "output": normalizedOutput, + "device": normalizedDevicePath + }); } replaced = true; } else { nextMappings.push({ - "output": mappingOutput, - "device": mappingDevice - }); + "output": mappingOutput, + "device": mappingDevice + }); } } if (!replaced && normalizedDevicePath !== "") { nextMappings.push({ - "output": normalizedOutput, - "device": normalizedDevicePath - }); + "output": normalizedOutput, + "device": normalizedDevicePath + }); } Settings.data.brightness.backlightDeviceMappings = nextMappings; @@ -143,7 +143,7 @@ Singleton { function scanBacklightDevices(): void { if (!scanBacklightProc.running) - scanBacklightProc.running = true; + scanBacklightProc.running = true; } reloadableId: "brightness" @@ -219,7 +219,7 @@ Singleton { for (var i = 0; i < lines.length; i++) { var path = root.normalizeBacklightDevicePath(lines[i]); if (path === "" || seen[path]) - continue; + continue; seen[path] = true; found.push(path); } @@ -441,9 +441,6 @@ Singleton { } } - // Always update - monitor.brightnessUpdated(monitor.brightness); - root.monitorBrightnessChanged(monitor, monitor.brightness); monitor.initInProgress = false; } } @@ -546,13 +543,9 @@ Singleton { } else if (!isDdc) { // Internal backlight: first try explicit output mapping, then fall back to first available. var preferredDevicePath = root.getMappedBacklightDevice(modelData.name); - var probeScript = [ - "preferred=\"$1\"", - "if [ -n \"$preferred\" ] && [ ! -d \"$preferred\" ]; then preferred=\"/sys/class/backlight/$preferred\"; fi", - "selected=\"\"", - "if [ -n \"$preferred\" ] && [ -f \"$preferred/brightness\" ] && [ -f \"$preferred/max_brightness\" ]; then selected=\"$preferred\"; else for dev in /sys/class/backlight/*; do if [ -f \"$dev/brightness\" ] && [ -f \"$dev/max_brightness\" ]; then selected=\"$dev\"; break; fi; done; fi", - "if [ -n \"$selected\" ]; then echo \"$selected\"; cat \"$selected/brightness\"; cat \"$selected/max_brightness\"; fi" - ].join("; "); + var probeScript = ["preferred=\"$1\"", "if [ -n \"$preferred\" ] && [ ! -d \"$preferred\" ]; then preferred=\"/sys/class/backlight/$preferred\"; fi", "selected=\"\"", + "if [ -n \"$preferred\" ] && [ -f \"$preferred/brightness\" ] && [ -f \"$preferred/max_brightness\" ]; then selected=\"$preferred\"; else for dev in /sys/class/backlight/*; do if [ -f \"$dev/brightness\" ] && [ -f \"$dev/max_brightness\" ]; then selected=\"$dev\"; break; fi; done; fi", + "if [ -n \"$selected\" ]; then echo \"$selected\"; cat \"$selected/brightness\"; cat \"$selected/max_brightness\"; fi"].join("; "); initProc.command = ["sh", "-c", probeScript, "sh", preferredDevicePath]; initProc.running = true; } else { From 90e44d6edd604a0877310b01ff20006abcf67e77 Mon Sep 17 00:00:00 2001 From: Lemmy Date: Mon, 23 Feb 2026 13:54:29 -0500 Subject: [PATCH 3/8] autofmt --- .../Tabs/Display/BrightnessSubTab.qml | 10 +++--- Services/UI/ImageCacheService.qml | 32 +++++++++---------- 2 files changed, 22 insertions(+), 20 deletions(-) diff --git a/Modules/Panels/Settings/Tabs/Display/BrightnessSubTab.qml b/Modules/Panels/Settings/Tabs/Display/BrightnessSubTab.qml index 88fbb3015..17d3b5fa4 100644 --- a/Modules/Panels/Settings/Tabs/Display/BrightnessSubTab.qml +++ b/Modules/Panels/Settings/Tabs/Display/BrightnessSubTab.qml @@ -35,10 +35,12 @@ ColumnLayout { return baseLabel + "(" + autoDeviceName + ")"; } readonly property var backlightDeviceOptions: { - var options = [{ - "key": "", - "name": automaticOptionLabel - }]; + var options = [ + { + "key": "", + "name": automaticOptionLabel + } + ]; var devices = BrightnessService.availableBacklightDevices || []; for (var i = 0; i < devices.length; i++) { diff --git a/Services/UI/ImageCacheService.qml b/Services/UI/ImageCacheService.qml index d2ed489eb..cb6171dd7 100644 --- a/Services/UI/ImageCacheService.qml +++ b/Services/UI/ImageCacheService.qml @@ -209,22 +209,22 @@ Singleton { `; queueUtilityProcess({ - name: "CopyTempFile_" + cacheKey, - processString: processString, - onComplete: function (exitCode) { - if (exitCode === 0) { - Logger.d("ImageCache", "Temp file cached:", destPath); - notifyCallbacks(cacheKey, destPath, true); - } else { - Logger.w("ImageCache", "Failed to cache temp file:", sourcePath); - notifyCallbacks(cacheKey, "", false); - } - }, - onError: function () { - Logger.e("ImageCache", "Error caching temp file:", sourcePath); - notifyCallbacks(cacheKey, "", false); - } - }); + name: "CopyTempFile_" + cacheKey, + processString: processString, + onComplete: function (exitCode) { + if (exitCode === 0) { + Logger.d("ImageCache", "Temp file cached:", destPath); + notifyCallbacks(cacheKey, destPath, true); + } else { + Logger.w("ImageCache", "Failed to cache temp file:", sourcePath); + notifyCallbacks(cacheKey, "", false); + } + }, + onError: function () { + Logger.e("ImageCache", "Error caching temp file:", sourcePath); + notifyCallbacks(cacheKey, "", false); + } + }); } // ------------------------------------------------- From 40b299f94b71fb54e563187d52f466b0024ae21b Mon Sep 17 00:00:00 2001 From: Lemmy Date: Tue, 24 Feb 2026 07:59:12 -0500 Subject: [PATCH 4/8] ncolorpickerdialog: live mode --- Widgets/NColorPickerDialog.qml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/Widgets/NColorPickerDialog.qml b/Widgets/NColorPickerDialog.qml index 315b0d55d..d731eb4d9 100644 --- a/Widgets/NColorPickerDialog.qml +++ b/Widgets/NColorPickerDialog.qml @@ -29,11 +29,17 @@ Popup { if (selectedColor.hsvHue >= 0) { stableHue = selectedColor.hsvHue; } + if (liveMode && visible) { + colorSelected(selectedColor); + } } readonly property real displayHue: selectedColor.hsvHue < 0 ? stableHue : selectedColor.hsvHue signal colorSelected(color color) + // When true: hides Cancel/Apply, emits colorSelected on every color change + property bool liveMode: false + width: 580 padding: Style.marginXL @@ -734,6 +740,7 @@ Popup { } RowLayout { + visible: !root.liveMode Layout.fillWidth: true Layout.topMargin: 1 Layout.bottomMargin: 1 From e6b3996243d711bfc212e1ca48e4711056eb3eba Mon Sep 17 00:00:00 2001 From: Lemmy Date: Tue, 24 Feb 2026 08:11:51 -0500 Subject: [PATCH 5/8] network: cleaning up duplicate settings and simplifying logic --- Assets/settings-search-index.json | 9 +++++++++ Commons/Settings.qml | 9 ++------- Modules/Panels/Network/NetworkPanel.qml | 13 ++++++------- Modules/Panels/Network/WiFiNetworksList.qml | 2 +- .../Settings/Tabs/Connections/BluetoothSubTab.qml | 8 +++----- 5 files changed, 21 insertions(+), 20 deletions(-) diff --git a/Assets/settings-search-index.json b/Assets/settings-search-index.json index b2e3c1dc4..c234307b3 100644 --- a/Assets/settings-search-index.json +++ b/Assets/settings-search-index.json @@ -1844,6 +1844,15 @@ "subTab": 1, "subTabLabel": "common.panels" }, + { + "labelKey": "panels.user-interface.settings-panel-sidebar-label", + "descriptionKey": "panels.user-interface.settings-panel-sidebar-description", + "widget": "NToggle", + "tab": 1, + "tabLabel": "panels.user-interface.title", + "subTab": 1, + "subTabLabel": "common.panels" + }, { "labelKey": "panels.general.screen-corners-show-corners-label", "descriptionKey": "panels.general.screen-corners-show-corners-description", diff --git a/Commons/Settings.qml b/Commons/Settings.qml index 86bcaf19c..93fdc1ce1 100644 --- a/Commons/Settings.qml +++ b/Commons/Settings.qml @@ -316,13 +316,7 @@ Singleton { property real panelBackgroundOpacity: 0.93 property bool panelsAttachedToBar: true property string settingsPanelMode: "attached" // "centered", "attached", "window" - // Details view mode persistence for panels - property string wifiDetailsViewMode: "grid" // "grid" or "list" - property string bluetoothDetailsViewMode: "grid" // "grid" or "list" - // Persist the last-opened view for the unified network panel: "wifi" | "ethernet" - property string networkPanelView: "wifi" - // Bluetooth available devices list: hide items without a name - property bool bluetoothHideUnnamedDevices: false + property bool boxBorderEnabled: false } @@ -556,6 +550,7 @@ Singleton { property bool airplaneModeEnabled: false property bool bluetoothRssiPollingEnabled: false // Opt-in Bluetooth RSSI polling (uses bluetoothctl) property int bluetoothRssiPollIntervalMs: 60000 // Polling interval in milliseconds for RSSI queries + property string networkPanelView: "wifi" property string wifiDetailsViewMode: "grid" // "grid" or "list" property string bluetoothDetailsViewMode: "grid" // "grid" or "list" property bool bluetoothHideUnnamedDevices: false diff --git a/Modules/Panels/Network/NetworkPanel.qml b/Modules/Panels/Network/NetworkPanel.qml index 4a8e4273b..63274f973 100644 --- a/Modules/Panels/Network/NetworkPanel.qml +++ b/Modules/Panels/Network/NetworkPanel.qml @@ -18,10 +18,10 @@ SmartPanel { property string passwordSsid: "" property string expandedSsid: "" - // Info panel collapsed by default, view mode persisted under Settings.data.ui.wifiDetailsViewMode + // Info panel collapsed by default, view mode persisted in settings // Ethernet details UI state (mirrors Wi‑Fi info behavior) property bool ethernetInfoExpanded: false - property bool ethernetDetailsGrid: (Settings.data && Settings.data.ui && Settings.data.network.wifiDetailsViewMode !== undefined) ? (Settings.data.network.wifiDetailsViewMode === "grid") : true + property bool ethernetDetailsGrid: (Settings.data.network.wifiDetailsViewMode === "grid") // Unified panel view mode: "wifi" | "ethernet" (persisted) property string panelViewMode: "wifi" @@ -29,8 +29,9 @@ SmartPanel { onPanelViewModeChanged: { // Persist last view (only after restored the initial value) - if (panelViewPersistEnabled && Settings.data && Settings.data.ui && Settings.data.ui.networkPanelView !== undefined) + if (panelViewPersistEnabled) { Settings.data.ui.networkPanelView = panelViewMode; + } // Reset transient states to avoid layout artifacts passwordSsid = ""; expandedSsid = ""; @@ -71,7 +72,7 @@ SmartPanel { // Also fetch Ethernet details if connected NetworkService.refreshActiveEthernetDetails(); // Restore last view if valid, otherwise choose what's available (prefer Wi‑Fi when both exist) - if (Settings.data && Settings.data.ui && Settings.data.ui.networkPanelView) { + if (Settings.data.ui.networkPanelView) { const last = Settings.data.ui.networkPanelView; if (last === "ethernet" && NetworkService.hasEthernet()) { panelViewMode = "ethernet"; @@ -645,9 +646,7 @@ SmartPanel { baseSize: Style.baseWidgetSize * 0.8 onClicked: { ethernetDetailsGrid = !ethernetDetailsGrid; - if (Settings.data && Settings.data.ui) { - Settings.data.ui.wifiDetailsViewMode = ethernetDetailsGrid ? "grid" : "list"; - } + Settings.data.network.wifiDetailsViewMode = ethernetDetailsGrid ? "grid" : "list"; } z: 1 } diff --git a/Modules/Panels/Network/WiFiNetworksList.qml b/Modules/Panels/Network/WiFiNetworksList.qml index ba617b398..0f09234be 100644 --- a/Modules/Panels/Network/WiFiNetworksList.qml +++ b/Modules/Panels/Network/WiFiNetworksList.qml @@ -22,7 +22,7 @@ NBox { property string infoSsid: "" // Local layout toggle for details: true = grid (2 cols), false = rows (1 col) // Persisted under Settings.data.network.wifiDetailsViewMode - property bool detailsGrid: (Settings.data && Settings.data.ui && Settings.data.network.wifiDetailsViewMode !== undefined) ? (Settings.data.network.wifiDetailsViewMode === "grid") : true + property bool detailsGrid: (Settings.data.network.wifiDetailsViewMode === "grid") signal passwordRequested(string ssid) signal passwordSubmitted(string ssid, string password) diff --git a/Modules/Panels/Settings/Tabs/Connections/BluetoothSubTab.qml b/Modules/Panels/Settings/Tabs/Connections/BluetoothSubTab.qml index 51987587a..4cf2cf75c 100644 --- a/Modules/Panels/Settings/Tabs/Connections/BluetoothSubTab.qml +++ b/Modules/Panels/Settings/Tabs/Connections/BluetoothSubTab.qml @@ -49,7 +49,7 @@ Item { readonly property var availableDevices: { var list = root.unnamedAvailableDevices; - if (Settings.data && Settings.data.ui && Settings.data.network.bluetoothHideUnnamedDevices) { + if (Settings.data.network.bluetoothHideUnnamedDevices) { list = list.filter(function (dev) { var dn = dev.name || dev.deviceName || ""; var s = String(dn).trim(); @@ -78,7 +78,7 @@ Item { // For managing expanded device details property string expandedDeviceKey: "" - property bool detailsGrid: (Settings.data && Settings.data.ui && Settings.data.network.bluetoothDetailsViewMode !== undefined) ? (Settings.data.network.bluetoothDetailsViewMode === "grid") : true + property bool detailsGrid: (Settings.data.network.bluetoothDetailsViewMode === "grid") // Combined visibility check: tab must be visible AND the window must be visible readonly property bool effectivelyVisible: root.visible && Window.window && Window.window.visible @@ -533,9 +533,7 @@ Item { baseSize: Style.baseWidgetSize * 0.8 onClicked: { root.detailsGrid = !root.detailsGrid; - if (Settings.data && Settings.data.ui) { - Settings.data.network.bluetoothDetailsViewMode = root.detailsGrid ? "grid" : "list"; - } + Settings.data.network.bluetoothDetailsViewMode = root.detailsGrid ? "grid" : "list"; } z: 1 } From e0d8ead79cf417b31dcd76f1fbda206f5fb9e830 Mon Sep 17 00:00:00 2001 From: Lemmy Date: Tue, 24 Feb 2026 08:31:47 -0500 Subject: [PATCH 6/8] i18n-italian: after fixes and refresh from i18n platform --- Assets/Translations/it.json | 98 +++++++++++++++++++++---------------- 1 file changed, 57 insertions(+), 41 deletions(-) diff --git a/Assets/Translations/it.json b/Assets/Translations/it.json index b4fe8d852..e9586c1bb 100644 --- a/Assets/Translations/it.json +++ b/Assets/Translations/it.json @@ -1768,59 +1768,75 @@ "low-desc": "Batteria al {percent}% — collega il caricatore" }, "bluetooth": { - "title": "Bluetooth" + "address-copied": "Address copied to clipboard", + "confirm-code": "Confirm code {value} on the other device.", + "connect-failed": "Failed to connect to device", + "disconnect-failed": "Failed to disconnect from device", + "discoverable-change-failed": "Failed to change discoverable state", + "discoverable-disabled": "Discoverable disabled", + "discoverable-enabled": "Discoverable enabled", + "display-code": "Enter code {value} on the other device.", + "forget-failed": "Failed to forget device", + "pair-failed": "Failed to pair device", + "passkey-required": "Passkey required by the device.", + "pincode-required": "PIN code required by the device.", + "state-change-failed": "Failed to change Bluetooth state" }, - "dark-mode": { - "title": "Tema scuro" + "clipboard": { + "long-text": "Long text", + "unavailable": "Clipboard history unavailable", + "unavailable-desc": "The 'cliphist' application is not installed. Please install it to use clipboard history features" }, - "hooks": { - "title-error": "Hook non riuscito", - "title-success": "Hook completato" + "do-not-disturb": { + "disabled": "Do Not Disturb disabled", + "disabled-desc": "Showing all notifications", + "enabled": "Do Not Disturb enabled", + "enabled-desc": "You'll find these notifications in your history" }, - "network": { - "internet": "Accesso a Internet", - "internet-connected": "Connesso a Internet", - "internet-disconnected": "Disconnesso da Internet", - "internet-limited": "Connesso senza Internet", - "title": "Rete" + "donation-opened": "Donation page opened in your browser", + "internet-limited": "Connected without internet", + "keyboard-layout": { + "changed": "Keyboard layout changed to {layout}", + "title": "Keyboard" + }, + "missing-control-center": { + "description": "The control center widget has been removed from the bar. To access it from the bar again, you will need to re-add the widget. You can open it with right clicking on the bar too", + "label": "Last control center widget removed" }, "night-light": { - "title": "Luce notturna" + "forced": "Forced activation", + "normal": "Normal mode", + "not-installed": "wlsunset not installed" }, - "notifications": { - "title": "Notifiche" + "noctalia-performance": { + "disabled": "Performance mode disabled", + "enabled": "Performance mode enabled", + "label": "Noctalia Performance" }, "power-profile": { - "title": "Profilo energetico" + "changed": "Power profile changed", + "profile-name": "{profile}" }, - "settings": { - "refresh": { - "title": "Impostazioni aggiornate" - }, - "restore": { - "title": "Impostazioni ripristinate" - } + "theming-processor-failed": { + "desc-generic": "Encountered an error while processing templates", + "title": "Templating processing failed" }, - "template": { - "generic": { - "error": { - "title": "Applicazione modello fallita" - }, - "success": { - "title": "Modello applicato" - } - }, - "multiple": { - "error": { - "title": "Applicazione modelli fallita" - }, - "success": { - "title": "Modelli applicati" - } - } + "vpn": { + "connected": "Connected to '{name}'", + "disconnected": "Disconnected from '{name}'" + }, + "wallpaper-colors": { + "disabled": "Wallpaper colors disabled", + "enabled": "Wallpaper colors enabled", + "label": "Wallpaper colors" }, "wifi": { - "title": "Wi-Fi" + "connected": "Connected to '{ssid}'", + "connection-failed": "Connection failed", + "connection-timeout": "Connection timeout", + "disconnected": "Disconnected from '{ssid}'", + "incorrect-password": "Incorrect password", + "network-not-found": "Network not found" } }, "tooltips": { From c8d98f79013f925ace2acbccfe7ddf93c1afa1cf Mon Sep 17 00:00:00 2001 From: Lemmy Date: Tue, 24 Feb 2026 08:31:57 -0500 Subject: [PATCH 7/8] i18n-hu --- Assets/Translations/hu.json | 76 ++++++++++++++++++------------------- 1 file changed, 38 insertions(+), 38 deletions(-) diff --git a/Assets/Translations/hu.json b/Assets/Translations/hu.json index 8115f23c6..3dd64cee1 100644 --- a/Assets/Translations/hu.json +++ b/Assets/Translations/hu.json @@ -39,7 +39,7 @@ "show-app-icon-label": "Alkalmazásikon megjelenítése" }, "audio-visualizer": { - "color-name-description": "Válassza ki a vizualizátor színét.", + "color-name-description": "A vizualizátor színe.", "color-name-label": "Kitöltési szín", "hide-when-idle-description": "Ha engedélyezve van, a vizualizátor el van rejtve, kivéve, ha egy lejátszó aktívan játszik.", "hide-when-idle-label": "Elrejtés, ha nincs média lejátszva", @@ -47,9 +47,9 @@ }, "battery": { "device-default": "Alapértelmezett (Megjelenítő eszköz)", - "device-description": "Válassza ki, melyik akkumulátor eszközt jelenítse meg.", + "device-description": "Melyik akkumulátor eszközt jelenítse meg.", "device-label": "Akkumulátor eszköz", - "display-mode-description": "Válassza ki, hogyan jelenjen meg az akkumulátor a sávban.", + "display-mode-description": "Hogyan jelenjen meg az akkumulátor a sávban.", "display-mode-graphic": "Grafikus akkumulátor", "display-mode-graphic-clean": "Grafikus akkumulátor (százalék nélkül)", "display-mode-icon-always": "Ikon - Mindig mutassa a százalékot", @@ -60,7 +60,7 @@ "hide-if-not-detected-description": "Widget elrejtése, ha a rendszer nem észlel akkumulátort.", "hide-if-not-detected-label": "Elrejtés, ha nincs észlelve", "low-battery-threshold-label": "Alacsony akkumulátor töltöttségi figyelmeztetési küszöb", - "show-noctalia-performance-description": "A Noctalia teljesítménymód kapcsoló megjelenítése az akkumulátor panelen belül.
Letiltja az árnyékokat és animációkat a Noctalia-ban az erőforrásfelhasználás csökkentése érdekében.", + "show-noctalia-performance-description": "A Noctalia teljesítménymód kapcsoló megjelenítése az akkumulátor panelen belül.
Letiltja az árnyékokat és animációkat a Noctaliaban az erőforrásfelhasználás csökkentése érdekében.", "show-noctalia-performance-label": "Noctalia teljesítménymód kapcsoló", "show-power-profile-description": "Az energiaprofil kiválasztásának megjelenítése az akkumulátor panelen belül.", "show-power-profile-label": "Energiaprofil vezérlők" @@ -189,7 +189,7 @@ "show-visualizer-label": "Megjelenítő mutatása", "use-fixed-width-description": "Ha engedélyezve van, a widget mindig a maximális szélességet használja a tartalomhoz való dinamikus igazodás helyett.", "use-fixed-width-label": "Rögzített szélesség használata", - "visualizer-type-description": "Válassza ki a megjelenítendő hangvizualizátor stílusát.", + "visualizer-type-description": "A megjelenítendő hangvizualizátor stílusa.", "visualizer-type-label": "Megjelenítő típusa" }, "notification-history": { @@ -218,7 +218,7 @@ "cpu-temperature-label": "CPU-hőmérséklet", "cpu-usage-description": "Jelenítse meg az aktuális CPU-használati százalékot.", "cpu-usage-label": "CPU-használat", - "disk-path-description": "Válassza ki, melyik lemez csatolási pontot figyelje.", + "disk-path-description": "Melyik lemez csatolási pontot figyelje.", "disk-path-label": "Lemez útvonala", "gpu-temperature-description": "GPU hőmérséklet-értékek megjelenítése, ha elérhetőek.", "load-average-description": "Rendszerterhelés átlagának megjelenítése.", @@ -237,7 +237,7 @@ "storage-usage-label": "Tárhelyhasználat", "swap-usage-description": "Cserehely memória használatának megjelenítése.", "swap-usage-label": "Cserehely használat", - "use-monospace-font-description": "Használjon monospace betűtípust az egységes karakter-szélességhez.", + "use-monospace-font-description": "Monospace betűtípus használata az egységes karakter-szélességhez.", "use-monospace-font-label": "Monospace betűtípus", "use-padding-description": "Kitölti a szövegértékeket vezető szóközökkel, hogy megakadályozza az elrendezés eltolódását.", "use-padding-description-disabled-monospace-font": "Ehhez a funkcióhoz monospace betűtípus szükséges.", @@ -278,7 +278,7 @@ "hide-passive-label": "Passzív elemek elrejtése" }, "volume": { - "display-mode-description": "Válassza ki, hogyan jelenjen meg ez az érték." + "display-mode-description": "Hogyan jelenjen meg ez az érték." }, "workspace": { "character-count-description": "A munkaterületnevekből megjelenítendő karakterek száma (1-10).", @@ -295,7 +295,7 @@ "grouped-border-opacity-label": "Szegély átlátszósága", "hide-unoccupied-description": "Ne jelenítse meg az ablak nélküli munkaterületeket.", "hide-unoccupied-label": "Foglalatlan elrejtése", - "label-mode-description": "Válassza ki, hogyan jelenjenek meg a munkaterület címkéi.", + "label-mode-description": "Hogyan jelenjenek meg a munkaterület címkéi.", "label-mode-label": "Címke mód", "occupied-color-description": "A foglalt Workspaces háttérszínének beállítása.", "occupied-color-label": "Foglalt munkaterület színe", @@ -436,7 +436,7 @@ "installed": "Telepítve", "interface": "Felület", "internet": "Internet", - "keybind": "Billentyűkombináció", + "keybind": "Gyorsbillentyű", "language": "Nyelv", "loading": "Betöltés...", "local": "Helyi", @@ -777,7 +777,7 @@ "volumes-mute-output-description": "Elnémítja a rendszer fő hangkimenetét.", "volumes-mute-output-label": "Hangkimenet némítása", "volumes-output-volume-description": "Rendszerszintű hangerőszint.", - "volumes-step-size-description": "Beállítja a hangerő változtatásának lépésméretét (görgő, billentyűparancsok).", + "volumes-step-size-description": "Beállítja a hangerő változtatásának lépésméretét (görgő, gyorsbillentyűk).", "volumes-step-size-label": "Hangerő lépésmérete", "volumes-volume-feedback-description": "Hangerő állításakor visszajelző hang lejátszása.", "volumes-volume-feedback-label": "Hangerő visszajelző hang lejátszása", @@ -799,7 +799,7 @@ "appearance-density-description": "Beállítja a sáv belső margóit a kompakt vagy tágas megjelenés érdekében.", "appearance-density-label": "Sáv sűrűsége", "appearance-desc": "A sáv megjelenésének és pozíciójának testreszabása.", - "appearance-display-mode-description": "Válassza ki, mikor látható a sáv.", + "appearance-display-mode-description": "Mikor látható a sáv.", "appearance-floating-description": "Megjeleníti a sávot lebegő „pirulaként”.", "appearance-floating-label": "Lebegő sáv", "appearance-font-scale-description": "Állítsa be a betűméret skáláját a sávon megjelenő szöveghez.", @@ -1084,7 +1084,7 @@ "appearance-launcher-position-start": "Indítás", "appearance-pinned-static-description": "A rögzített alkalmazásikonok mindig statikus sorrendben kerüljenek balra.", "appearance-pinned-static-label": "Statikus rögzített alkalmazások", - "appearance-position-description": "Válassza ki, hogy hol jelenjen meg a dokk a képernyőn.", + "appearance-position-description": "Hol jelenjen meg a dokk a képernyőn.", "appearance-position-label": "Pozíció", "appearance-show-launcher-icon-description": "Az alkalmazásindító ikon megjelenítése a dokkban.", "appearance-show-launcher-icon-label": "Alkalmazásindító megjelenítése", @@ -1114,12 +1114,12 @@ "fonts-monospace-description": "Monospace betűtípus számok és statisztikák megjelenítéséhez.", "fonts-monospace-label": "Monospace betűtípus", "fonts-monospace-placeholder": "Monospace betűtípus kiválasztása...", - "fonts-monospace-scale-description": "Növelje vagy csökkentse a monospace szöveg méretét.", + "fonts-monospace-scale-description": "Monospace szöveg méretének növelése vagy csökkentése.", "fonts-monospace-scale-label": "Monospace betűméret", "fonts-monospace-search-placeholder": "Monospace betűtípus keresése...", "fonts-title": "Betűtípusok", "keybinds-conflict-description": "A billentyűkombináció már hozzá van rendelve ehhez: {action}.", - "keybinds-conflict-title": "Billentyűkombináció ütközés", + "keybinds-conflict-title": "Gyorsbillentyű ütközés", "keybinds-description": "Globális navigációs billentyűk beállítása a panelekhez és az indítóhoz.", "keybinds-down": "Lefelé mozgat", "keybinds-enter": "Megerősítés / Művelet", @@ -1129,7 +1129,7 @@ "keybinds-modifier-title": "Módosító szükséges", "keybinds-remove": "Törlés", "keybinds-right": "Jobbra mozgat", - "keybinds-title": "Navigációs billentyűparancsok", + "keybinds-title": "Navigációs Gyorsbillentyűk", "keybinds-up": "Felfelé mozgat", "language-desc": "Válassza ki az alkalmazás előnyben részesített nyelvét.", "language-select-auto-detect": "Automatikus", @@ -1155,7 +1155,7 @@ "screen-corners-title": "Képernyősarkok", "settings-copied": "Beállítások a vágólapra másolva", "tab-basics": "Alapok", - "tab-keybinds": "Billentyűparancsok" + "tab-keybinds": "Gyorsbillentyűk" }, "hooks": { "info-command-info-description": "• A parancsok shellen keresztül futnak (sh -lc)
• A parancsok a háttérben futnak (leválasztva)
• A tesztgombok az aktuális értékekkel futnak le", @@ -1319,7 +1319,7 @@ "clock-format-label": "Óraformátum", "clock-style-analog": "Analóg", "clock-style-custom": "Egyéni", - "clock-style-description": "Válaszd ki az óra vizuális stílusát a zárolási képernyőn.", + "clock-style-description": "Az óra vizuális stílusa a zárolási képernyőn.", "clock-style-digital": "Digitális", "clock-style-label": "Óra stílus", "compact-lockscreen-description": "Csak a bejelentkezési beviteli mező és a rendszervezérlők megjelenítése, elrejtve az időjárás és média widgeteket.", @@ -1418,35 +1418,35 @@ "toast-media-label": "Média" }, "osd": { - "always-on-top-description": "Képernyőn megjelenő kijelző megjelenítése teljes képernyős ablakok és más rétegek felett.", + "always-on-top-description": "Képernyőkijelző megjelenítése teljes képernyős ablakok és más rétegek felett.", "always-on-top-label": "Mindig felül", - "background-opacity-description": "A képernyőn megjelenő kijelzők hátterének átlátszóságát szabályozza.", + "background-opacity-description": "A képernyőkijelzők hátterének átlátszóságát szabályozza.", "background-opacity-label": "Háttér átlátszatlansága", - "description": "Képernyőn megjelenő jelzők, például hangerő- és fényerő-átfedések beállítása.", - "duration-auto-hide-description": "Állítsa be azt az időt, mielőtt az képernyőn megjelenő kijelző eltűnik.", + "description": "Képernyőkijelzők, például hangerő- és fényerő-átfedések beállítása.", + "duration-auto-hide-description": "Az idő, mielőtt a képernyőkijelző eltűnik.", "duration-auto-hide-label": "Automatikus elrejtés ennyi idő után", "duration-desc": "Mennyi ideig marad látható az épernyőn megjelenő kijelző, mielőtt automatikusan elrejti magát.", "duration-title": "Automatikus elrejtési időtúllépés", "enabled-description": "A hangerő és a fényerő változásainak megjelenítése valós időben.", - "enabled-label": "Képernyőn megjelenő kijelzés engedélyezése", - "events-desc": "Válassza ki, mely események indítsák el a képernyőn megjelenő kijelzést.", - "general-desc": "Az képernyőn megjelenő kijelző láthatóságának és viselkedésének konfigurálása.", - "location-description": "A képernyőn megjelenő kijelzések helye.", - "monitors-desc": "Képernyőn megjelenő kijelző megjelenítése meghatározott monitorokon. Alapértelmezés szerint az összesen, ha nincs kiválasztva.", - "title": "Képernyőn megjelenő kijelzés", - "types-brightness-description": "Képernyőn megjelenő kijelző megjelenítése a képernyő fényerejének változásakor.", + "enabled-label": "Képernyőkijelzés engedélyezése", + "events-desc": "Mely események indítsák el a képernyőkijelzőt.", + "general-desc": "A képernyőkijelzők láthatóságának és viselkedésének konfigurálása.", + "location-description": "A képernyőkijelzők helye.", + "monitors-desc": "Képernyőkijelző megjelenítése meghatározott monitorokon. Alapértelmezés szerint az összes monitoron, ha nincs kiválasztva egy.", + "title": "Képernyőkijelzők", + "types-brightness-description": "Képernyőkijelző megjelenítése a képernyő fényerejének változásakor.", "types-brightness-label": "Fényerő", - "types-custom-text-description": "Képernyőn megjelenő kijelző megjelenítése egyéni szöveges üzenetekhez IPC-ből.", + "types-custom-text-description": "Képernyőkijelző megjelenítése egyéni szöveges üzenetekhez IPC-ből.", "types-custom-text-label": "Egyéni szöveg", - "types-desc": "Válassza ki a képernyőn megjelenő kijelző-t kiváltó eseményeket.", - "types-input-volume-description": "Képernyőn megjelenő kijelző megjelenítése a mikrofon hangerejének változásakor.", + "types-desc": "Válassza ki a képernyőkijelzőt kiváltó eseményeket.", + "types-input-volume-description": "Képernyőkijelző megjelenítése a mikrofon hangerejének változásakor.", "types-input-volume-label": "Bemeneti hangerő", - "types-lockkey-description": "Képernyőn megjelenő kijelző megjelenítése a Caps Lock, Num Lock vagy Scroll Lock váltásakor.", + "types-lockkey-description": "Képernyőkijelző megjelenítése a Caps Lock, Num Lock vagy Scroll Lock váltásakor.", "types-lockkey-label": "Zárolási gombok", - "types-media-description": "Képernyőn megjelenő kijelző megjelenítése a média lejátszási állapotának változásakor (lejátszás, szünet, ugrás).", + "types-media-description": "Képernyőkijelző megjelenítése a média lejátszási állapotának változásakor (lejátszás, szünet, ugrás).", "types-media-label": "Média lejátszás", - "types-title": "Képernyőn megjelenő kijelző kiváltó események", - "types-volume-description": "Képernyőn megjelenő kijelző megjelenítése a hangkimenet hangerejének változásakor.", + "types-title": "Képernyőkijelzőt kiváltó események", + "types-volume-description": "Képernyőkijelző megjelenítése a hangkimenet hangerejének változásakor.", "types-volume-label": "Kimeneti hangerő" }, "plugins": { @@ -1545,7 +1545,7 @@ "show-header-description": "A cím és a bezárás gomb megjelenítése a munkamenet menü tetején.", "show-header-label": "Fejléc megjelenítése", "show-keybinds-description": "Billentyűkombináció-tippek megjelenítése a munkamenet-opcióknál.", - "show-keybinds-label": "Billentyűparancsok megjelenítése" + "show-keybinds-label": "Gyorsbillentyűk megjelenítése" }, "system-monitor": { "critical-color-label": "Kritikus szín", @@ -1672,7 +1672,7 @@ "enter-text-to-collapse": "pl. 'semmi sem játszik'. Használjon /regex/-et mintákhoz.", "enter-tooltip": "Adja meg a buboréksúgót", "enter-width-pixels": "Adja meg a szélességet képpontban", - "keybind-recording": "Billentyűkombináció rögzítése...", + "keybind-recording": "Gyorsbillentyű rögzítése...", "search": "Keresés...", "search-icons": "pl. noctalia, niri, battery, cloud", "search-launcher": "Keressen bejegyzéseket vagy írja be „>”-t a parancsokhoz", From ad4bda10721a82e146f538251983dc7485b70358 Mon Sep 17 00:00:00 2001 From: Lemmy Date: Tue, 24 Feb 2026 08:47:53 -0500 Subject: [PATCH 8/8] settings: more blur goodness - no more 75% transparency detection for the sidebar. --- Assets/Translations/en.json | 2 ++ Assets/settings-default.json | 10 ++++------ Assets/settings-search-index.json | 4 ++-- Commons/Settings.qml | 4 ++-- Modules/Panels/Settings/SettingsContent.qml | 12 ++++++------ .../Settings/Tabs/UserInterface/PanelsSubTab.qml | 15 ++++++++++++++- 6 files changed, 30 insertions(+), 17 deletions(-) diff --git a/Assets/Translations/en.json b/Assets/Translations/en.json index 64563f858..07a50de07 100644 --- a/Assets/Translations/en.json +++ b/Assets/Translations/en.json @@ -1600,6 +1600,8 @@ "scaling-label": "Interface scaling", "settings-panel-mode-description": "Choose settings layout (may require reopening).", "settings-panel-mode-label": "Settings panel mode", + "settings-panel-sidebar-card-style-description": "Wraps the settings sidebar in a filled background with rounded corners.", + "settings-panel-sidebar-card-style-label": "Sidebar card style", "shadows-description": "Enables drop shadows under bars and panels.", "shadows-direction-description": "Choose where the shadow is cast to.", "shadows-direction-label": "Shadow direction", diff --git a/Assets/settings-default.json b/Assets/settings-default.json index 9a5d090ae..551ab810f 100644 --- a/Assets/settings-default.json +++ b/Assets/settings-default.json @@ -136,14 +136,11 @@ "fontDefaultScale": 1, "fontFixedScale": 1, "tooltipsEnabled": true, + "boxBorderEnabled": false, "panelBackgroundOpacity": 0.93, "panelsAttachedToBar": true, "settingsPanelMode": "attached", - "wifiDetailsViewMode": "grid", - "bluetoothDetailsViewMode": "grid", - "networkPanelView": "wifi", - "bluetoothHideUnnamedDevices": false, - "boxBorderEnabled": false + "settingsPanelSideBarCardStyle": false }, "location": { "name": "Tokyo", @@ -353,6 +350,7 @@ "airplaneModeEnabled": false, "bluetoothRssiPollingEnabled": false, "bluetoothRssiPollIntervalMs": 60000, + "networkPanelView": "wifi", "wifiDetailsViewMode": "grid", "bluetoothDetailsViewMode": "grid", "bluetoothHideUnnamedDevices": false, @@ -506,4 +504,4 @@ "gridSnap": false, "monitorWidgets": [] } -} +} \ No newline at end of file diff --git a/Assets/settings-search-index.json b/Assets/settings-search-index.json index c234307b3..ee054812b 100644 --- a/Assets/settings-search-index.json +++ b/Assets/settings-search-index.json @@ -1845,8 +1845,8 @@ "subTabLabel": "common.panels" }, { - "labelKey": "panels.user-interface.settings-panel-sidebar-label", - "descriptionKey": "panels.user-interface.settings-panel-sidebar-description", + "labelKey": "panels.user-interface.settings-panel-sidebar-card-style-label", + "descriptionKey": "panels.user-interface.settings-panel-sidebar-card-style-description", "widget": "NToggle", "tab": 1, "tabLabel": "panels.user-interface.title", diff --git a/Commons/Settings.qml b/Commons/Settings.qml index 93fdc1ce1..07e1af477 100644 --- a/Commons/Settings.qml +++ b/Commons/Settings.qml @@ -313,11 +313,11 @@ Singleton { property real fontDefaultScale: 1.0 property real fontFixedScale: 1.0 property bool tooltipsEnabled: true + property bool boxBorderEnabled: false property real panelBackgroundOpacity: 0.93 property bool panelsAttachedToBar: true property string settingsPanelMode: "attached" // "centered", "attached", "window" - - property bool boxBorderEnabled: false + property bool settingsPanelSideBarCardStyle: false } // location diff --git a/Modules/Panels/Settings/SettingsContent.qml b/Modules/Panels/Settings/SettingsContent.qml index 1b6d77b87..29256cc3f 100644 --- a/Modules/Panels/Settings/SettingsContent.qml +++ b/Modules/Panels/Settings/SettingsContent.qml @@ -62,7 +62,7 @@ Item { property real _lastMouseY: 0 property bool _mouseInitialized: false - readonly property bool panelVeryTransparent: Settings.data.ui.panelBackgroundOpacity <= 0.75 + readonly property bool sidebarCardStyle: Settings.data.ui.settingsPanelSideBarCardStyle onSearchResultsChanged: { searchSelectedIndex = 0; @@ -753,13 +753,13 @@ Item { id: sidebar clip: true - Layout.preferredWidth: Math.round(root.sidebarExpanded ? 200 * Style.uiScaleRatio : sidebarToggle.width + (root.panelVeryTransparent ? Style.margin2M : 0) + (sidebarList.verticalScrollBarActive ? Style.marginM : 0)) + Layout.preferredWidth: Math.round(root.sidebarExpanded ? 200 * Style.uiScaleRatio : sidebarToggle.width + (root.sidebarCardStyle ? Style.margin2M : 0) + (sidebarList.verticalScrollBarActive ? Style.marginM : 0)) Layout.fillHeight: true Layout.alignment: Qt.AlignTop - radius: root.panelVeryTransparent ? Style.radiusM : 0 - color: root.panelVeryTransparent ? Color.mSurfaceVariant : "transparent" - border.color: root.panelVeryTransparent ? Style.boxBorderColor : "transparent" + radius: root.sidebarCardStyle ? Style.radiusM : 0 + color: root.sidebarCardStyle ? Color.mSurfaceVariant : "transparent" + border.color: root.sidebarCardStyle ? Style.boxBorderColor : "transparent" Behavior on Layout.preferredWidth { NumberAnimation { @@ -772,7 +772,7 @@ Item { ColumnLayout { anchors.fill: parent spacing: Style.marginS - anchors.margins: root.panelVeryTransparent ? Style.marginM : 0 + anchors.margins: root.sidebarCardStyle ? Style.marginM : 0 // Sidebar toggle button Item { diff --git a/Modules/Panels/Settings/Tabs/UserInterface/PanelsSubTab.qml b/Modules/Panels/Settings/Tabs/UserInterface/PanelsSubTab.qml index d376c7a56..11186bcc4 100644 --- a/Modules/Panels/Settings/Tabs/UserInterface/PanelsSubTab.qml +++ b/Modules/Panels/Settings/Tabs/UserInterface/PanelsSubTab.qml @@ -31,7 +31,7 @@ ColumnLayout { Layout.fillWidth: true label: I18n.tr("panels.user-interface.panel-background-opacity-label") description: I18n.tr("panels.user-interface.panel-background-opacity-description") - from: 0.4 + from: 0 to: 1 stepSize: 0.01 showReset: true @@ -59,6 +59,10 @@ ColumnLayout { Layout.fillWidth: true } + NHeader { + label: "Settings panel" + } + NComboBox { label: I18n.tr("panels.user-interface.settings-panel-mode-label") description: I18n.tr("panels.user-interface.settings-panel-mode-description") @@ -80,5 +84,14 @@ ColumnLayout { currentKey: Settings.data.ui.settingsPanelMode defaultValue: Settings.getDefaultValue("ui.settingsPanelMode") onSelected: key => Settings.data.ui.settingsPanelMode = key + minimumWidth: 220 * Style.uiScaleRatio + } + + NToggle { + label: I18n.tr("panels.user-interface.settings-panel-sidebar-card-style-label") + description: I18n.tr("panels.user-interface.settings-panel-sidebar-card-style-description") + checked: Settings.data.ui.settingsPanelSideBarCardStyle + defaultValue: Settings.getDefaultValue("ui.settingsPanelSideBarCardStyle") + onToggled: checked => Settings.data.ui.settingsPanelSideBarCardStyle = checked } }