feat(ui): Throttle-Stufen im Ausfuehrung-Tab sichtbar machen

Die vier UsageThrottle-Prozente waren nur per Gauge-Drag im Usage-Monitor
erreichbar und wurden im Settings-Modal unsichtbar durchgeschleift. Jetzt
read-only angezeigt plus Button in den Usage-Monitor. Der Button schliesst die
Settings absichtlich: Save() schreibt die beim Oeffnen gelesenen Throttle-Werte
zurueck und wuerde ein zwischenzeitliches Draggen ueberschreiben.
This commit is contained in:
mika kuns
2026-08-27 10:39:08 +02:00
parent 4464dc6ff1
commit 31d53b0033
5 changed files with 71 additions and 0 deletions
@@ -252,6 +252,18 @@
<TextBlock Text="{loc:Tr settings.general.autoContinueOnUsageLimitHint}"
Opacity="0.6" FontSize="12" TextWrapping="Wrap"/>
</StackPanel>
<!-- Throttle stages live on the usage-monitor gauges (drag + spinner per stage);
echoed read-only here so they aren't invisible on the tab that owns the gate. -->
<StackPanel Spacing="4">
<TextBlock Classes="field-label" Text="{loc:Tr settings.general.throttleStagesHeading}"/>
<TextBlock Text="{Binding ThrottleSummary}" Classes="meta"/>
<TextBlock Text="{loc:Tr settings.general.throttleStagesHint}"
Opacity="0.6" FontSize="12" TextWrapping="Wrap"/>
<Button Classes="btn" HorizontalAlignment="Left"
Content="{loc:Tr settings.general.openUsageMonitor}"
Command="{Binding OpenUsageMonitorCommand}"/>
</StackPanel>
</StackPanel>
</ScrollViewer>
</TabItem>
@@ -394,6 +406,22 @@
<TabItem Header="{loc:Tr settings.sidebar.categoryFiles}">
<ScrollViewer>
<StackPanel Spacing="12" Margin="0,8,0,0">
<!-- claude_bin from worker.config.json — saved on its own button, not the modal's
Save, because the worker owns that file rather than app_settings. -->
<StackPanel Spacing="6">
<TextBlock Classes="section-label" Text="{loc:Tr settings.files.cliSection}"/>
<TextBlock Classes="meta" Text="{loc:Tr settings.files.claudeBinHint}" TextWrapping="Wrap"/>
<Grid ColumnDefinitions="*,Auto" ColumnSpacing="8">
<TextBox Grid.Column="0" Text="{Binding Files.ClaudeBin, Mode=TwoWay}"
PlaceholderText="claude"/>
<Button Grid.Column="1" Classes="btn" Content="{loc:Tr settings.save}"
Command="{Binding Files.SaveClaudeBinCommand}"/>
</Grid>
<ctl:OperationIndicator Status="{Binding Files.ClaudeBinOp}"/>
<TextBlock Classes="path-mono" TextWrapping="Wrap"
Text="{Binding Files.ClaudeBinResolvedHint}"
IsVisible="{Binding Files.ClaudeBinResolvedHint, Converter={x:Static StringConverters.IsNotNullOrEmpty}}"/>
</StackPanel>
<StackPanel Spacing="6">
<TextBlock Classes="section-label" Text="{loc:Tr settings.files.agentsSection}"/>
<TextBlock Classes="meta" Text="{loc:Tr settings.files.agentsHint}"