From bc6ea9bd748247c895ebc03f2817a3267edc4156 Mon Sep 17 00:00:00 2001 From: Maxr1998 Date: Mon, 21 Sep 2020 01:34:17 +0200 Subject: [PATCH] Quicker auto-discovery Immediately show server chooser after the first server has been discovered, replace withContext() with flowOn() --- .../org/jellyfin/mobile/webapp/ConnectionHelper.kt | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/org/jellyfin/mobile/webapp/ConnectionHelper.kt b/app/src/main/java/org/jellyfin/mobile/webapp/ConnectionHelper.kt index 443bd2dd7..8eb9183fe 100644 --- a/app/src/main/java/org/jellyfin/mobile/webapp/ConnectionHelper.kt +++ b/app/src/main/java/org/jellyfin/mobile/webapp/ConnectionHelper.kt @@ -18,9 +18,8 @@ import androidx.core.view.postDelayed import androidx.lifecycle.lifecycleScope import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.flow.collect -import kotlinx.coroutines.flow.onEach +import kotlinx.coroutines.flow.flowOn import kotlinx.coroutines.launch -import kotlinx.coroutines.withContext import okhttp3.HttpUrl import okhttp3.HttpUrl.Companion.toHttpUrlOrNull import org.jellyfin.apiclient.Jellyfin @@ -147,12 +146,10 @@ class ConnectionHelper(private val activity: MainActivity) : KoinComponent { private fun discoverServers() { activity.lifecycleScope.launch { - withContext(Dispatchers.IO) { - jellyfin.discovery.discover().onEach { - serverList.add(it) - }.collect() + jellyfin.discovery.discover().flowOn(Dispatchers.IO).collect { serverInfo -> + serverList.add(serverInfo) + chooseServerButton.isVisible = true } - chooseServerButton.isVisible = serverList.isNotEmpty() } }