88
99import mpos .apps
1010
11- apps = []
11+ # Screens:
1212app_detail_screen = None
13+
14+ apps = []
1315update_button = None
1416install_button = None
1517install_label = None
1618please_wait_label = None
17- app_detail_screen = None
19+
1820progress_bar = None
1921keepdownloadingicons = False
2022
@@ -246,7 +248,7 @@ def download_icons():
246248 image_dsc = download_icon (app .icon_url )
247249 app .image_dsc = image_dsc
248250 print ("Finished downloading icons, scheduling stop of refresh timer..." )
249- lv .async_call (lambda l : refresh_icons .pause (), None )
251+ # lv.async_call(lambda l: refresh_icons.pause(), None)
250252
251253def load_icon (icon_path ):
252254 with open (icon_path , 'rb' ) as f :
@@ -424,11 +426,13 @@ def refresh_icons_cb(timer):
424426 #print("Refreshing app icons...")
425427 for app in apps :
426428 #print("Refreshing icon for {app.name}")
427- app .image .set_src (app .image_dsc )
429+ #app.image.set_src(app.image_dsc)
430+ pass
428431
429432def janitor_cb (timer ):
430- global keeprunning
431- if lv .screen_active () != appscreen or app_detail_screen == lv .screen_active ():
433+ global appscreen , app_detail_screen
434+ print (f"foreground screen is { lv .screen_active ()} " )
435+ if lv .screen_active () != appscreen or lv .screen_active () != app_detail_screen :
432436 print ("appstore.py backgrounded, cleaning up..." )
433437 janitor .delete ()
434438 refresh_icons .delete ()
@@ -437,14 +441,15 @@ def janitor_cb(timer):
437441 restart_launcher () # refresh the launcher
438442 print ("appstore.py ending" )
439443
440- janitor = lv .timer_create (janitor_cb , 500 , None )
444+ janitor = lv .timer_create (janitor_cb , 800 , None )
441445refresh_icons = lv .timer_create (refresh_icons_cb , 500 , None )
442446
443- appscreen = lv .screen_active ()
444447please_wait_label = lv .label (appscreen )
445448please_wait_label .set_text ("Downloading app index..." )
446449please_wait_label .center ()
447450
451+ appscreen = lv .screen_active ()
452+
448453can_check_network = True
449454try :
450455 import network
@@ -454,7 +459,6 @@ def janitor_cb(timer):
454459if can_check_network and not network .WLAN (network .STA_IF ).isconnected ():
455460 please_wait_label .set_text ("Error: WiFi is not connected." )
456461else :
457- _thread .stack_size (12 * 1024 )
462+ _thread .stack_size (32 * 1024 )
458463 _thread .start_new_thread (download_apps , ("http://demo.lnpiggy.com:2121/apps.json" ,))
459464
460-
0 commit comments