Skip to content

Conversation

tobe2098
Copy link
Contributor

@tobe2098 tobe2098 commented Oct 8, 2025

The PR adds an About section, similar to the one found in the tray menu, that shows the multipass and multipassd versions and the Canonical copyright. Tested in Ubuntu and Windows 11.

Fixes #4201
MULTI-2294

@tobe2098 tobe2098 self-assigned this Oct 8, 2025
@tobe2098 tobe2098 force-pushed the gui/settings-about-section branch from 626223a to 22835c7 Compare October 8, 2025 15:13
@codecov
Copy link

codecov bot commented Oct 8, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 89.05%. Comparing base (2eb4538) to head (5648d1f).

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #4420   +/-   ##
=======================================
  Coverage   89.05%   89.05%           
=======================================
  Files         240      240           
  Lines       15243    15243           
=======================================
  Hits        13575    13575           
  Misses       1668     1668           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@levkropp
Copy link
Contributor

levkropp commented Oct 8, 2025

Hi @tobe2098 , is this PR ready for a first round of review? Just some quick comments from looking at this quickly

image

It looks like you followed the tray menu's style exactly, but I think it would look better if multipass version and multipassd version followed the style of the other settings on the setting page (same font and color as Driver, Bridged network, written as Multipass version and Multipass daemon version instead, etc)

I think the version text would look nicer if it was either right-justified or centered. I'm slightly preferring centered since that aligns it with the Click to Copy tooltip and make it more obvious that this is not a setting you can change

Since we're not limited to the ASCII of a tray menu, instead of (C) we should probably just use the actual copyright symbol ©


Food for thought:

Why do we show both the multipass and multipassd versions to end users in the GUI on the tray menu and now here? In 99% of normal use cases they will be the same. It might be an interesting idea to always show just Multipass version and if there's a mismatch between client and daemon, THEN show the daemon version too, or even have a popup on GUI startup if a version mismatch is detected

@levkropp levkropp self-requested a review October 8, 2025 16:46
@tobe2098
Copy link
Contributor Author

tobe2098 commented Oct 9, 2025

It is ready, thank you for the review. I think you are correct, homogeneous style is better.

The different versions part is only really useful for us, since we can have the daemon running, rebuild and think that we are already in the new build fully, even though the daemon is still in the previous version. I agree that only showing it when it is different makes more sense, maybe with some warning color. The additional pop-up also makes sense, but I would keep the About section part. We can also apply the mismatch policy to the TrayMenu as well, since it has the same implications/uses. What do you think?

@tobe2098 tobe2098 force-pushed the gui/settings-about-section branch from 22835c7 to 30e3cbd Compare October 9, 2025 10:59
@sharder996 sharder996 requested a review from amylily1011 October 9, 2025 13:06
@levkropp
Copy link
Contributor

levkropp commented Oct 9, 2025

This is looking a lot better, thanks @tobe2098 !

image

My only nitpick is to remove the colon from Multipass version since we dont use colons for the rest of the headings. What do you think @amylily1011 ?

@amylily1011
Copy link
Collaborator

LGTM! +1 with @levkropp on the colon.

@tobe2098 tobe2098 force-pushed the gui/settings-about-section branch from 30e3cbd to 93b724c Compare October 9, 2025 16:23
@tobe2098
Copy link
Contributor Author

tobe2098 commented Oct 9, 2025

Done!

Copy link
Contributor

@levkropp levkropp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The GUI looks good to me now! When there is a version mismatch I see the daemon version show up in the about section

image

However it seems that the tray menu is not showing the daemon version for me with these new changes now when there is a version mismatch, only the Multipass version:

image

@tobe2098
Copy link
Contributor Author

That is somewhat strange, my tray does work properly in Ubuntu.
image
In which environment are you testing this?

@levkropp
Copy link
Contributor

That is somewhat strange, my tray does work properly in Ubuntu. In which environment are you testing this?

I was testing this on KDE with Kubuntu 24.04, so it is entirely possible that this issue is with KDE and how Flutter handles tray icons on KDE. I will test these changes on GNOME now as well

@tobe2098 tobe2098 requested a review from levkropp October 10, 2025 12:30
@levkropp
Copy link
Contributor

levkropp commented Oct 10, 2025

Alright so I tested it on GNOME as well, and the issue actually is that if you turn off the daemon and the GUI spins with "waiting for daemon", and THEN you run a new daemon with a different version than the client, the Settings tab updates to show both multipass and daemon version but the tray menu doesn't. This is probably because we're re-checking the provider for the multipass version for the settings page but not doing something similar for tray menu

@tobe2098
Copy link
Contributor Author

I'll see if I can fix it. I was testing the other way around, that is why I did not see it.

@tobe2098
Copy link
Contributor Author

This should keep the position consistent while having the same behavior as in the GUI

@tobe2098 tobe2098 force-pushed the gui/settings-about-section branch 3 times, most recently from 24b6cd1 to ba3ff71 Compare October 10, 2025 14:29
Copy link
Contributor

@levkropp levkropp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM now! Working in GNOME (but still not KDE, but that's almost certainly something to do with how Flutter and KDE interact, and not with our code).

@tobe2098
Copy link
Contributor Author

tobe2098 commented Oct 10, 2025

I am somewhat interested: In what sense does it not work? Does it still show up always or is it disordered?

@tobe2098
Copy link
Contributor Author

tobe2098 commented Oct 10, 2025

What do you think @amylily1011, do you find the new changes to the version reporting in the GUI agreeable?

Copy link
Contributor

@levkropp levkropp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am somewhat interested: In what sense does it not work? Does it still show up always or is it disordered?

It is still never showing up when the daemon and client versions are different.

Also, merging this would break the riverpod PR, and we'd probably need to handle the way providers are implemented differently once that PR is merged and we rebase on main. Also I think there are some issues with daemonVersionProvider so let's wait to merge this for a little (sorry for the hasty approval)

@tobe2098
Copy link
Contributor Author

No worries there. It can wait, it is nothing critical

@amylily1011
Copy link
Collaborator

The UI LGTM! Thanks for the update 😃

@tobe2098 tobe2098 force-pushed the gui/settings-about-section branch from ba3ff71 to 73a95eb Compare October 22, 2025 08:28
@tobe2098 tobe2098 force-pushed the gui/settings-about-section branch from 73a95eb to 5648d1f Compare October 22, 2025 08:31
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.

Show "About" in the GUI window

3 participants