diff --git a/lib/model/app_inventory.dart b/lib/model/app_inventory.dart index b7bc6e944..22705a135 100644 --- a/lib/model/app_inventory.dart +++ b/lib/model/app_inventory.dart @@ -29,10 +29,10 @@ class AppInventory { areAppNamesReadyNotifier.value = false; } - bool isPotentialAppDir(String dir) => _potentialAppDirs.contains(dir); + bool isPotentialAppDir(String dir) => _potentialAppDirs.contains(Package.normalizePotentialDir(dir)); String? getAlbumAppPackageName(String albumPath) { - final dir = pContext.split(albumPath).last; + final dir = Package.normalizePotentialDir(pContext.split(albumPath).last); final package = _launcherPackages.firstWhereOrNull((v) => v.potentialDirs.contains(dir)); return package?.packageName; } @@ -71,7 +71,11 @@ class Package { currentLabel, englishLabel, ...ownedDirs, - ].whereNotNull().toSet(); + ].whereNotNull().map(normalizePotentialDir).toSet(); + + static String normalizePotentialDir(String dir) { + return dir.replaceAll('_', ' ').trim().toLowerCase(); + } @override String toString() => '$runtimeType#${shortHash(this)}{packageName=$packageName, categoryLauncher=$categoryLauncher, isSystem=$isSystem, currentLabel=$currentLabel, englishLabel=$englishLabel, ownedDirs=$ownedDirs}'; diff --git a/lib/services/app_service.dart b/lib/services/app_service.dart index 370275c60..705cc9b2d 100644 --- a/lib/services/app_service.dart +++ b/lib/services/app_service.dart @@ -43,7 +43,7 @@ class PlatformAppService implements AppService { 'com.sony.playmemories.mobile': {'Imaging Edge Mobile'}, 'nekox.messenger': {'NekoX'}, 'org.telegram.messenger': {'Telegram Images', 'Telegram Video'}, - 'com.whatsapp': {'Whatsapp', 'WhatsApp Animated Gifs', 'WhatsApp Documents', 'WhatsApp Images', 'WhatsApp Video'} + 'com.whatsapp': {'WhatsApp Animated Gifs', 'WhatsApp Documents', 'WhatsApp Images', 'WhatsApp Video'} }; @override