From 05f4e9ee08f93b17c3dbaf2b6a1022cc28a226ce Mon Sep 17 00:00:00 2001 From: HybridDog Date: Sat, 30 May 2015 16:18:09 +0200 Subject: More reliable serverlist behaviour -> remember the previously loaded serverlist, and use if new one failed -> show a "loading" serverlist --- builtin/mainmenu/common.lua | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'builtin') diff --git a/builtin/mainmenu/common.lua b/builtin/mainmenu/common.lua index d6e2588fa..6126c61a4 100644 --- a/builtin/mainmenu/common.lua +++ b/builtin/mainmenu/common.lua @@ -234,7 +234,13 @@ end -------------------------------------------------------------------------------- function asyncOnlineFavourites() - menudata.favorites = {} + if not menudata.public_known then + menudata.public_known = {{ + name = fgettext("Loading..."), + description = fgettext("Try reenabling public serverlist and check your internet connection.") + }} + end + menudata.favorites = menudata.public_known core.handle_async( function(param) return core.get_favorites("online") @@ -242,11 +248,15 @@ function asyncOnlineFavourites() nil, function(result) if core.setting_getbool("public_serverlist") then - menudata.favorites = order_favorite_list(result) + local favs = order_favorite_list(result) + if favs[1] then + menudata.public_known = favs + menudata.favorites = menudata.public_known + end core.event_handler("Refresh") end end - ) + ) end -------------------------------------------------------------------------------- -- cgit v1.2.3