From 9d1f2799dab7dbbc2583074b601393c377a192d5 Mon Sep 17 00:00:00 2001 From: Philip Date: Sat, 1 Jan 2022 16:51:59 +0100 Subject: [PATCH] Only show launchable Epic Games --- src/egs/get_manifests.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/egs/get_manifests.rs b/src/egs/get_manifests.rs index 893a2c1..c200301 100644 --- a/src/egs/get_manifests.rs +++ b/src/egs/get_manifests.rs @@ -39,7 +39,8 @@ pub(crate) fn get_egs_manifests( let manifests = manifest_dir .filter_map(|dir| dir.ok()) .filter_map(get_manifest_item) - .filter(is_game_installed); + .filter(is_game_installed) + .filter(is_game_launchable); Ok(manifests.collect()) } Err(err) => Err(ReadDirError { @@ -129,6 +130,10 @@ fn is_game_installed(manifest: &ManifestItem) -> bool { Path::new(manifest.manifest_location.as_str()).exists() } +fn is_game_launchable(manifest: &ManifestItem) -> bool { + (!manifest.launch_executable.is_empty()) || (manifest.is_managed) +} + fn get_manifest_item(dir_entry: DirEntry) -> Option { if let Some(extension) = dir_entry.path().extension() { if extension.eq("item") {