Skip to content

Commit 39f171f

Browse files
authored
Feature: Moved widget settings to preferences (#10931)
1 parent 86dcfa3 commit 39f171f

File tree

16 files changed

+197
-203
lines changed

16 files changed

+197
-203
lines changed

src/Files.App/Helpers/WidgetsHelpers.cs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@ namespace Files.App.Helpers
77
{
88
public static class WidgetsHelpers
99
{
10-
public static TWidget? TryGetWidget<TWidget>(IAppearanceSettingsService appearanceSettingsService, WidgetsListControlViewModel widgetsViewModel, out bool shouldReload, TWidget? defaultValue = default) where TWidget : IWidgetItemModel, new()
10+
public static TWidget? TryGetWidget<TWidget>(IPreferencesSettingsService preferencesSettingsService, WidgetsListControlViewModel widgetsViewModel, out bool shouldReload, TWidget? defaultValue = default) where TWidget : IWidgetItemModel, new()
1111
{
1212
bool canAddWidget = widgetsViewModel.CanAddWidget(typeof(TWidget).Name);
13-
bool isWidgetSettingEnabled = TryGetIsWidgetSettingEnabled<TWidget>(appearanceSettingsService);
13+
bool isWidgetSettingEnabled = TryGetIsWidgetSettingEnabled<TWidget>(preferencesSettingsService);
1414

1515
if (canAddWidget && isWidgetSettingEnabled)
1616
{
@@ -35,23 +35,23 @@ public static class WidgetsHelpers
3535
return (defaultValue);
3636
}
3737

38-
public static bool TryGetIsWidgetSettingEnabled<TWidget>(IAppearanceSettingsService appearanceSettingsService) where TWidget : IWidgetItemModel
38+
public static bool TryGetIsWidgetSettingEnabled<TWidget>(IPreferencesSettingsService preferencesSettingsService) where TWidget : IWidgetItemModel
3939
{
4040
if (typeof(TWidget) == typeof(FolderWidget))
4141
{
42-
return appearanceSettingsService.ShowFoldersWidget;
42+
return preferencesSettingsService.ShowFoldersWidget;
4343
}
4444
if (typeof(TWidget) == typeof(DrivesWidget))
4545
{
46-
return appearanceSettingsService.ShowDrivesWidget;
46+
return preferencesSettingsService.ShowDrivesWidget;
4747
}
4848
if (typeof(TWidget) == typeof(BundlesWidget))
4949
{
50-
return appearanceSettingsService.ShowBundlesWidget;
50+
return preferencesSettingsService.ShowBundlesWidget;
5151
}
5252
if (typeof(TWidget) == typeof(RecentFilesWidget))
5353
{
54-
return appearanceSettingsService.ShowRecentFilesWidget;
54+
return preferencesSettingsService.ShowRecentFilesWidget;
5555
}
5656

5757
// A custom widget it is - TWidget implements ICustomWidgetItemModel

src/Files.App/ServicesImplementation/Settings/AppearanceSettingsService.cs

Lines changed: 0 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -80,53 +80,6 @@ public bool UseCompactStyles
8080
get => Get(false);
8181
set => Set(value);
8282
}
83-
public bool ShowFoldersWidget
84-
{
85-
get => Get(true);
86-
set => Set(value);
87-
}
88-
89-
public bool ShowRecentFilesWidget
90-
{
91-
get => Get(true);
92-
set => Set(value);
93-
}
94-
95-
public bool ShowDrivesWidget
96-
{
97-
get => Get(true);
98-
set => Set(value);
99-
}
100-
101-
public bool ShowBundlesWidget
102-
{
103-
get => Get(false);
104-
set => Set(value);
105-
}
106-
107-
public bool FoldersWidgetExpanded
108-
{
109-
get => Get(true);
110-
set => Set(value);
111-
}
112-
113-
public bool RecentFilesWidgetExpanded
114-
{
115-
get => Get(true);
116-
set => Set(value);
117-
}
118-
119-
public bool DrivesWidgetExpanded
120-
{
121-
get => Get(true);
122-
set => Set(value);
123-
}
124-
125-
public bool BundlesWidgetExpanded
126-
{
127-
get => Get(true);
128-
set => Set(value);
129-
}
13083

13184
/// <inheritdoc/>
13285
public String AppThemeBackgroundColor
@@ -175,10 +128,6 @@ protected override void RaiseOnSettingChangedEvent(object sender, SettingChanged
175128
case nameof(ShowWslSection):
176129
case nameof(ShowFileTagsSection):
177130
case nameof(UseCompactStyles):
178-
case nameof(ShowFoldersWidget):
179-
case nameof(ShowRecentFilesWidget):
180-
case nameof(ShowDrivesWidget):
181-
case nameof(ShowBundlesWidget):
182131
case nameof(AppThemeBackgroundColor):
183132
case nameof(AppThemeAddressBarBackgroundColor):
184133
case nameof(AppThemeSidebarBackgroundColor):

src/Files.App/ServicesImplementation/Settings/PreferencesSettingsService.cs

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,55 @@ public bool AlwaysOpenDualPaneInNewTab
104104
get => Get(false);
105105
set => Set(value);
106106
}
107+
108+
public bool ShowFoldersWidget
109+
{
110+
get => Get(true);
111+
set => Set(value);
112+
}
113+
114+
public bool ShowRecentFilesWidget
115+
{
116+
get => Get(true);
117+
set => Set(value);
118+
}
119+
120+
public bool ShowDrivesWidget
121+
{
122+
get => Get(true);
123+
set => Set(value);
124+
}
125+
126+
public bool ShowBundlesWidget
127+
{
128+
get => Get(false);
129+
set => Set(value);
130+
}
131+
132+
public bool FoldersWidgetExpanded
133+
{
134+
get => Get(true);
135+
set => Set(value);
136+
}
137+
138+
public bool RecentFilesWidgetExpanded
139+
{
140+
get => Get(true);
141+
set => Set(value);
142+
}
143+
144+
public bool DrivesWidgetExpanded
145+
{
146+
get => Get(true);
147+
set => Set(value);
148+
}
149+
150+
public bool BundlesWidgetExpanded
151+
{
152+
get => Get(true);
153+
set => Set(value);
154+
}
155+
107156
protected override void RaiseOnSettingChangedEvent(object sender, SettingChangedEventArgs e)
108157
{
109158
switch (e.SettingName)
@@ -118,6 +167,14 @@ protected override void RaiseOnSettingChangedEvent(object sender, SettingChanged
118167
case nameof(AlwaysOpenNewInstance):
119168
case nameof(IsDualPaneEnabled):
120169
case nameof(AlwaysOpenDualPaneInNewTab):
170+
case nameof(ShowFoldersWidget):
171+
case nameof(ShowRecentFilesWidget):
172+
case nameof(ShowDrivesWidget):
173+
case nameof(ShowBundlesWidget):
174+
case nameof(FoldersWidgetExpanded):
175+
case nameof(RecentFilesWidgetExpanded):
176+
case nameof(BundlesWidgetExpanded):
177+
case nameof(DrivesWidgetExpanded):
121178
Analytics.TrackEvent($"Set {e.SettingName} to {e.NewValue}");
122179
break;
123180
}

src/Files.App/Strings/en-US/Resources.resw

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1654,18 +1654,6 @@
16541654
<data name="SettingsPreferencesOpenFoldersNewTab.Title" xml:space="preserve">
16551655
<value>Open folders in new tab</value>
16561656
</data>
1657-
<data name="ShowBundlesWidget" xml:space="preserve">
1658-
<value>Show Bundles widget</value>
1659-
</data>
1660-
<data name="ShowDrivesWidget" xml:space="preserve">
1661-
<value>Show Drives widget</value>
1662-
</data>
1663-
<data name="ShowFolderWidget" xml:space="preserve">
1664-
<value>Show Folders widget</value>
1665-
</data>
1666-
<data name="ShowRecentFilesWidget" xml:space="preserve">
1667-
<value>Show Recent Files widget</value>
1668-
</data>
16691657
<data name="SearchUnindexedItemsLabel.Text" xml:space="preserve">
16701658
<value>Didn't find what you're looking for?</value>
16711659
</data>

src/Files.App/UserControls/Widgets/BundlesWidget.xaml.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ public BundlesViewModel ViewModel
2727

2828
public string WidgetHeader => "Bundles".GetLocalizedResource();
2929

30-
public bool IsWidgetSettingEnabled => UserSettingsService.AppearanceSettingsService.ShowBundlesWidget;
30+
public bool IsWidgetSettingEnabled => UserSettingsService.PreferencesSettingsService.ShowBundlesWidget;
3131

3232
public BundlesWidget()
3333
{

src/Files.App/UserControls/Widgets/DrivesWidget.xaml.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ public IShellPage AppInstance
103103

104104
public string WidgetHeader => "Drives".GetLocalizedResource();
105105

106-
public bool IsWidgetSettingEnabled => UserSettingsService.AppearanceSettingsService.ShowDrivesWidget;
106+
public bool IsWidgetSettingEnabled => UserSettingsService.PreferencesSettingsService.ShowDrivesWidget;
107107

108108
public DrivesWidget()
109109
{

src/Files.App/UserControls/Widgets/FolderWidget.xaml.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ public FolderWidget()
118118

119119
public event PropertyChangedEventHandler PropertyChanged;
120120

121-
public bool IsWidgetSettingEnabled => UserSettingsService.AppearanceSettingsService.ShowFoldersWidget;
121+
public bool IsWidgetSettingEnabled => UserSettingsService.PreferencesSettingsService.ShowFoldersWidget;
122122

123123
public ICommand LibraryCardCommand { get; }
124124

src/Files.App/UserControls/Widgets/RecentFilesWidget.xaml.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ public sealed partial class RecentFilesWidget : UserControl, IWidgetItemModel, I
4545

4646
public string WidgetHeader => "RecentFiles".GetLocalizedResource();
4747

48-
public bool IsWidgetSettingEnabled => UserSettingsService.AppearanceSettingsService.ShowRecentFilesWidget;
48+
public bool IsWidgetSettingEnabled => UserSettingsService.PreferencesSettingsService.ShowRecentFilesWidget;
4949

5050
private Visibility emptyRecentsTextVisibility = Visibility.Collapsed;
5151
public Visibility EmptyRecentsTextVisibility

src/Files.App/ViewModels/SettingsViewModels/AppearanceViewModel.cs

Lines changed: 0 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -218,46 +218,6 @@ public bool ShowFileTagsSection
218218
}
219219
}
220220

221-
public bool ShowFoldersWidget
222-
{
223-
get => UserSettingsService.AppearanceSettingsService.ShowFoldersWidget;
224-
set
225-
{
226-
if (value != UserSettingsService.AppearanceSettingsService.ShowFoldersWidget)
227-
UserSettingsService.AppearanceSettingsService.ShowFoldersWidget = value;
228-
}
229-
}
230-
231-
public bool ShowDrivesWidget
232-
{
233-
get => UserSettingsService.AppearanceSettingsService.ShowDrivesWidget;
234-
set
235-
{
236-
if (value != UserSettingsService.AppearanceSettingsService.ShowDrivesWidget)
237-
UserSettingsService.AppearanceSettingsService.ShowDrivesWidget = value;
238-
}
239-
}
240-
241-
public bool ShowBundlesWidget
242-
{
243-
get => UserSettingsService.AppearanceSettingsService.ShowBundlesWidget;
244-
set
245-
{
246-
if (value != UserSettingsService.AppearanceSettingsService.ShowBundlesWidget)
247-
UserSettingsService.AppearanceSettingsService.ShowBundlesWidget = value;
248-
}
249-
}
250-
251-
public bool ShowRecentFilesWidget
252-
{
253-
get => UserSettingsService.AppearanceSettingsService.ShowRecentFilesWidget;
254-
set
255-
{
256-
if (value != UserSettingsService.AppearanceSettingsService.ShowRecentFilesWidget)
257-
UserSettingsService.AppearanceSettingsService.ShowRecentFilesWidget = value;
258-
}
259-
}
260-
261221
public Color AppThemeBackgroundColor
262222
{
263223
get => ColorHelper.ToColor(UserSettingsService.AppearanceSettingsService.AppThemeBackgroundColor);

src/Files.App/ViewModels/SettingsViewModels/PreferencesViewModel.cs

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -514,6 +514,46 @@ public bool SearchUnindexedItems
514514
}
515515
}
516516

517+
public bool ShowFoldersWidget
518+
{
519+
get => UserSettingsService.PreferencesSettingsService.ShowFoldersWidget;
520+
set
521+
{
522+
if (value != UserSettingsService.PreferencesSettingsService.ShowFoldersWidget)
523+
UserSettingsService.PreferencesSettingsService.ShowFoldersWidget = value;
524+
}
525+
}
526+
527+
public bool ShowDrivesWidget
528+
{
529+
get => UserSettingsService.PreferencesSettingsService.ShowDrivesWidget;
530+
set
531+
{
532+
if (value != UserSettingsService.PreferencesSettingsService.ShowDrivesWidget)
533+
UserSettingsService.PreferencesSettingsService.ShowDrivesWidget = value;
534+
}
535+
}
536+
537+
public bool ShowBundlesWidget
538+
{
539+
get => UserSettingsService.PreferencesSettingsService.ShowBundlesWidget;
540+
set
541+
{
542+
if (value != UserSettingsService.PreferencesSettingsService.ShowBundlesWidget)
543+
UserSettingsService.PreferencesSettingsService.ShowBundlesWidget = value;
544+
}
545+
}
546+
547+
public bool ShowRecentFilesWidget
548+
{
549+
get => UserSettingsService.PreferencesSettingsService.ShowRecentFilesWidget;
550+
set
551+
{
552+
if (value != UserSettingsService.PreferencesSettingsService.ShowRecentFilesWidget)
553+
UserSettingsService.PreferencesSettingsService.ShowRecentFilesWidget = value;
554+
}
555+
}
556+
517557
public void Dispose()
518558
{
519559
if (!disposed)

0 commit comments

Comments
 (0)