Impostazioni: controllo e aggiornamento dei CLI con pulsante evidenziato

Sezione Aggiornamenti nel riquadro Impostazioni: per ogni CLI installato
versione, esito del controllo (disponibile, aggiornato, non riuscito) e
pulsante Aggiorna che esegue il comando ufficiale. Il pulsante e un puntino
sul pulsante Impostazioni si evidenziano solo se c'è una versione nuova. Il
controllo legge l'ultima versione dalle sorgenti ufficiali (downloads.claude.ai
e release GitHub di Codex), parte all'avvio e all'apertura del riquadro con
cache di 5 minuti e non fallisce mai in modo invasivo. L'aggiornamento ha
tempo massimo di 10 minuti, blocca invio e cambio CLI, e in caso di errore
suggerisce il comando manuale per npm, Homebrew, WinGet o installazione nativa.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
davideandClaude Sonnet 5.5 committed 2026-10-15 11:49:22 +02:00
1 parent 6498e45a0d
commit 8b20f5224e
7 files changed
+328 -16

No files matched your search

+25
View File
@@ -57,6 +57,24 @@
<Setter Property="Background" Value="{DynamicResource Bg}" />
<Setter Property="BorderBrush" Value="{DynamicResource Accent}" />
</Style>
<Style Selector="Button.ghost.primary">
<Setter Property="Background" Value="{DynamicResource Accent}" />
<Setter Property="Foreground" Value="{DynamicResource OnAccent}" />
<Setter Property="BorderBrush" Value="{DynamicResource Accent}" />
</Style>
<Style Selector="Button.ghost.primary:pointerover /template/ ContentPresenter">
<Setter Property="Background" Value="{DynamicResource Accent}" />
<Setter Property="Foreground" Value="{DynamicResource OnAccent}" />
<Setter Property="BorderBrush" Value="{DynamicResource Accent}" />
<Setter Property="Opacity" Value="0.88" />
</Style>
<Style Selector="TextBlock.check">
<Setter Property="Foreground" Value="{DynamicResource FgMuted}" />
</Style>
<Style Selector="TextBlock.check.avail">
<Setter Property="Foreground" Value="{DynamicResource Accent}" />
<Setter Property="FontWeight" Value="SemiBold" />
</Style>
<Style Selector="Button.mini">
<Setter Property="FontSize" Value="12" />
<Setter Property="Padding" Value="8,2" />
@@ -93,6 +111,13 @@
<Setter Property="BorderBrush" Value="{DynamicResource Accent}" />
</Style>
<Style Selector="SelectableTextBlock.status">
<Setter Property="Foreground" Value="{DynamicResource FgMuted}" />
</Style>
<Style Selector="SelectableTextBlock.status.err">
<Setter Property="Foreground" Value="{DynamicResource Err}" />
</Style>
<Style Selector="Border.item">
<Setter Property="CornerRadius" Value="10" />
<Setter Property="Margin" Value="8,1" />