diff --git a/wled00/data/common.js b/wled00/data/common.js index 6e72428d56..5f73c946d8 100644 --- a/wled00/data/common.js +++ b/wled00/data/common.js @@ -51,6 +51,38 @@ function tooltip(cont=null) { }); }); }; +// sequential loading of external resources (JS or CSS) with retry, calls init() when done +function loadResources(files, init) { + let i = 0; + const loadNext = () => { + if (i >= files.length) { + if (init) { + d.documentElement.style.visibility = 'visible'; // make page visible after all files are loaded if it was hidden (prevent ugly display) + d.readyState === 'complete' ? init() : window.addEventListener('load', init); + } + return; + } + const file = files[i++]; + const isCSS = file.endsWith('.css'); + const el = d.createElement(isCSS ? 'link' : 'script'); + if (isCSS) { + el.rel = 'stylesheet'; + el.href = file; + const st = d.head.querySelector('style'); + if (st) d.head.insertBefore(el, st); // insert before any - - + \ No newline at end of file diff --git a/wled00/data/liveviewws2D.htm b/wled00/data/liveviewws2D.htm index a077cb5fef..91f63739cf 100644 --- a/wled00/data/liveviewws2D.htm +++ b/wled00/data/liveviewws2D.htm @@ -10,11 +10,18 @@ margin: 0; } - - + diff --git a/wled00/data/settings_2D.htm b/wled00/data/settings_2D.htm index 5c7e66e41d..63ea4a60bf 100644 --- a/wled00/data/settings_2D.htm +++ b/wled00/data/settings_2D.htm @@ -4,11 +4,20 @@ 2D Set-up - + - - +
diff --git a/wled00/data/settings_dmx.htm b/wled00/data/settings_dmx.htm index 7b7fa2bb88..391c2bdc97 100644 --- a/wled00/data/settings_dmx.htm +++ b/wled00/data/settings_dmx.htm @@ -4,8 +4,16 @@ DMX Settings - + - - +
diff --git a/wled00/data/settings_leds.htm b/wled00/data/settings_leds.htm index 8a3330e473..141f00d79e 100644 --- a/wled00/data/settings_leds.htm +++ b/wled00/data/settings_leds.htm @@ -4,7 +4,7 @@ LED Settings - + - - +
diff --git a/wled00/data/settings_sec.htm b/wled00/data/settings_sec.htm index d0ca118fd9..182e729648 100644 --- a/wled00/data/settings_sec.htm +++ b/wled00/data/settings_sec.htm @@ -4,8 +4,16 @@ Misc Settings - + - - +
diff --git a/wled00/data/settings_sync.htm b/wled00/data/settings_sync.htm index 97c8d1d160..73e4d9a268 100644 --- a/wled00/data/settings_sync.htm +++ b/wled00/data/settings_sync.htm @@ -4,8 +4,16 @@ Sync Settings - + - - +
diff --git a/wled00/data/settings_time.htm b/wled00/data/settings_time.htm index 698e25b2af..bee982def1 100644 --- a/wled00/data/settings_time.htm +++ b/wled00/data/settings_time.htm @@ -4,10 +4,19 @@ Time Settings - + - - +
diff --git a/wled00/data/settings_ui.htm b/wled00/data/settings_ui.htm index a608d57764..7955e8e699 100644 --- a/wled00/data/settings_ui.htm +++ b/wled00/data/settings_ui.htm @@ -4,10 +4,19 @@ UI Settings - + - - +
diff --git a/wled00/data/settings_um.htm b/wled00/data/settings_um.htm index 3879541724..dbef550115 100644 --- a/wled00/data/settings_um.htm +++ b/wled00/data/settings_um.htm @@ -4,12 +4,22 @@ Usermod Settings - + - - +
diff --git a/wled00/data/settings_wifi.htm b/wled00/data/settings_wifi.htm index 7f402b5bbd..5167eec450 100644 --- a/wled00/data/settings_wifi.htm +++ b/wled00/data/settings_wifi.htm @@ -4,8 +4,17 @@ WiFi Settings - + - - +
diff --git a/wled00/ws.cpp b/wled00/ws.cpp index 6a02247203..f54ba7eafe 100644 --- a/wled00/ws.cpp +++ b/wled00/ws.cpp @@ -157,12 +157,6 @@ void sendDataWs(AsyncWebSocketClient * client) // the following may no longer be necessary as heap management has been fixed by @willmmiles in AWS size_t heap1 = getFreeHeapSize(); DEBUG_PRINTF_P(PSTR("heap %u\n"), getFreeHeapSize()); - #ifdef ESP8266 - if (len>heap1) { - DEBUG_PRINTLN(F("Out of memory (WS)!")); - return; - } - #endif AsyncWebSocketBuffer buffer(len); #ifdef ESP8266 size_t heap2 = getFreeHeapSize();