http://bugs.winehq.org/show_bug.cgi?id=32130
Bug #: 32130 Summary: Gecko and Mono downloaders should show the file size and allow user to abort Product: Wine Version: 1.5.16 Platform: x86-64 OS/Version: Linux Status: UNCONFIRMED Severity: enhancement Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: markk@clara.co.uk Classification: Unclassified
When running Wine with a new/empty wineprefix directory, the user is prompted to install Gecko and Mono.
However there is no indication of the size of those downloads or the amount of disk space which they will occupy. There is also no way to abort a download in progress.
Particularly when using dialup or metered (e.g. 3G) connections, the user might choose not to install those components, if they knew how large the download size is.
It would be good if Wine could tell the user the download size, the amount of disk space required, and allow the user to abort downloads part-way through. (Even if the user has no bandwidth or disk space concerns, they might accidentally click Install. Even with a broadband connection the downloads take quite a while.)
http://bugs.winehq.org/show_bug.cgi?id=32130
--- Comment #1 from Vincent Povirk madewokherd@gmail.com 2012-11-12 16:28:33 CST --- Created attachment 42484 --> http://bugs.winehq.org/attachment.cgi?id=42484 patch using IBindStatusCallback to cancel
I tried writing a patch to allow an abort during the download, but I'm running into the problem that there is no way to immediately abort the UrlDownloadToFile call. (We can abort it the next time there's progress, but that won't work if the download stalls and the user clicks Cancel.)
I think that the way this works now, we have to abort the download/install thread cooperatively or add some complicated synchronization. Otherwise, there's a race between disabling the Cancel button after the download finishes and getting the notification of the user clicking Cancel on the main thread.
http://bugs.winehq.org/show_bug.cgi?id=32130
Vincent Povirk madewokherd@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |jacek@codeweavers.com, | |madewokherd@gmail.com
http://bugs.winehq.org/show_bug.cgi?id=32130
Jacek Caban jacek@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever Confirmed|0 |1
--- Comment #2 from Jacek Caban jacek@codeweavers.com 2012-11-13 03:08:35 CST --- (In reply to comment #1)
Created attachment 42484 [details] patch using IBindStatusCallback to cancel
I tried writing a patch to allow an abort during the download, but I'm running into the problem that there is no way to immediately abort the UrlDownloadToFile call. (We can abort it the next time there's progress, but that won't work if the download stalls and the user clicks Cancel.)
The right way is using IBinding::Abort using IBinding that is called to OnStartBinding.
I think that the way this works now, we have to abort the download/install thread cooperatively or add some complicated synchronization. Otherwise, there's a race between disabling the Cancel button after the download finishes and getting the notification of the user clicking Cancel on the main thread.
No, that's not acceptable. BTW, this code is from times when we didn't have proper async binding (and aborting FWIW) support in urlmon. The plan is to get rid of separated binding thread now that we have everything we need.
http://bugs.winehq.org/show_bug.cgi?id=32130
--- Comment #3 from Vincent Povirk madewokherd@gmail.com 2012-11-13 10:04:21 CST --- "Proper async binding" would involve using something other than URLDownloadToFile, right? That probably means this is beyond my abilities right now.
https://bugs.winehq.org/show_bug.cgi?id=32130
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download, Installer, source Component|-unknown |programs
https://bugs.winehq.org/show_bug.cgi?id=32130
super_man@post.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |super_man@post.com