From e3e4e86305fcaf287c570ce6c92ebe7ebc72240d Mon Sep 17 00:00:00 2001 From: Gaurav Ujjwal Date: Sat, 29 Jan 2022 17:27:09 +0530 Subject: [PATCH] Don't reset discovered servers if list is already empty Updating discovered servers will trigger a cascade of operations. RecyclerView will launch list-differ, all indicators will be notified, and data-binding will be triggered. If list is already empty, all this work is unnecessary & wasteful. --- app/src/main/java/com/gaurav/avnc/vnc/Discovery.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/java/com/gaurav/avnc/vnc/Discovery.kt b/app/src/main/java/com/gaurav/avnc/vnc/Discovery.kt index 87a2085..8f60b8b 100644 --- a/app/src/main/java/com/gaurav/avnc/vnc/Discovery.kt +++ b/app/src/main/java/com/gaurav/avnc/vnc/Discovery.kt @@ -76,7 +76,7 @@ class Discovery(private val context: Context) { } isRunning.value = true - servers.value = ArrayList() //Forget known servers + if (servers.value?.size != 0) servers.value = ArrayList() //Forget known servers // Construction of NSD manager is done on a background thread because it appears to be quite heavy. GlobalScope.launch(Dispatchers.Default) {