From b72f33a9898ffcc0e2b297acda6dd5702d811364 Mon Sep 17 00:00:00 2001 From: Alexander Capehart Date: Thu, 11 May 2023 12:21:58 -0600 Subject: [PATCH] search: match file names case-insensitively Not doing this lead to some inconsistent search results at points. Resolves #437. --- CHANGELOG.md | 5 +++++ app/src/main/java/org/oxycblt/auxio/search/SearchEngine.kt | 3 +-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 53b3d8295..6b6b8d61d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,9 +2,14 @@ ## dev +#### What's Improved +- Sorting now handles numbers of arbitrary length +- Punctuation is now ignored in sorting with intelligent sort names disabled + #### What's Fixed - Fixed issue where vorbis comments in the form of `metadata_block_picture` (lowercase) would not be parsed as images +- Fixed issue where searches would match song file names case-sensitively ## 3.0.5 diff --git a/app/src/main/java/org/oxycblt/auxio/search/SearchEngine.kt b/app/src/main/java/org/oxycblt/auxio/search/SearchEngine.kt index a04fb9e70..675c4b0e4 100644 --- a/app/src/main/java/org/oxycblt/auxio/search/SearchEngine.kt +++ b/app/src/main/java/org/oxycblt/auxio/search/SearchEngine.kt @@ -66,8 +66,7 @@ class SearchEngineImpl @Inject constructor(@ApplicationContext private val conte SearchEngine.Items( songs = items.songs?.searchListImpl(query) { q, song -> - // FIXME: Match case-insensitively - song.path.name.contains(q) + song.path.name.contains(q, ignoreCase = true) }, albums = items.albums?.searchListImpl(query), artists = items.artists?.searchListImpl(query),