Currently there is a progress event generated every time data is read from the
socket/file. For large files this can cause issues, as there may be over
500,000 reads to complete the download. We noticed the download was finished in
the username/wc/ cache but the UI was still showing the download progress and
WAY behind (showing 50% when the file was already fully downloaded)
The attached patch will only generate progress events when the PercentDone
increases, preventing overloading the event loop/UI thread. For large update
files (starting around 500MB but most noticeable above 1.5GB) this will fix
issues where the update seems to be downloading extremely slow.