|
|
@@ -103,7 +103,7 @@ struct ScoredSoulseekSource: Identifiable {
|
|
|
|
|
|
// MARK: - Coordinator
|
|
|
|
|
|
-/// Orchestrates cloud-first, Soulseek-fallback search.
|
|
|
+/// Orchestrates parallel cloud + Soulseek search.
|
|
|
/// NOT a singleton — create one per search session.
|
|
|
@MainActor
|
|
|
@Observable
|
|
|
@@ -230,13 +230,7 @@ final class UnifiedSearchCoordinator {
|
|
|
(album.artist?.lowercased().contains(lowerQuery) ?? false)
|
|
|
}
|
|
|
|
|
|
- // If we found cloud results, we're done
|
|
|
- if !cloudResults.isEmpty {
|
|
|
- phase = .done
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- // Step 2: No cloud results — try Soulseek if configured
|
|
|
+ // Step 2: Always search Soulseek in parallel (not just as fallback)
|
|
|
guard slskd.isConfigured else {
|
|
|
phase = .done
|
|
|
return
|