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

Issue 824921 link

Starred by 1 user

Issue metadata

Status: Verified
Owner:
Closed: Mar 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: iOS
Pri: 2
Type: Bug
Q1



Sign in to add a comment

Closing all incognito tabs disables the "Done" button

Project Member Reported by ghendel@google.com, Mar 22 2018

Issue description

Canary build from 3/22

What steps will reproduce the problem?
(1) Make sure to have a few tabs open, both incongnito and non-incognito
(2) Go to a non-incognito tab
(3) Tap on tab switcher
(4) Swipe left to see list of incognito tabs
(5) Close them all by either hitting 'x' or 'Close all'

Observed behavior:
The "Done" button gets disabled in the incognito tab switcher. 

Expected result:
The "Done" button should persist since the user can still tap on it to navigate back to the tab they originally came from (a non-incognito tab that wasn't closed yet).

More details on logic of disabling the "Done" button:
If the last-opened-tab is still open, the "Done" button should be enabled and always navigates back to it. If the last-opened-tab is closed from the tab switcher, the next tab over is highlighted with a ring and would open if user hits "Done." 

If the user closes the last-opened-tab and all other tabs in that section (incognito or non-incognito) then and only then is the "Done" button disabled and grayed out.
 


 

Comment 1 by ghendel@google.com, Mar 22 2018

Copying Khalil, Pete, and Mardini in case they have any amendments to the logic described in this bug.

Comment 2 by ghendel@google.com, Mar 22 2018

Labels: Proj-UIRefresh

Comment 3 by edchin@chromium.org, Mar 23 2018

Labels: MS-Tab-Grid Q1 S-Tab-Grid-Polish
Status: Assigned (was: Untriaged)

Comment 4 by edchin@chromium.org, Mar 23 2018

Status: Started (was: Assigned)
A CL is in-flight! With a quickness...

Comment 5 by edchin@chromium.org, Mar 23 2018

Status: Fixed (was: Started)
Fixed with the logic described in this bug. But marq@ mentioned in the CL that there might be edge cases. Please file a new bug if you see any edge cases that need to be handled differently.
Project Member

Comment 6 by bugdroid1@chromium.org, Mar 23 2018

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

commit 1bf8681e12d1f7b38c976f5a6fa5675dfc249d27
Author: edchin <edchin@chromium.org>
Date: Fri Mar 23 14:59:12 2018

[ios] Fix faulty done button logic

The Done button logic was faulty in two ways:
1) Enabling/disabling logic was flawed.
2) Tapping Done would show incognito when it should show the regular
tab. (And vice-versa).

Done button should only disable after the original page (incognito or
regular tabs) where the user entered the tab grid is depleted of tabs.

This CL fixes this by bookkeeping the |originalPage| that the user
entered the tab grid. This CL also modifies the
TabPresentationDelegate's |-showActiveTab| so that the intended page
is specified in the method. This allows the TabGridViewController
to pass the |originalPage| for Done button taps, and the |currentPage|
for new tab button taps or tab cell taps.

Bug:  824921 ,  824912 
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs
Change-Id: Ie81721a181f50b63a92722bf507986aa9596a4f5
Reviewed-on: https://chromium-review.googlesource.com/977561
Reviewed-by: Mark Cogan <marq@chromium.org>
Reviewed-by: edchin <edchin@chromium.org>
Commit-Queue: edchin <edchin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#545449}
[modify] https://crrev.com/1bf8681e12d1f7b38c976f5a6fa5675dfc249d27/ios/chrome/browser/ui/tab_grid/tab_grid_coordinator.mm
[modify] https://crrev.com/1bf8681e12d1f7b38c976f5a6fa5675dfc249d27/ios/chrome/browser/ui/tab_grid/tab_grid_view_controller.h
[modify] https://crrev.com/1bf8681e12d1f7b38c976f5a6fa5675dfc249d27/ios/chrome/browser/ui/tab_grid/tab_grid_view_controller.mm

Status: Verified (was: Fixed)
Issue verified 
Version: Chrome Canary  67.0.3382.0
Device: iPhone 6 Plus
iOS: 11.2.6

"Done" button no longer gets disabled in the incognito tab switcher, when tab switcher is initiated from a non incognito tab.
https://drive.google.com/open?id=1pxmIJi7pLksuSDUfLyUO3edY7amtAXPh

Sign in to add a comment