Skip to content

Commit 4372f59

Browse files
committed
微调外观设置
1 parent 414ffd8 commit 4372f59

File tree

6 files changed

+72
-44
lines changed

6 files changed

+72
-44
lines changed

Natsurainko.FluentLauncher/App.xaml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,6 @@
7373
<Thickness x:Key="PageMarginWithInstallWizardPageStackPanel">10,20,10,0</Thickness>
7474

7575
<CornerRadius x:Key="NavigationViewContentGridCornerRadius">0</CornerRadius>
76-
<Thickness x:Key="BackgroundBorder">0,1,0,0</Thickness>
7776
<CornerRadius x:Key="NavigationViewOverlayCornerRadius">8,8,8,8</CornerRadius>
7877

7978
<converters:JavaIconConverter x:Key="JavaIconConverter" />

Natsurainko.FluentLauncher/Services/Settings/SettingsService.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ public partial class SettingsService : SettingsContainer
113113

114114
#region Appearance Background Settings
115115

116-
[SettingItem(Default = 1, Converter = typeof(JsonStringConverter<int>))]
116+
[SettingItem(Default = 0, Converter = typeof(JsonStringConverter<int>))]
117117
public partial int BackgroundMode { get; set; }
118118

119119
[SettingItem(Default = 0, Converter = typeof(JsonStringConverter<int>))]
@@ -135,7 +135,7 @@ public partial class SettingsService : SettingsContainer
135135

136136
#region Appearance Mask Settings
137137

138-
[SettingItem(Default = true, Converter = typeof(JsonStringConverter<bool>))]
138+
[SettingItem(Default = false, Converter = typeof(JsonStringConverter<bool>))]
139139
public partial bool UseBackgroundMask { get; set; }
140140

141141
#endregion

Natsurainko.FluentLauncher/Services/UI/AppearanceService.cs

Lines changed: 27 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ internal class AppearanceService
1616
{
1717
private readonly SettingsService _settingsService;
1818

19-
public event EventHandler? BackgroundReloaded;
19+
public event EventHandler<int>? BackgroundReloaded;
2020

2121
public AppearanceService(SettingsService settingsService)
2222
{
@@ -106,18 +106,18 @@ public void RegisterWindow(Window window)
106106
break;
107107
}
108108

109-
if (_settingsService.BackgroundMode == 3 || _settingsService.BackgroundMode == 2)
110-
{
111-
Set(control.Resources, "NavigationViewContentBackground", new SolidColorBrush(Colors.Transparent));
112-
Set(control.Resources, "NavigationViewContentGridBorderThickness", new Thickness(0));
113-
Set(control.Resources, "BackgroundBorder", new Thickness(0));
114-
}
115-
else
116-
{
117-
Set(control.Resources, "NavigationViewContentBackground", App.Current.Resources["LayerFillColorDefaultBrush"]);
118-
Set(control.Resources, "NavigationViewContentGridBorderThickness", new Thickness(1, 1, 0, 0));
119-
Set(control.Resources, "BackgroundBorder", new Thickness(0, 1, 0, 0));
120-
}
109+
//if (_settingsService.BackgroundMode == 3 || _settingsService.BackgroundMode == 2)
110+
//{
111+
// Set(control.Resources, "NavigationViewContentBackground", new SolidColorBrush(Colors.Transparent));
112+
// Set(control.Resources, "NavigationViewContentGridBorderThickness", new Thickness(0));
113+
// Set(control.Resources, "BackgroundBorder", new Thickness(0));
114+
//}
115+
//else
116+
//{
117+
// Set(control.Resources, "NavigationViewContentBackground", App.Current.Resources["LayerFillColorDefaultBrush"]);
118+
// Set(control.Resources, "NavigationViewContentGridBorderThickness", new Thickness(1, 1, 0, 0));
119+
// Set(control.Resources, "BackgroundBorder", new Thickness(0, 1, 0, 0));
120+
//}
121121
}
122122

123123
public void RegisterApp(App app)
@@ -213,20 +213,20 @@ private async void BackgroundModeChanged(global::FluentLauncher.Infra.Settings.S
213213
break;
214214
}
215215

216-
if (backgroundMode == 3 || backgroundMode == 2)
217-
{
218-
Set(control.Resources, "NavigationViewContentBackground", new SolidColorBrush(Colors.Transparent));
219-
Set(control.Resources, "NavigationViewContentGridBorderThickness", new Thickness(0));
220-
Set(control.Resources, "BackgroundBorder", new Thickness(0));
221-
}
222-
else
223-
{
224-
Set(control.Resources, "NavigationViewContentBackground", App.Current.Resources["LayerFillColorDefaultBrush"]);
225-
Set(control.Resources, "NavigationViewContentGridBorderThickness", new Thickness(1, 1, 0, 0));
226-
Set(control.Resources, "BackgroundBorder", new Thickness(0, 1, 0, 0));
227-
}
228-
229-
BackgroundReloaded?.Invoke(this, new());
216+
//if (backgroundMode == 3 || backgroundMode == 2)
217+
//{
218+
// Set(control.Resources, "NavigationViewContentBackground", new SolidColorBrush(Colors.Transparent));
219+
// Set(control.Resources, "NavigationViewContentGridBorderThickness", new Thickness(0));
220+
// Set(control.Resources, "BackgroundBorder", new Thickness(0));
221+
//}
222+
//else
223+
//{
224+
// Set(control.Resources, "NavigationViewContentBackground", App.Current.Resources["LayerFillColorDefaultBrush"]);
225+
// Set(control.Resources, "NavigationViewContentGridBorderThickness", new Thickness(1, 1, 0, 0));
226+
// Set(control.Resources, "BackgroundBorder", new Thickness(0, 1, 0, 0));
227+
//}
228+
229+
BackgroundReloaded?.Invoke(this, backgroundMode);
230230
}
231231

232232
private void PropertyChanged(global::FluentLauncher.Infra.Settings.SettingsContainer sender, global::FluentLauncher.Infra.Settings.SettingChangedEventArgs e)

Natsurainko.FluentLauncher/Views/Home/HomePage.xaml.cs

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -34,13 +34,14 @@ private void Page_Loaded(object sender, RoutedEventArgs e)
3434
: new SolidColorBrush(Color.FromArgb(255, 255, 255, 255));
3535

3636
LaunchButton.Translation += new System.Numerics.Vector3(0, 0, 16);
37-
InstanceSelectorArea.Translation += new System.Numerics.Vector3(0, 0, 16);
38-
AccountSelectorArea.Translation += new System.Numerics.Vector3(0, 0, 16);
39-
LaunchingInfoArea.Translation += new System.Numerics.Vector3(0, 0, 16);
4037

41-
InstanceSelectorArea.Background = themeDictionaries["NavigationViewUnfoldedPaneBackground"] as AcrylicBrush;
42-
AccountSelectorArea.Background = themeDictionaries["NavigationViewUnfoldedPaneBackground"] as AcrylicBrush;
43-
LaunchingInfoArea.Background = themeDictionaries["NavigationViewUnfoldedPaneBackground"] as AcrylicBrush;
38+
foreach (var border in new Border[] { InstanceSelectorArea, AccountSelectorArea, LaunchingInfoArea })
39+
{
40+
border.Translation += new System.Numerics.Vector3(0, 0, 16);
41+
border.Background = themeDictionaries["NavigationViewUnfoldedPaneBackground"] as AcrylicBrush;
42+
border.BorderThickness = new Thickness(1);
43+
border.BorderBrush = themeDictionaries["ButtonBorderBrushPointerOver"] as Brush;
44+
}
4445

4546
AccountSelectorButton.Foreground = foregroundBrush;
4647

@@ -52,9 +53,12 @@ private void Page_Loaded(object sender, RoutedEventArgs e)
5253
? new SolidColorBrush(Color.FromArgb(255, 26, 26, 26))
5354
: new SolidColorBrush(Color.FromArgb(255, 255, 255, 255));
5455

55-
InstanceSelectorArea.Background = themeDictionaries["NavigationViewUnfoldedPaneBackground"] as AcrylicBrush;
56-
AccountSelectorArea.Background = themeDictionaries["NavigationViewUnfoldedPaneBackground"] as AcrylicBrush;
57-
LaunchingInfoArea.Background = themeDictionaries["NavigationViewUnfoldedPaneBackground"] as AcrylicBrush;
56+
foreach (var border in new Border[] { InstanceSelectorArea, AccountSelectorArea, LaunchingInfoArea })
57+
{
58+
border.Background = themeDictionaries["NavigationViewUnfoldedPaneBackground"] as AcrylicBrush;
59+
border.BorderThickness = new Thickness(1);
60+
border.BorderBrush = themeDictionaries["ButtonBorderBrushPointerOver"] as Brush;
61+
}
5862

5963
AccountSelectorButton.Foreground = foregroundBrush;
6064
};

Natsurainko.FluentLauncher/Views/ShellPage.xaml

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -230,13 +230,23 @@
230230
HorizontalAlignment="Left"
231231
VerticalAlignment="Stretch"
232232
Background="{ThemeResource NavigationViewUnfoldedPaneBackground}"
233-
BorderBrush="{ThemeResource AccentControlElevationBorderBrush}"
234-
BorderThickness="0"
233+
BorderBrush="{ThemeResource ButtonBorderBrushPointerOver}"
234+
BorderThickness="1"
235235
CornerRadius="0,8,8,0"
236236
Opacity="1"
237237
Shadow="{ThemeResource SharedShadow}"
238238
Translation="-48,0,32" />
239239

240+
<Border
241+
x:Name="MicaFrameBackground"
242+
Grid.RowSpan="2"
243+
Margin="48,0,0,0"
244+
HorizontalAlignment="Stretch"
245+
VerticalAlignment="Stretch"
246+
Background="{ThemeResource NavigationViewContentBackground}"
247+
BorderBrush="{ThemeResource NavigationViewContentGridBorderBrush}"
248+
BorderThickness="1,0,0,0" />
249+
240250
<Border
241251
x:Name="TopNavViewPaneBackground"
242252
Width="89"
@@ -245,8 +255,8 @@
245255
HorizontalAlignment="Left"
246256
VerticalAlignment="Top"
247257
Background="{ThemeResource NavigationViewUnfoldedPaneBackground}"
248-
BorderBrush="{ThemeResource AccentControlElevationBorderBrush}"
249-
BorderThickness="0"
258+
BorderBrush="{ThemeResource ButtonBorderBrushPointerOver}"
259+
BorderThickness="1"
250260
CornerRadius="8"
251261
Opacity="1"
252262
Shadow="{ThemeResource SharedShadow}"
@@ -409,6 +419,8 @@
409419
<Border
410420
x:Name="SearchBoxAreaBackgroundBorder"
411421
Background="{ThemeResource NavigationViewUnfoldedPaneBackground}"
422+
BorderBrush="{ThemeResource ButtonBorderBrushPointerOver}"
423+
BorderThickness="1"
412424
CornerRadius="8" />
413425

414426
<AutoSuggestBox

Natsurainko.FluentLauncher/Views/ShellPage.xaml.cs

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,9 @@ private void Page_SizeChanged(object sender, SizeChangedEventArgs e)
7575

7676
NavigationViewControl.PaneDisplayMode = NavigationViewPaneDisplayMode.LeftMinimal;
7777
TopNavViewPaneToggleButtonsBorder.Width = 84;
78+
79+
MicaFrameBackground.Margin = new Thickness(0, 48, 0, 0);
80+
MicaFrameBackground.BorderThickness = new Thickness(0, 1, 0, 0);
7881
}
7982
else
8083
{
@@ -85,6 +88,9 @@ private void Page_SizeChanged(object sender, SizeChangedEventArgs e)
8588

8689
NavigationViewControl.PaneDisplayMode = NavigationViewPaneDisplayMode.LeftCompact;
8790
TopNavViewPaneToggleButtonsBorder.Width = 48;
91+
92+
MicaFrameBackground.Margin = new Thickness(48, 0, 0, 0);
93+
MicaFrameBackground.BorderThickness = new Thickness(1, 0, 0, 0);
8894
}
8995

9096
UpdateSearchBoxArea();
@@ -211,7 +217,11 @@ private void AutoSuggestBox_Loaded(object sender, RoutedEventArgs e)
211217
#endregion
212218

213219
#region Services Events
214-
private void BackgroundReloaded(object? sender, EventArgs e) => BlurBorder.Opacity = (_settings.BackgroundMode == 3) ? 1 : 0;
220+
private void BackgroundReloaded(object? sender, int backgroundMode)
221+
{
222+
BlurBorder.Opacity = (_settings.BackgroundMode == 3) ? 1 : 0;
223+
MicaFrameBackground.Visibility = (backgroundMode == 0 && !_settings.UseBackgroundMask) ? Visibility.Visible : Visibility.Collapsed;
224+
}
215225

216226
private void UseBackgroundMaskChanged(SettingsContainer sender, SettingChangedEventArgs e)
217227
{
@@ -221,6 +231,7 @@ private void UseBackgroundMaskChanged(SettingsContainer sender, SettingChangedEv
221231
_settings.UseBackgroundMask ? Visibility.Visible : Visibility.Collapsed;
222232

223233
SearchBoxAreaGrid.Shadow = _settings.UseBackgroundMask ? SharedShadow : null;
234+
MicaFrameBackground.Visibility = (_settings.BackgroundMode == 0 && !_settings.UseBackgroundMask) ? Visibility.Visible : Visibility.Collapsed;
224235
}
225236

226237
#endregion
@@ -235,6 +246,8 @@ void ConfigurePage()
235246
SearchBoxAreaBackgroundBorder.Visibility =
236247
_settings.UseBackgroundMask ? Visibility.Visible : Visibility.Collapsed;
237248

249+
MicaFrameBackground.Visibility = (_settings.BackgroundMode == 0 && !_settings.UseBackgroundMask) ? Visibility.Visible : Visibility.Collapsed;
250+
238251
BlurBorder.OpacityTransition = new ScalarTransition()
239252
{
240253
Duration = TimeSpan.FromMilliseconds(150)

0 commit comments

Comments
 (0)