praeclarum / Ooui

A small cross-platform UI library that brings the simplicity of native UI development to the web
MIT License
1.62k stars 160 forks source link

Very prominent and serious issue very easy to fix as far as we can tell #233

Open Psercom opened 5 years ago

Psercom commented 5 years ago

We found the page html displays twice involving at least a flash and double load time with the first display disconcertingly ill formatted until the 2nd display overwrites it. This gave a rough unfinished feel becoming even more serious when audio is played on the page. The double rendering of the page means that the audio plays once then a second time on top of itself out of sync. With a fair bit of enjoyable reading of the code we found we could fix this in UI.cs simply by commenting out the line that writes innerHtml to the response object:

if !INCLUDEFIXES

        writer.WriteLine (initialHtml); // PREPAINTS DISPLAY CAUSING FLASH $ 2X AUDIO, SEEMS UNNECESSARY SINCE SOCKET IN OOUI.JS POPULATES DISPLAY

endif

Although we aren't entirely sure of all the consequences this makes certain sense if there is no point in waking the client with preliminary html if proper rendering is about to be presented via sockets in the call to ooui.js. Because we are not sure if there was a reason for pushing innerHtml out we aren't presenting this as a pull request, but just something very easy for Frank to do in case he believes it's a good general solution and not just something that works for us.