테마 글로우 설정의 실시간 반영 누락 수정
- 런처가 SettingsChanged 이벤트를 직접 받아 테두리, 아이콘 애니메이션, 무지개 글로우, 선택 글로우를 즉시 다시 적용하도록 보강함 - AX Agent는 저장된 설정을 다시 읽을 때 스트리밍 중 입력창 글로우 설정도 즉시 반영하도록 RefreshFromSavedSettings 흐름을 정리함 - README와 DEVELOPMENT 문서를 2026-04-06 19:02 (KST) 기준으로 갱신하고 Release 빌드에서 경고 0 / 오류 0을 확인함
This commit is contained in:
@@ -9914,6 +9914,10 @@ public partial class ChatWindow : Window
|
||||
BuildBottomBar();
|
||||
RefreshDraftQueueUi();
|
||||
RefreshConversationList();
|
||||
if (_isStreaming && _settings.Settings.Llm.EnableChatRainbowGlow)
|
||||
PlayRainbowGlow();
|
||||
else
|
||||
StopRainbowGlow();
|
||||
}, DispatcherPriority.Input);
|
||||
}
|
||||
|
||||
|
||||
@@ -80,6 +80,9 @@ public partial class LauncherWindow : Window
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
if (CurrentApp?.SettingsService != null)
|
||||
CurrentApp.SettingsService.SettingsChanged += OnSettingsChanged;
|
||||
}
|
||||
|
||||
private void Window_Loaded(object sender, RoutedEventArgs e)
|
||||
@@ -175,7 +178,20 @@ public partial class LauncherWindow : Window
|
||||
}
|
||||
});
|
||||
|
||||
// 런처 테두리 표시 설정
|
||||
ApplyVisualSettings();
|
||||
}
|
||||
|
||||
private void OnSettingsChanged(object? sender, EventArgs e)
|
||||
{
|
||||
Dispatcher.BeginInvoke(() =>
|
||||
{
|
||||
ApplyTheme();
|
||||
ApplyVisualSettings();
|
||||
}, System.Windows.Threading.DispatcherPriority.Input);
|
||||
}
|
||||
|
||||
private void ApplyVisualSettings()
|
||||
{
|
||||
if (_vm.ShowLauncherBorder)
|
||||
{
|
||||
MainBorder.BorderThickness = new Thickness(1);
|
||||
@@ -187,12 +203,12 @@ public partial class LauncherWindow : Window
|
||||
MainBorder.BorderBrush = System.Windows.Media.Brushes.Transparent;
|
||||
}
|
||||
|
||||
if (_vm.EnableIconAnimation)
|
||||
if (_vm.EnableIconAnimation && IsVisible)
|
||||
ApplyRandomIconAnimation();
|
||||
else
|
||||
ResetIconAnimation();
|
||||
|
||||
if (_vm.EnableRainbowGlow)
|
||||
if (_vm.EnableRainbowGlow && IsVisible)
|
||||
StartRainbowGlow();
|
||||
else
|
||||
StopRainbowGlow();
|
||||
@@ -1663,6 +1679,14 @@ public partial class LauncherWindow : Window
|
||||
if (_vm.CloseOnFocusLost) Hide();
|
||||
}
|
||||
|
||||
protected override void OnClosed(EventArgs e)
|
||||
{
|
||||
if (CurrentApp?.SettingsService != null)
|
||||
CurrentApp.SettingsService.SettingsChanged -= OnSettingsChanged;
|
||||
|
||||
base.OnClosed(e);
|
||||
}
|
||||
|
||||
private void Window_LocationChanged(object sender, EventArgs e)
|
||||
{
|
||||
UpdateRememberedPositionCache();
|
||||
|
||||
Reference in New Issue
Block a user