New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 914943 link

Starred by 7 users

Issue metadata

Status: Started
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug



Sign in to add a comment

Upgrade UI for Crostini

Project Member Reported by tbuck...@chromium.org, Dec 13

Issue description

To unblock Shared Folders, we need an upgrade UI to show while we are updating the uid map. We will also need to update how we launch Crostini to ignore the timeout in this case.
 
Hi, Please see the attached mock and let me know if you have any feedback. 
Linux-Upgrading-dialog-v1.png
884 KB View Download
All, please see the latest mock with updated strings.

Strings for the dialog:

Title: 
Linux is upgrading

Sub text: 
Your app will open when the upgrade is finished. Upgrades can take a few minutes.

Action: 
OK
Linux-Upgrading-dialog-v2.png
888 KB View Download
Cc: tbuck...@chromium.org sbroslawsky@chromium.org
Owner: nverne@chromium.org
@nverne is there someone in SYD who can add this?
Labels: -Pri-2 Pri-1
Owner: benwells@chromium.org
What is the action meant to do - just close the dialog? What happens if the process finishes without the user clicking OK?
Cc: jopra@google.com timloh@chromium.org
+cc timloh / jopra for visibility. Feel free to take ownership of this.
Owner: jopra@chromium.org
Few questions about the design for this:
1. Do we expect the user to dismiss the dialog?
2. If the upgrade fails somehow, do we want to bring the dialog back? (I assume we do, with an error message).
3. If the upgrade succeeds, do we want to dialog to be closed to display a success?
Status: Started (was: Assigned)
Uploading a possible alternative design for your consideration.

It uses an infinite progress bar rather than an OK button to show that there is work being done and that there is no user interaction required.
Screenshot from 2018-12-21 14-52-44.png
6.1 KB View Download
Thanks Josh! We explored using an infinite progress bar, but then thought we could simplify things without it since we'll still have the spinner on the app icon. Just informing the user that it'll take longer than expected should be enough.

To your questions in #9:

1. The user should be able to dismiss the dialog and go on with other tasks while the upgrade occurs.

2. We will need a way to show errors, potentially as notifications. Are there any specific errors we should handle, or can we only show a generic "Error occurred during upgrade"?

3. I don't think we need a success state. I'm open to closing the dialog automatically when the upgrade finishes, though I'm worried that could be surprising (eg. the user goes to click "OK" right when the upgrade completes and clicks something else accidentally, or the upgrade completes quickly and the dialog just flashes).
It would be less surprising for users, IMO, if we use a notification instead of a dialog. Notifications have close boxes, and they can go away on their own.  
Thanks Tom,

Sudha and I have grabbed a block tomorrow to sync on this (so that the behaviour I implement matches the intent of the design).

1. We can use 'OK' for this, though I had assumed this would lead to use confusion / annoyance.
2. There's two different start results (unknown and container_start_failed) though we may expand these later. I don't think we have an error message for the remapping failing or for a timeout.
3. I agree, though to me this suggests that a notification may be more appropriate.

Will follow up with Sudha.
3. Notification may make sense, though having the app window finally launch could be enough of an indication that the upgrade has completed.

Comment 15 by jopra@chromium.org, Yesterday (32 hours ago)

CL adding dialog up for review here: https://chromium-review.googlesource.com/c/chromium/src/+/1399690

Note: This doesn't include error messages or a notification.
Project Member

Comment 16 by bugdroid1@chromium.org, Today (23 hours ago)

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f80ffb892bfa3be54ebeb432072560b00d03ef4d

commit f80ffb892bfa3be54ebeb432072560b00d03ef4d
Author: Josh Pratt <jopra@chromium.org>
Date: Tue Jan 22 07:13:51 2019

Creates a dialog for Crostini Container Upgrades

This is to give feedback to the user when the container start is
delayed remapping rootfs uids/gids.

The dialog will close when the remapping is complete.

Bug: 914943
Change-Id: Ic0fecdc76827887d3aebfaa116b0f53a29853ab9
Reviewed-on: https://chromium-review.googlesource.com/c/1399690
Commit-Queue: Josh Pratt <jopra@chromium.org>
Reviewed-by: Nicholas Verne <nverne@chromium.org>
Reviewed-by: Trent Apted <tapted@chromium.org>
Cr-Commit-Position: refs/heads/master@{#624738}
[modify] https://crrev.com/f80ffb892bfa3be54ebeb432072560b00d03ef4d/chrome/app/chromeos_strings.grdp
[modify] https://crrev.com/f80ffb892bfa3be54ebeb432072560b00d03ef4d/chrome/browser/chromeos/crostini/crostini_manager.cc
[modify] https://crrev.com/f80ffb892bfa3be54ebeb432072560b00d03ef4d/chrome/browser/chromeos/crostini/crostini_util.h
[modify] https://crrev.com/f80ffb892bfa3be54ebeb432072560b00d03ef4d/chrome/browser/ui/BUILD.gn
[modify] https://crrev.com/f80ffb892bfa3be54ebeb432072560b00d03ef4d/chrome/browser/ui/browser_dialogs.h
[add] https://crrev.com/f80ffb892bfa3be54ebeb432072560b00d03ef4d/chrome/browser/ui/views/crostini/crostini_upgrade_container_view.cc
[add] https://crrev.com/f80ffb892bfa3be54ebeb432072560b00d03ef4d/chrome/browser/ui/views/crostini/crostini_upgrade_container_view.h
[add] https://crrev.com/f80ffb892bfa3be54ebeb432072560b00d03ef4d/chrome/browser/ui/views/crostini/crostini_upgrade_container_view_browsertest.cc
[modify] https://crrev.com/f80ffb892bfa3be54ebeb432072560b00d03ef4d/chrome/test/BUILD.gn
[modify] https://crrev.com/f80ffb892bfa3be54ebeb432072560b00d03ef4d/tools/metrics/histograms/enums.xml

Sign in to add a comment