From 02a5f8ad2c607cb9c36027af837c7ebfa60488cd Mon Sep 17 00:00:00 2001 From: edde746 <86283021+edde746@users.noreply.github.com> Date: Sun, 23 Aug 2026 10:30:36 +0200 Subject: [PATCH] fix(settings): pass the connection dialect when listing known servers in discovery PR #1666 merged without compiling: it maps existing connections into the add-server discovered list, but DiscoveredJellyfinServer gained a required dialect with the Emby backend. Carry the connection's dialect through and list only connections matching the screen's dialect, so the Add Emby screen does not offer existing Jellyfin servers. --- lib/screens/settings/add_jellyfin_screen.dart | 24 ++++++++++++------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/lib/screens/settings/add_jellyfin_screen.dart b/lib/screens/settings/add_jellyfin_screen.dart index dfdfa57c8..568339816 100644 --- a/lib/screens/settings/add_jellyfin_screen.dart +++ b/lib/screens/settings/add_jellyfin_screen.dart @@ -158,15 +158,23 @@ class _AddJellyfinScreenState extends State with AsyncFormSta Future _discoverLocalServers() async { final attemptId = ++_localDiscoveryAttemptId; try { - List existingConnections = const []; - try { - existingConnections = await context.read().list(); - } on ProviderNotFoundException { - // No ConnectionRegistry in the tree (tests / isolated subtrees). - } - final existing = existingConnections + List existingConnections = const []; + try { + existingConnections = await context.read().list(); + } on ProviderNotFoundException { + // No ConnectionRegistry in the tree (tests / isolated subtrees). + } + final existing = existingConnections .whereType() - .map((c) => DiscoveredJellyfinServer(address: c.baseUrl, id: c.serverMachineId, name: c.serverName)); + .where((c) => c.dialect == widget.dialect) + .map( + (c) => DiscoveredJellyfinServer( + address: c.baseUrl, + id: c.serverMachineId, + name: c.serverName, + dialect: c.dialect, + ), + ); final factory = widget._localDiscoveryFactory; final lanServers = factory != null