Code quality

This commit is contained in:
01Dri 2025-05-25 16:05:26 -03:00
parent 589e37a646
commit bc2648c216
2 changed files with 14 additions and 13 deletions

View file

@ -383,14 +383,14 @@ namespace Flow.Launcher.Plugin.Explorer.ViewModels
return; return;
} }
var quickAccessLinkSettings = new QuickAccessLinkSettings(Settings,SelectedQuickAccessLink); var quickAccessLinkSettings = new QuickAccessLinkSettings(Settings.QuickAccessLinks,SelectedQuickAccessLink);
quickAccessLinkSettings.ShowDialog(); quickAccessLinkSettings.ShowDialog();
} }
[RelayCommand] [RelayCommand]
private void AddQuickAccessLink(object commandParameter) private void AddQuickAccessLink(object commandParameter)
{ {
var quickAccessLinkSettings = new QuickAccessLinkSettings(Settings); var quickAccessLinkSettings = new QuickAccessLinkSettings(Settings.QuickAccessLinks);
quickAccessLinkSettings.ShowDialog(); quickAccessLinkSettings.ShowDialog();
} }

View file

@ -1,5 +1,6 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.ComponentModel; using System.ComponentModel;
using System.Linq; using System.Linq;
using System.Runtime.CompilerServices; using System.Runtime.CompilerServices;
@ -53,20 +54,21 @@ public partial class QuickAccessLinkSettings : INotifyPropertyChanged
private bool IsEdit { get; set; } private bool IsEdit { get; set; }
[CanBeNull] private AccessLink SelectedAccessLink { get; set; } [CanBeNull] private AccessLink SelectedAccessLink { get; set; }
private Settings Settings { get; } public ObservableCollection<AccessLink> QuickAccessLinks { get; set; }
public QuickAccessLinkSettings(Settings settings)
public QuickAccessLinkSettings(ObservableCollection<AccessLink> quickAccessLinks)
{ {
Settings = settings; QuickAccessLinks = quickAccessLinks;
InitializeComponent(); InitializeComponent();
} }
public QuickAccessLinkSettings(Settings settings,AccessLink selectedAccessLink) public QuickAccessLinkSettings(ObservableCollection<AccessLink> quickAccessLinks,AccessLink selectedAccessLink)
{ {
IsEdit = true; IsEdit = true;
_selectedName = selectedAccessLink.Name; _selectedName = selectedAccessLink.Name;
_selectedPath = selectedAccessLink.Path; _selectedPath = selectedAccessLink.Path;
SelectedAccessLink = selectedAccessLink; SelectedAccessLink = selectedAccessLink;
Settings = settings; QuickAccessLinks = quickAccessLinks;
InitializeComponent(); InitializeComponent();
} }
@ -88,7 +90,7 @@ public partial class QuickAccessLinkSettings : INotifyPropertyChanged
return; return;
} }
if (Settings.QuickAccessLinks.Any(x => x.Path == SelectedPath && x.Name == SelectedName)) if (QuickAccessLinks.Any(x => x.Path == SelectedPath && x.Name == SelectedName))
{ {
var warning = Main.Context.API.GetTranslation("plugin_explorer_quick_access_link_select_different_folder"); var warning = Main.Context.API.GetTranslation("plugin_explorer_quick_access_link_select_different_folder");
Main.Context.API.ShowMsgBox(warning); Main.Context.API.ShowMsgBox(warning);
@ -99,9 +101,8 @@ public partial class QuickAccessLinkSettings : INotifyPropertyChanged
EditAccessLink(); EditAccessLink();
return; return;
} }
var container = Settings.QuickAccessLinks;
var newAccessLink = new AccessLink { Name = SelectedName, Path = SelectedPath }; var newAccessLink = new AccessLink { Name = SelectedName, Path = SelectedPath };
container.Add(newAccessLink); QuickAccessLinks.Add(newAccessLink);
DialogResult = false; DialogResult = false;
Close(); Close();
} }
@ -120,12 +121,12 @@ public partial class QuickAccessLinkSettings : INotifyPropertyChanged
{ {
if (SelectedAccessLink == null)throw new ArgumentException("Access Link object is null"); if (SelectedAccessLink == null)throw new ArgumentException("Access Link object is null");
var obj = Settings.QuickAccessLinks.FirstOrDefault(x => x.GetHashCode() == SelectedAccessLink.GetHashCode()); var obj = QuickAccessLinks.FirstOrDefault(x => x.GetHashCode() == SelectedAccessLink.GetHashCode());
int index = Settings.QuickAccessLinks.IndexOf(obj); int index = QuickAccessLinks.IndexOf(obj);
if (index >= 0) if (index >= 0)
{ {
SelectedAccessLink = new AccessLink { Name = SelectedName, Path = SelectedPath }; SelectedAccessLink = new AccessLink { Name = SelectedName, Path = SelectedPath };
Settings.QuickAccessLinks[index] = SelectedAccessLink; QuickAccessLinks[index] = SelectedAccessLink;
} }
DialogResult = false; DialogResult = false;
IsEdit = false; IsEdit = false;