Skip to content

Commit e89d8b3

Browse files
author
TheBestPessimist
committed
Read list of programs from Start Menu instead of Start Menu/Programs
1 parent 9e11b0c commit e89d8b3

File tree

1 file changed

+8
-13
lines changed
  • Plugins/Flow.Launcher.Plugin.Program/Programs

1 file changed

+8
-13
lines changed

Plugins/Flow.Launcher.Plugin.Program/Programs/Win32.cs

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -457,14 +457,11 @@ private static IEnumerable<Win32> UnregisteredPrograms(List<string> directories,
457457

458458
private static IEnumerable<Win32> StartMenuPrograms(string[] suffixes, string[] protocols)
459459
{
460-
var directory1 = Environment.GetFolderPath(Environment.SpecialFolder.Programs);
461-
var directory2 = Environment.GetFolderPath(Environment.SpecialFolder.CommonPrograms);
462-
var paths1 = EnumerateProgramsInDir(directory1, suffixes);
463-
var paths2 = EnumerateProgramsInDir(directory2, suffixes);
464-
465-
var toFilter = paths1.Concat(paths2);
460+
var allPrograms = GetStartMenuPaths()
461+
.SelectMany(p => EnumerateProgramsInDir(p, suffixes))
462+
.Distinct();
466463

467-
var programs = ExceptDisabledSource(toFilter.Distinct())
464+
var programs = ExceptDisabledSource(allPrograms)
468465
.Select(x => GetProgramFromPath(x, protocols));
469466
return programs;
470467
}
@@ -702,12 +699,10 @@ public override bool Equals(object obj)
702699

703700
private static IEnumerable<string> GetStartMenuPaths()
704701
{
705-
var directory1 = Environment.GetFolderPath(Environment.SpecialFolder.Programs);
706-
var directory2 = Environment.GetFolderPath(Environment.SpecialFolder.CommonPrograms);
707-
return new[]
708-
{
709-
directory1, directory2
710-
};
702+
var userStartMenu = Environment.GetFolderPath(Environment.SpecialFolder.StartMenu);
703+
var commonStartMenu = Environment.GetFolderPath(Environment.SpecialFolder.CommonStartMenu);
704+
705+
return new[] { userStartMenu, commonStartMenu };
711706
}
712707

713708
public static void WatchProgramUpdate(Settings settings)

0 commit comments

Comments
 (0)