워크스페이스 복원에 탐색기·메모장 상태와 적응형 실행 간격을 추가한다
- 파일 탐색기 현재 폴더 경로와 메모장 열린 파일 경로를 워크스페이스 스냅샷에 저장하고 복원 경로에 연결 - 브라우저/앱 공용 프로세스 명령줄 파서를 추가하고 패키지형 메모장 실행 fallback을 보강 - 복원 중 새 창 실행 사이에 CPU·메모리 부하 기반 적응형 지연과 설정 UI를 추가 - README와 DEVELOPMENT 개발 이력을 2026-04-15 17:41 (KST) 기준으로 갱신 - 검증: dotnet build src/AxCopilot/AxCopilot.csproj -c Release -v minimal -p:OutputPath=bin\\verify_workspace_app_restore\\ -p:IntermediateOutputPath=obj\\verify_workspace_app_restore\\ 경고 0 오류 0, dotnet test src/AxCopilot.Tests/AxCopilot.Tests.csproj -c Release -v minimal --filter WorkspaceHandlerTests|ContextManagerTests|SettingsServiceTests -p:OutputPath=bin\\verify_workspace_app_restore_tests\\ -p:IntermediateOutputPath=obj\\verify_workspace_app_restore_tests\\ 54개 통과
This commit is contained in:
@@ -3076,6 +3076,75 @@
|
||||
</Grid>
|
||||
</Border>
|
||||
|
||||
<Border Style="{StaticResource SettingsRow}">
|
||||
<Grid>
|
||||
<StackPanel HorizontalAlignment="Left">
|
||||
<TextBlock Style="{StaticResource RowLabel}" Text="복원 속도 자동 조절"/>
|
||||
<TextBlock Style="{StaticResource RowHint}"
|
||||
Text="워크스페이스 복원 시 CPU·메모리 상태를 보고 다음 창 실행 간격을 늘리거나 줄입니다. 느린 PC에서 한꺼번에 창이 뜨며 버벅이는 상황을 줄이는 용도입니다."/>
|
||||
</StackPanel>
|
||||
<CheckBox Style="{StaticResource ToggleSwitch}"
|
||||
HorizontalAlignment="Right" VerticalAlignment="Center"
|
||||
IsChecked="{Binding EnableAdaptiveWorkspaceRestoreThrottle, Mode=TwoWay}"/>
|
||||
</Grid>
|
||||
</Border>
|
||||
|
||||
<Border Style="{StaticResource SettingsRow}">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*"/>
|
||||
<ColumnDefinition Width="140"/>
|
||||
<ColumnDefinition Width="54"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<StackPanel Grid.Column="0" HorizontalAlignment="Left" Margin="0,0,18,0">
|
||||
<TextBlock Style="{StaticResource RowLabel}" Text="복원 기본 간격"/>
|
||||
<TextBlock Style="{StaticResource RowHint}"
|
||||
Text="새 창을 하나 띄운 뒤 다음 창을 실행하기 전 최소 대기 시간입니다."/>
|
||||
</StackPanel>
|
||||
<Slider Grid.Column="1"
|
||||
Minimum="0" Maximum="1000"
|
||||
TickFrequency="50" IsSnapToTickEnabled="True"
|
||||
VerticalAlignment="Center"
|
||||
Value="{Binding WorkspaceRestoreBaseDelayMs, Mode=TwoWay}"/>
|
||||
<Border Grid.Column="2" Width="64" Height="28" CornerRadius="6"
|
||||
Background="{DynamicResource ItemHoverBackground}"
|
||||
VerticalAlignment="Center" HorizontalAlignment="Right">
|
||||
<TextBlock Text="{Binding WorkspaceRestoreBaseDelayMs, StringFormat={}{0}ms}"
|
||||
FontSize="12" FontWeight="SemiBold"
|
||||
Foreground="{DynamicResource AccentColor}"
|
||||
HorizontalAlignment="Center" VerticalAlignment="Center"/>
|
||||
</Border>
|
||||
</Grid>
|
||||
</Border>
|
||||
|
||||
<Border Style="{StaticResource SettingsRow}">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*"/>
|
||||
<ColumnDefinition Width="140"/>
|
||||
<ColumnDefinition Width="54"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<StackPanel Grid.Column="0" HorizontalAlignment="Left" Margin="0,0,18,0">
|
||||
<TextBlock Style="{StaticResource RowLabel}" Text="복원 최대 간격"/>
|
||||
<TextBlock Style="{StaticResource RowHint}"
|
||||
Text="시스템 부하가 높을 때 늘어날 수 있는 최대 대기 시간입니다."/>
|
||||
</StackPanel>
|
||||
<Slider Grid.Column="1"
|
||||
Minimum="200" Maximum="3000"
|
||||
TickFrequency="100" IsSnapToTickEnabled="True"
|
||||
VerticalAlignment="Center"
|
||||
Value="{Binding WorkspaceRestoreMaxDelayMs, Mode=TwoWay}"/>
|
||||
<Border Grid.Column="2" Width="64" Height="28" CornerRadius="6"
|
||||
Background="{DynamicResource ItemHoverBackground}"
|
||||
VerticalAlignment="Center" HorizontalAlignment="Right">
|
||||
<TextBlock Text="{Binding WorkspaceRestoreMaxDelayMs, StringFormat={}{0}ms}"
|
||||
FontSize="12" FontWeight="SemiBold"
|
||||
Foreground="{DynamicResource AccentColor}"
|
||||
HorizontalAlignment="Center" VerticalAlignment="Center"/>
|
||||
</Border>
|
||||
</Grid>
|
||||
</Border>
|
||||
|
||||
<!-- ── 기록 기능 ── -->
|
||||
<TextBlock Style="{StaticResource SectionHeader}" Text="기록 기능"/>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user