Runtime: Single file bundle extraction misses feedback

Created on 17 Jul 2019  路  4Comments  路  Source: dotnet/runtime

I have provided a Greenshot preview version to a couple of users, to detect any issues with the direction we are going. I was especially interested in the single file bundle functionality, as this could provide a very quick feedback.

When watching two of the users to see if they like the UX. My first observation was that they, seconds after clicking the Greenshot.exe icon stored in their download order, click again. The users said that as nothing is happening, they assumed the double-click was somehow ignored / lost and they wanted to make sure Greenshot started.

What I got back from this:

  • The dotnet core published single bundle exe takes a long time extracting, which is not really visible -> can't do anything myself here, so that is where this issue comes into play.
  • When after many seconds Greenshot finally starts, it's visible in the system tray but only if the user doesn't collapse the icon -> Greenshot should "tell" that it's started (with an option to turn it off) to make sure the user knows.

My hope is that you might be able to provide some kind of feedback, that the system is doing something. My first suggestion is a small window just telling the user to wait with an icon (sand-hour), this would prevent the need for translations.

Steps to reproduce

Publish a single-exe Windows WPF application, it should be >140MB
double-click the icon to start the application
now wait... and notice that you don't know what happens

Expected behavior

Somehow see that the system is starting the application

Actual behavior

Nothing until the application is started, and only if the application shows something.

Environment data

dotnet core 3.0.100-preview8-013289

Additional hints:
In https://github.com/dotnet/core-setup/issues/7070 there was an issue with McAfee (which actuall I was facing too) where the solution is in https://github.com/dotnet/core-setup/pull/7135 it's visible that in some cases the extraction process takes > 45 seconds. Now this is not the main issue, it takes as long as it needs, but the fact that this is not visible it why I created this issue.

P.S.
There are other issues with the whole life-cycle for Single-Exes, one is the cleanup process when the user downloads multiple versions. But this is something for other issues...

area-Host

Most helpful comment

FYI: In the referenced issue (https://github.com/dotnet/coreclr/issues/20287), there is a mentioning of an image (png) being shown (I can image like a splash screen) while extracting the files. This would be a possible solution I would be okay with.

A progress bar would of course be nice too.

All 4 comments

The implementation of this issue is considered a feature, given the GUI/CUI and platform considerations. So, moving it out of 3.1 (bugfix) scope.

I can understand that, it's a shame though as I was hoping to be able use single-file for Greenshot where users don't want an installation, but this would generate to much issues. 馃槩

Thanks for letting me know.

FYI: In the referenced issue (https://github.com/dotnet/coreclr/issues/20287), there is a mentioning of an image (png) being shown (I can image like a splash screen) while extracting the files. This would be a possible solution I would be okay with.

A progress bar would of course be nice too.

As a little hack during the time this option is implemented (wich will be the ideal solution) I developed a Go program to serve as a launcher.

As Go requieres no dependencies I embedded a WPF Net Core app inside. When you run the Go app the Net app is executed from the temporal folder. A loading windows is shown while this happens.

Source code is in https://github.com/pablopioli/golauncherfornetcore.
Detailed explanations are missing, if there is interest I can write them.
The program is pretty rough also, leaving the temporary files behind.

https://youtu.be/EZtqYyLaSuw
Shows how it works.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

GitAntoinee picture GitAntoinee  路  3Comments

nalywa picture nalywa  路  3Comments

jkotas picture jkotas  路  3Comments

yahorsi picture yahorsi  路  3Comments

chunseoklee picture chunseoklee  路  3Comments