Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create a Custom Update UI #765

Open
wants to merge 23 commits into
base: main
Choose a base branch
from

Conversation

JoshuaBrest
Copy link
Contributor

To make the user experience more friendly for users, I added a custom, friendly update UI. Some highlights of the update UI are:

  • Uses a sheet instead of a new window
  • Allows markdown content instead of having to use HTML
  • Looks much nicer

Screenshots:
Update Notice
Relaunch to Update

@ultratiem
Copy link

This is great. Just a point on the semantics of your write up under the app icon on the left panel. You write:

You're running v2.2.1 (34). The
latest available update is v2.2.2
(35). Would you like to update?

The first part (I've italicized) is redundant as the current version is listed under the icon. It also makes the block more wordy than it needs to be. Asking if the user would like to update is also redundant as there's a large, prominent update button; the user knows why they are here. A more succinct write up would be to simply print the new version:

Update v2.2.2 (35) is now available.

Lastly, while this fleshes out the update experience it doesn't handle a rather glaring edge case, in that, skipping an update is not currently possible. Historically, given the nature of WINE, GPTK, etc., it's not uncommon for updates to break existing games or make the experience worse. Right now, there is no way for a user to avoid updating, so they will constantly be nagged or worse be forced to play backup hopscotch. I believe Sparkle has this functionality and it would be nice to hook into it as well.

@JoshuaBrest
Copy link
Contributor Author

This is great. Just a point on the semantics of your write up under the app icon on the left panel. You write:

You're running v2.2.1 (34). The latest available update is v2.2.2 (35). Would you like to update?

The first part (I've italicized) is redundant as the current version is listed under the icon. It also makes the block more wordy than it needs to be. Asking if the user would like to update is also redundant as there's a large, prominent update button; the user knows why they are here. A more succinct write up would be to simply print the new version:

Update v2.2.2 (35) is now available.

Lastly, while this fleshes out the update experience it doesn't handle a rather glaring edge case, in that, skipping an update is not currently possible. Historically, given the nature of WINE, GPTK, etc., it's not uncommon for updates to break existing games or make the experience worse. Right now, there is no way for a user to avoid updating, so they will constantly be nagged or worse be forced to play backup hopscotch. I believe Sparkle has this functionality and it would be nice to hook into it as well.

The first part sounds good but I am not going to add an option to disable/skip updates. WhiskyWine updates can be ignored already and the client (Whisky) is just the launcher.

@ultratiem
Copy link

Good stuff @JoshuaBrest. One last thing, please reconsider user-input to restart the app. Just force a restart. Look to projects like Ryujinx and PCSX2 for solid update flows. There's no benefit to user input outside of initiating the update.

Again, great stuff!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants