@@ -251,7 +251,7 @@ def download_icons():
251251 image_dsc = download_icon (app .icon_url )
252252 app .image_dsc = image_dsc # save it for the app detail page
253253 lv .async_call (lambda l : app .image .set_src (image_dsc ), None )
254- time .sleep_ms (50 ) # not waiting here will result in some async_calls() not being executed
254+ time .sleep_ms (100 ) # not waiting here will result in some async_calls() not being executed
255255 print ("Finished downloading icons..." )
256256
257257
@@ -264,14 +264,18 @@ def load_icon(icon_path):
264264 })
265265 return image_dsc
266266
267- def create_apps_list ():
268- global apps , main_screen
267+ def create_ui ():
268+ global main_screen , please_wait_label
269269 main_screen = lv .obj ()
270270 please_wait_label = lv .label (main_screen )
271271 please_wait_label .set_text ("Downloading app index..." )
272272 please_wait_label .center ()
273- default_icon_dsc = load_icon ("builtin/res/mipmap-mdpi/default_icon_64x64.png" )
273+ mpos .ui .load_screen (main_screen )
274+
275+ def create_apps_list ():
274276 print ("create_apps_list" )
277+ global apps , main_screen
278+ default_icon_dsc = load_icon ("builtin/res/mipmap-mdpi/default_icon_64x64.png" )
275279 apps_list = lv .list (main_screen )
276280 apps_list .set_style_pad_all (0 , 0 )
277281 apps_list .set_size (lv .pct (100 ), lv .pct (100 ))
@@ -305,15 +309,19 @@ def create_apps_list():
305309 desc_label .set_style_text_font (lv .font_montserrat_12 , 0 )
306310 desc_label .add_event_cb (lambda e , a = app : show_app_detail (a ), lv .EVENT .CLICKED , None )
307311 print ("create_apps_list app done" )
308- mpos .ui .load_screen (main_screen )
309312 try :
310- _thread .stack_size (16 * 1024 )
313+ stacksize = 24 * 1024
314+ import sys
315+ if sys .platform == "esp32" :
316+ stacksize = 16 * 1024
317+ _thread .stack_size (stacksize )
311318 _thread .start_new_thread (download_icons ,())
312319 except Exception as e :
313320 print ("Could not start thread to download icons: " , e )
314321
315322
316323def show_app_detail (app ):
324+ print ("Creating app detail screen..." )
317325 global app_detail_screen , install_button , progress_bar , install_label
318326 #app_detail_screen = lv.obj()
319327 #app_detail_screen.set_size(lv.pct(100), lv.pct(100))
@@ -389,6 +397,7 @@ def show_app_detail(app):
389397 long_desc_label .set_text (app .long_description )
390398 long_desc_label .set_style_text_font (lv .font_montserrat_12 , 0 )
391399 long_desc_label .set_width (lv .pct (100 ))
400+ print ("Loading app detail screen..." )
392401 mpos .ui .load_screen (app_detail_screen )
393402
394403
@@ -431,6 +440,8 @@ def janitor_cb(timer):
431440 mpos .apps .restart_launcher () # refresh the launcher
432441 print ("appstore.py ending" )
433442
443+ create_ui ()
444+
434445janitor = lv .timer_create (janitor_cb , 400 , None )
435446
436447can_check_network = True
@@ -442,6 +453,10 @@ def janitor_cb(timer):
442453if can_check_network and not network .WLAN (network .STA_IF ).isconnected ():
443454 please_wait_label .set_text ("Error: WiFi is not connected." )
444455else :
445- _thread .stack_size (16 * 1024 )
456+ stacksize = 24 * 1024
457+ import sys
458+ if sys .platform == "esp32" :
459+ stacksize = 16 * 1024
460+ _thread .stack_size (stacksize )
446461 _thread .start_new_thread (download_apps , ("http://demo.lnpiggy.com:2121/apps.json" ,))
447462
0 commit comments