From 521eb54cbb951c86550586cb65b1e7c0e0950d92 Mon Sep 17 00:00:00 2001 From: Philip Kristoffersen Date: Tue, 19 Apr 2022 20:02:01 +0200 Subject: [PATCH] Do not try to fix non BoilR shortcut icons --- src/sync/synchronization.rs | 36 +++++++++++++++++++++++------------- 1 file changed, 23 insertions(+), 13 deletions(-) diff --git a/src/sync/synchronization.rs b/src/sync/synchronization.rs index 8143274..35829dd 100644 --- a/src/sync/synchronization.rs +++ b/src/sync/synchronization.rs @@ -106,14 +106,22 @@ pub async fn download_images(settings: &Settings, userinfo_shortcuts: &Vec bool; +} + +impl IsBoilRShortcut for ShortcutOwned{ + fn is_boilr_tag(&self) -> bool { + let boilr_tag = BOILR_TAG.to_string(); + self.tags.contains(&boilr_tag) || self.dev_kit_game_id.starts_with(&boilr_tag) + } +} + + fn remove_old_shortcuts(shortcut_info: &mut ShortcutInfo) { - let boilr_tag = BOILR_TAG.to_string(); shortcut_info .shortcuts - .retain(|shortcut| !shortcut.tags.contains(&boilr_tag)); - shortcut_info - .shortcuts - .retain(|shortcut| !shortcut.dev_kit_game_id.starts_with(&boilr_tag)); + .retain(|shortcut| !shortcut.is_boilr_tag()); } fn fix_shortcut_icons( @@ -130,14 +138,16 @@ fn fix_shortcut_icons( ImageType::Icon }; - for shortcut in shortcuts { - let replace_icon = shortcut.icon.trim().eq("") || !Path::new(shortcut.icon.trim()).exists() || shortcut.icon.eq(&shortcut.exe); - if replace_icon { - let app_id = steam_shortcuts_util::app_id_generator::calculate_app_id( - &shortcut.exe, - &shortcut.app_name, - ); - shortcut.icon = image_folder.join(image_type.file_name(app_id)).to_string_lossy().to_string(); + for shortcut in shortcuts { + if shortcut.is_boilr_tag(){ + let replace_icon = shortcut.icon.trim().eq("") || !Path::new(shortcut.icon.trim()).exists() || shortcut.icon.eq(&shortcut.exe); + if replace_icon { + let app_id = steam_shortcuts_util::app_id_generator::calculate_app_id( + &shortcut.exe, + &shortcut.app_name, + ); + shortcut.icon = image_folder.join(image_type.file_name(app_id)).to_string_lossy().to_string(); + } } } }