New issue
Advanced search Search tips

Issue 725925 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Dec 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: iOS
Pri: 3
Type: Bug



Sign in to add a comment

UI Glitch with sign-in promo with animation with bookmarks/recent tabs/other devices

Project Member Reported by jlebel@chromium.org, May 24 2017

Issue description

The sign-in view can be updated too early (when SigninInteractionControler is arriving in the screen). Or the sign-in view is not update to date while the SigninInteractionControler is moving away.

Both cases don't exist for settings.

 * First case:
When clicking on "Continue as" of the sign-in promo, SigninInteractionControler signs in first and then the view appears. There is a glitch for the user since view (bookmarks/recent tabs/other devices) is updated during the animation (with signed in version).

https://drive.google.com/open?id=0ByXziH_JVCGJdDFFQ2d6eEhDc2M

 * Second case:
Start with a cold state, click on Sign-in, type a valid email/password, and then tap on "UNDO" to stop the sign-in. While the sign-in view is disappearing, the sign-in promo can be in a warm state (since an account was added, but not yet removed).

https://drive.google.com/open?id=0ByXziH_JVCGJNmxxVEdLd2JSeGM

 * Second case bis:
Start with a warm state, click on "Continue as", then tap on "UNDO" to stop the sign-in. While the sign-in view is disappearing, the view being is signed in, and is updated to be not signed in while the sign-in view is disapearing.

https://drive.google.com/open?id=0ByXziH_JVCGJR1hfMWQyNGtUZ1k

Related to crbug.com/661794
 

Comment 1 by jlebel@chromium.org, May 24 2017

Description: Show this description

Comment 2 by jlebel@chromium.org, May 24 2017

Description: Show this description

Comment 3 by jlebel@chromium.org, May 24 2017

Description: Show this description
Project Member

Comment 4 by sheriffbot@chromium.org, Jun 26 2017

Status: Available (was: Assigned)
--Chrome Identity automated triaging--

This bug is Assigned and has gone one month without any activity, so it is being moved to Available to indicate that it is not actively being worked on. If you are working on this bug, please mark yourself as the owner and move back to Assigned. Please see https://goo.gl/78kbny for more details. Please remove the Services>SignIn or UI>Browser>Profiles components if this bug isn't related to Chrome Identity.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot

Comment 5 by ew...@chromium.org, Jun 28 2017

Cc: ew...@chromium.org

Comment 6 Deleted

Comment 7 by jlebel@chromium.org, Jul 11 2017

https://chromium-review.googlesource.com/567081 should have fixed most of the problem for the bookmarks. The same solution could be applied to recent tabs/other devices.

Comment 8 by msarda@chromium.org, Dec 18 2017

Status: Started (was: Available)
Project Member

Comment 9 by bugdroid1@chromium.org, Dec 20 2017

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

commit e273042d34106a89730915faea6bc4f8e0e103bc
Author: Jérôme Lebel <jlebel@chromium.org>
Date: Wed Dec 20 11:27:19 2017

[iOS][Signin] Fixing DCHECK and UI glitch in Other Devices tab

When the user taps on the "Continue as ..." button in the sign-in
promo, of the Other Devices tab, the user is signed in at the
beginning of the sync confirmation animation.
Therefore the TabSwitcherModel receives the sign-in notification and
send a notification to the TabSwitcherController to reload before the
end of the animation. While reloading the TabSwitcherController
removes the current TabSwitcherPanelOverlayView that contains the
sign-in promo view and its SigninPromoViewMediator.
The issue is that SigninPromoViewMediator is supposed to live until
the end of the sign-in to handle correctly the metrics (histograms
and user actions).

To avoid that, the SigninPromoViewMediator is now owned by the
TabSwitcherController. And TabSwitcherModel asks its delegate if a
sign-in is in progress. In that case, the sign-in notification is
ignored.
Therefore the UI is not updated while the sign-in interaction is
appearing (see  crbug.com/725925 )

Once the sign-in is finished (cancel or success), the
TabSwitcherController is notified by SigninPromoViewMediator and then
the TabSwitcherModel can be reloaded.

Bug:  795895 ,  725925 
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs
Change-Id: Iefff5975bc251ea39cb06c5d73a4adc135ce317b
Reviewed-on: https://chromium-review.googlesource.com/832391
Commit-Queue: Jérôme Lebel <jlebel@chromium.org>
Reviewed-by: edchin <edchin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#525309}
[modify] https://crrev.com/e273042d34106a89730915faea6bc4f8e0e103bc/ios/chrome/browser/ui/tab_switcher/tab_switcher_controller.mm
[modify] https://crrev.com/e273042d34106a89730915faea6bc4f8e0e103bc/ios/chrome/browser/ui/tab_switcher/tab_switcher_controller_egtest.mm
[modify] https://crrev.com/e273042d34106a89730915faea6bc4f8e0e103bc/ios/chrome/browser/ui/tab_switcher/tab_switcher_model.h
[modify] https://crrev.com/e273042d34106a89730915faea6bc4f8e0e103bc/ios/chrome/browser/ui/tab_switcher/tab_switcher_model.mm
[modify] https://crrev.com/e273042d34106a89730915faea6bc4f8e0e103bc/ios/chrome/browser/ui/tab_switcher/tab_switcher_model_unittest.mm
[modify] https://crrev.com/e273042d34106a89730915faea6bc4f8e0e103bc/ios/chrome/browser/ui/tab_switcher/tab_switcher_panel_overlay_view.h
[modify] https://crrev.com/e273042d34106a89730915faea6bc4f8e0e103bc/ios/chrome/browser/ui/tab_switcher/tab_switcher_panel_overlay_view.mm

Project Member

Comment 10 by bugdroid1@chromium.org, Dec 21 2017

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

commit 0e708e7b0bcc70258175ef83de2180e589dbd022
Author: Jérôme Lebel <jlebel@chromium.org>
Date: Thu Dec 21 17:01:38 2017

[iOS][Signin] Cleanup in TabSwitcherPanelOverlayView

This patch is related to crrev.com/c/832391.
The goal is to remove the knowledge of SigninPromoViewMediator from
TabSwitcherPanelOverlayView.

Bug:  795895 ,  725925 
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs
Change-Id: I4ef0ee97d0f4adf91c40f5676ad53b2e53700fe5
Reviewed-on: https://chromium-review.googlesource.com/836613
Reviewed-by: edchin <edchin@chromium.org>
Commit-Queue: Jérôme Lebel <jlebel@chromium.org>
Cr-Commit-Position: refs/heads/master@{#525717}
[modify] https://crrev.com/0e708e7b0bcc70258175ef83de2180e589dbd022/ios/chrome/browser/ui/tab_switcher/tab_switcher_controller.mm
[modify] https://crrev.com/0e708e7b0bcc70258175ef83de2180e589dbd022/ios/chrome/browser/ui/tab_switcher/tab_switcher_panel_overlay_view.h
[modify] https://crrev.com/0e708e7b0bcc70258175ef83de2180e589dbd022/ios/chrome/browser/ui/tab_switcher/tab_switcher_panel_overlay_view.mm

Status: Fixed (was: Started)
The rest has been fixed with:
crrev.com/c/789078
crrev.com/c/735722
crrev.com/c/735722

Sign in to add a comment