From ccc677fd8f1e181c654ceb37706cc632c679cd46 Mon Sep 17 00:00:00 2001 From: Jeremy Wu Date: Wed, 27 Jan 2021 06:17:24 +1100 Subject: [PATCH] fix per comment --- .../ContextMenu.cs | 26 ++++++------------- Plugins/Flow.Launcher.Plugin.Explorer/Main.cs | 3 +++ .../Search/QuickAccessLinks/QuickAccess.cs | 17 +++++++----- 3 files changed, 21 insertions(+), 25 deletions(-) diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/ContextMenu.cs b/Plugins/Flow.Launcher.Plugin.Explorer/ContextMenu.cs index 1c75d3efd..b478be538 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/ContextMenu.cs +++ b/Plugins/Flow.Launcher.Plugin.Explorer/ContextMenu.cs @@ -63,27 +63,17 @@ namespace Flow.Launcher.Plugin.Explorer SubTitle = $"Add the current {fileOrFolder} to Quick Access", Action = (context) => { - try - { - Settings.QuickAccessLinks.Add(new AccessLink { Path = record.FullPath, Type = record.Type }); + Settings.QuickAccessLinks.Add(new AccessLink { Path = record.FullPath, Type = record.Type }); - Context.API.ShowMsg(Context.API.GetTranslation("plugin_explorer_addfilefoldersuccess"), - string.Format( - Context.API.GetTranslation("plugin_explorer_addfilefoldersuccess_detail"), - fileOrFolder), - Constants.ExplorerIconImageFullPath); + Context.API.ShowMsg(Context.API.GetTranslation("plugin_explorer_addfilefoldersuccess"), + string.Format( + Context.API.GetTranslation("plugin_explorer_addfilefoldersuccess_detail"), + fileOrFolder), + Constants.ExplorerIconImageFullPath); - ViewModel.Save(); + ViewModel.Save(); - return true; - } - catch (Exception e) - { - var message = "Fail to add to Quick Access"; - LogException(message, e); - Context.API.ShowMsg(message); - return false; - } + return true; }, IcoPath = Constants.QuickAccessImagePath }); diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Main.cs b/Plugins/Flow.Launcher.Plugin.Explorer/Main.cs index 4de88ec06..150cb7288 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Main.cs +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Main.cs @@ -36,7 +36,10 @@ namespace Flow.Launcher.Plugin.Explorer // as at v1.7.0 this is to maintain backwards compatibility, need to be removed afterwards. if (Settings.QuickFolderAccessLinks.Any()) + { Settings.QuickAccessLinks = Settings.QuickFolderAccessLinks; + Settings.QuickFolderAccessLinks = null; + } contextMenu = new ContextMenu(Context, Settings, viewModel); searchManager = new SearchManager(Settings, Context); diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Search/QuickAccessLinks/QuickAccess.cs b/Plugins/Flow.Launcher.Plugin.Explorer/Search/QuickAccessLinks/QuickAccess.cs index d4f4dadbe..e6ece2a73 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Search/QuickAccessLinks/QuickAccess.cs +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Search/QuickAccessLinks/QuickAccess.cs @@ -21,34 +21,37 @@ namespace Flow.Launcher.Plugin.Explorer.Search.QuickAccessLinks string search = query.Search.ToLower(); var queriedAccessLinks = - accessLinks.Where(x => x.Nickname.StartsWith(search, StringComparison.OrdinalIgnoreCase)); + accessLinks + .Where(x => x.Nickname.StartsWith(search, StringComparison.OrdinalIgnoreCase)) + .OrderBy(x => x.Type) + .ThenBy(x => x.Nickname); return queriedAccessLinks .Where(x => x.Type == ResultType.Folder) .Select(item => resultManager.CreateFolderResult(item.Nickname, item.Path, item.Path, query)) - .OrderBy(x => x.Title) .Concat( queriedAccessLinks .Where(x => x.Type == ResultType.File) .Select(item => - resultManager.CreateFileResult(item.Path, query)) - .OrderBy(x => x.Title)) + resultManager.CreateFileResult(item.Path, query))) .ToList(); } internal List AccessLinkListAll(Query query, List accessLinks) => accessLinks + .OrderBy(x => x.Type) + .ThenBy(x => x.Nickname) .Where(x => x.Type == ResultType.Folder) .Select(item => resultManager.CreateFolderResult(item.Nickname, item.Path, item.Path, query)) - .OrderBy(x => x.Title) .Concat( accessLinks + .OrderBy(x => x.Type) + .ThenBy(x => x.Nickname) .Where(x => x.Type == ResultType.File) .Select(item => - resultManager.CreateFileResult(item.Path, query)) - .OrderBy(x => x.Title)) + resultManager.CreateFileResult(item.Path, query))) .ToList(); } }