Commit b30005b6 authored by Xi Han's avatar Xi Han Committed by Commit Bot

[Start] Show tab switcher as SwipeDown gesture on URL bar.

Bug: 1121728
Change-Id: Ib2b0c0dcf9ddccfdb9408d2b219c579da083241d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2398898
Commit-Queue: Xi Han <hanxi@chromium.org>
Reviewed-by: default avatarWei-Yin Chen (陳威尹) <wychen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#805741}
parent 2c1a286d
...@@ -531,10 +531,10 @@ class StartSurfaceMediator ...@@ -531,10 +531,10 @@ class StartSurfaceMediator
mIsIncognito = mTabModelSelector.isIncognitoSelected(); mIsIncognito = mTabModelSelector.isIncognitoSelected();
mPropertyModel.set(IS_INCOGNITO, mIsIncognito); mPropertyModel.set(IS_INCOGNITO, mIsIncognito);
// if OvervieModeState is NOT_SHOWN, default to SHOWING_HOMEPAGE. This should only // if OvervieModeState is NOT_SHOWN, default to SHOWING_TABSWITCHER. This should only
// happen when entering Start through SwipeDown gesture on URL bar. // happen when entering Start through SwipeDown gesture on URL bar.
if (mOverviewModeState == OverviewModeState.NOT_SHOWN) { if (mOverviewModeState == OverviewModeState.NOT_SHOWN) {
mOverviewModeState = OverviewModeState.SHOWING_HOMEPAGE; mOverviewModeState = OverviewModeState.SHOWING_TABSWITCHER;
} }
// set OverviewModeState // set OverviewModeState
...@@ -744,9 +744,11 @@ class StartSurfaceMediator ...@@ -744,9 +744,11 @@ class StartSurfaceMediator
if (mSecondaryTasksSurfacePropertyModel == null) { if (mSecondaryTasksSurfacePropertyModel == null) {
mSecondaryTasksSurfaceController = mSecondaryTasksSurfaceInitializer.initialize(); mSecondaryTasksSurfaceController = mSecondaryTasksSurfaceInitializer.initialize();
} }
mSecondaryTasksSurfacePropertyModel.set(IS_FAKE_SEARCH_BOX_VISIBLE, if (mSecondaryTasksSurfacePropertyModel != null) {
mIsIncognito && mOverviewModeState == OverviewModeState.SHOWN_HOMEPAGE); mSecondaryTasksSurfacePropertyModel.set(IS_FAKE_SEARCH_BOX_VISIBLE,
mSecondaryTasksSurfacePropertyModel.set(IS_INCOGNITO, mIsIncognito); mIsIncognito && mOverviewModeState == OverviewModeState.SHOWN_HOMEPAGE);
mSecondaryTasksSurfacePropertyModel.set(IS_INCOGNITO, mIsIncognito);
}
if (mSecondaryTasksSurfaceController != null) { if (mSecondaryTasksSurfaceController != null) {
mSecondaryTasksSurfaceController.showOverview(false); mSecondaryTasksSurfaceController.showOverview(false);
} }
......
...@@ -323,6 +323,11 @@ public class StartSurfaceMediatorUnitTest { ...@@ -323,6 +323,11 @@ public class StartSurfaceMediatorUnitTest {
.addOverviewModeObserver(mOverviewModeObserverCaptor.capture()); .addOverviewModeObserver(mOverviewModeObserverCaptor.capture());
assertThat(mediator.getOverviewState(), equalTo(OverviewModeState.NOT_SHOWN)); assertThat(mediator.getOverviewState(), equalTo(OverviewModeState.NOT_SHOWN));
// Sets the current OvervieModeState to SHOWING_START before calling the
// {@link StartSurfaceMediator#showOverview()}. This is because if the current
// OvervieModeState is NOT_SHOWN, the state will be set default to SHOWING_TABSWITCHER in
// {@link StartSurfaceMediator#showOverview()}.
mediator.setOverviewState(OverviewModeState.SHOWING_START);
mediator.showOverview(false); mediator.showOverview(false);
verify(mMainTabGridController).showOverview(eq(false)); verify(mMainTabGridController).showOverview(eq(false));
...@@ -368,6 +373,11 @@ public class StartSurfaceMediatorUnitTest { ...@@ -368,6 +373,11 @@ public class StartSurfaceMediatorUnitTest {
.addOverviewModeObserver(mOverviewModeObserverCaptor.capture()); .addOverviewModeObserver(mOverviewModeObserverCaptor.capture());
assertThat(mediator.getOverviewState(), equalTo(OverviewModeState.NOT_SHOWN)); assertThat(mediator.getOverviewState(), equalTo(OverviewModeState.NOT_SHOWN));
// Sets the current OvervieModeState to SHOWING_START before calling the
// {@link StartSurfaceMediator#showOverview()}. This is because if the current
// OvervieModeState is NOT_SHOWN, the state will be set default to SHOWING_TABSWITCHER in
// {@link StartSurfaceMediator#showOverview()}.
mediator.setOverviewState(OverviewModeState.SHOWING_START);
mediator.showOverview(false); mediator.showOverview(false);
verify(mMainTabGridController).showOverview(eq(false)); verify(mMainTabGridController).showOverview(eq(false));
...@@ -414,6 +424,11 @@ public class StartSurfaceMediatorUnitTest { ...@@ -414,6 +424,11 @@ public class StartSurfaceMediatorUnitTest {
.addOverviewModeObserver(mOverviewModeObserverCaptor.capture()); .addOverviewModeObserver(mOverviewModeObserverCaptor.capture());
assertThat(mediator.getOverviewState(), equalTo(OverviewModeState.NOT_SHOWN)); assertThat(mediator.getOverviewState(), equalTo(OverviewModeState.NOT_SHOWN));
// Sets the current OvervieModeState to SHOWING_START before calling the
// {@link StartSurfaceMediator#showOverview()}. This is because if the current
// OvervieModeState is NOT_SHOWN, the state will be set default to SHOWING_TABSWITCHER in
// {@link StartSurfaceMediator#showOverview()}.
mediator.setOverviewState(OverviewModeState.SHOWING_START);
mediator.showOverview(false); mediator.showOverview(false);
verify(mMainTabGridController).showOverview(eq(false)); verify(mMainTabGridController).showOverview(eq(false));
...@@ -1364,7 +1379,7 @@ public class StartSurfaceMediatorUnitTest { ...@@ -1364,7 +1379,7 @@ public class StartSurfaceMediatorUnitTest {
assertThat(mediator.getOverviewState(), equalTo(OverviewModeState.NOT_SHOWN)); assertThat(mediator.getOverviewState(), equalTo(OverviewModeState.NOT_SHOWN));
mediator.showOverview(false); mediator.showOverview(false);
assertThat(mediator.getOverviewState(), equalTo(OverviewModeState.SHOWN_HOMEPAGE)); assertThat(mediator.getOverviewState(), equalTo(OverviewModeState.SHOWN_TABSWITCHER));
} }
@Test @Test
...@@ -1500,6 +1515,11 @@ public class StartSurfaceMediatorUnitTest { ...@@ -1500,6 +1515,11 @@ public class StartSurfaceMediatorUnitTest {
.when(mBrowserControlsStateProvider) .when(mBrowserControlsStateProvider)
.addObserver(mBrowserControlsStateProviderCaptor.capture()); .addObserver(mBrowserControlsStateProviderCaptor.capture());
StartSurfaceMediator mediator = createStartSurfaceMediator(SurfaceMode.SINGLE_PANE, false); StartSurfaceMediator mediator = createStartSurfaceMediator(SurfaceMode.SINGLE_PANE, false);
// Sets the current OvervieModeState to SHOWING_START before calling the
// {@link StartSurfaceMediator#showOverview()}. This is because if the current
// OvervieModeState is NOT_SHOWN, the state will be set default to SHOWING_TABSWITCHER in
// {@link StartSurfaceMediator#showOverview()}.
mediator.setOverviewState(OverviewModeState.SHOWING_START);
mediator.showOverview(false); mediator.showOverview(false);
verify(mBrowserControlsStateProvider).addObserver(ArgumentMatchers.any()); verify(mBrowserControlsStateProvider).addObserver(ArgumentMatchers.any());
...@@ -1527,6 +1547,11 @@ public class StartSurfaceMediatorUnitTest { ...@@ -1527,6 +1547,11 @@ public class StartSurfaceMediatorUnitTest {
.addOverviewModeObserver(mOverviewModeObserverCaptor.capture()); .addOverviewModeObserver(mOverviewModeObserverCaptor.capture());
assertThat(mediator.getOverviewState(), equalTo(OverviewModeState.NOT_SHOWN)); assertThat(mediator.getOverviewState(), equalTo(OverviewModeState.NOT_SHOWN));
// Sets the current OvervieModeState to SHOWING_START before calling the
// {@link StartSurfaceMediator#showOverview()}. This is because if the current
// OvervieModeState is NOT_SHOWN, the state will be set default to SHOWING_TABSWITCHER in
// {@link StartSurfaceMediator#showOverview()}.
mediator.setOverviewState(OverviewModeState.SHOWING_START);
mediator.showOverview(false); mediator.showOverview(false);
assertThat(mediator.getOverviewState(), equalTo(OverviewModeState.SHOWN_HOMEPAGE)); assertThat(mediator.getOverviewState(), equalTo(OverviewModeState.SHOWN_HOMEPAGE));
assertThat(mPropertyModel.get(IS_EXPLORE_SURFACE_VISIBLE), equalTo(false)); assertThat(mPropertyModel.get(IS_EXPLORE_SURFACE_VISIBLE), equalTo(false));
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment