New issue
Advanced search Search tips

Issue 783190 link

Starred by 1 user

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: iOS
Pri: 3
Type: ----



Sign in to add a comment

Allow tabs to be opened programmatically while switcher animations are running or pending

Project Member Reported by rohitrao@chromium.org, Nov 9 2017

Issue description

A number of EG tests used to have code that did the following:

  chrome_test_util::CloseAllTabsInCurrentMode();
  chrome_test_util::OpenNewTab();

Closing all tabs triggered the tabs switcher animation, but then OpenNewTab() was called before the animation could complete.  In practice, this ended up running both switcher animations concurrently, which is a weird state to be in.

Switching to BVC presentation broke this code entirely, because the VC dismissal hasn't even taken effect yet when OpenNewTab() is called.  This was resolved by adding a delayUntilIdle after closing all tabs.

The VC presentation/dismissal here should be reworked so that it becomes possible to interrupt/reverse an existing or pending transition.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Nov 10 2017

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

commit 8d1ec2f063a7855919d303f24e48b91a9e64acca
Author: Rohit Rao <rohitrao@chromium.org>
Date: Fri Nov 10 00:42:50 2017

[ios] Fixes EG tests that close and immediately reopen tabs.

After closing the last tab, tests need to wait for the tab switcher animations
to complete before opening new tabs.  Failing to wait can put the app into an
inconsistent state.

BUG=768563,783190

Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs
Change-Id: I4d9434e7d66cbde036c32d2b1d4d6d0733cde031
Reviewed-on: https://chromium-review.googlesource.com/760480
Commit-Queue: Rohit Rao (ping after 24h) <rohitrao@chromium.org>
Reviewed-by: Mike Baxley <baxley@chromium.org>
Cr-Commit-Position: refs/heads/master@{#515376}
[modify] https://crrev.com/8d1ec2f063a7855919d303f24e48b91a9e64acca/ios/chrome/browser/metrics/tab_usage_recorder_egtest.mm
[modify] https://crrev.com/8d1ec2f063a7855919d303f24e48b91a9e64acca/ios/chrome/browser/net/cookies_egtest.mm
[modify] https://crrev.com/8d1ec2f063a7855919d303f24e48b91a9e64acca/ios/chrome/browser/ui/content_suggestions/content_suggestions_egtest.mm
[modify] https://crrev.com/8d1ec2f063a7855919d303f24e48b91a9e64acca/ios/chrome/browser/ui/ntp/recent_tabs/recent_tabs_table_egtest.mm

Sign in to add a comment