mirror of
https://github.com/Flow-Launcher/Flow.Launcher.git
synced 2026-03-11 08:54:32 +00:00
36 lines
No EOL
1.2 KiB
C#
36 lines
No EOL
1.2 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
|
|
namespace Flow.Launcher.Plugin.Explorer.Search.FolderLinks
|
|
{
|
|
public class QuickFolderAccess
|
|
{
|
|
private readonly ResultManager _resultManager;
|
|
|
|
public QuickFolderAccess(PluginInitContext context)
|
|
{
|
|
_resultManager = new ResultManager(context);
|
|
}
|
|
|
|
internal List<Result> FolderListMatched(Query query, List<FolderLink> folderLinks)
|
|
{
|
|
if (string.IsNullOrEmpty(query.Search))
|
|
return new List<Result>();
|
|
|
|
string search = query.Search.ToLower();
|
|
|
|
var queriedFolderLinks =
|
|
folderLinks.Where(x => x.Nickname.StartsWith(search, StringComparison.OrdinalIgnoreCase));
|
|
|
|
return queriedFolderLinks.Select(item =>
|
|
_resultManager.CreateFolderResult(item.Nickname, item.Path, item.Path, query))
|
|
.ToList();
|
|
}
|
|
|
|
internal List<Result> FolderListAll(Query query, List<FolderLink> folderLinks)
|
|
=> folderLinks
|
|
.Select(item => _resultManager.CreateFolderResult(item.Nickname, item.Path, item.Path, query))
|
|
.ToList();
|
|
}
|
|
} |