Commit afd16b59 authored by Jinsuk Kim's avatar Jinsuk Kim Committed by Chromium LUCI CQ

Toolbar: Remove deps on TrackerFactory

Removes deps on TrackerFactory in ToolbarTabControllerImpl and
move it to the modularized toolbar/. There are a few more classes
that can also be moved:

ToolbarTabControllerImplTest.java
ToolbarTabControllerImpl.java
top/IncognitoSwitchCoordinator.java
top/IncognitoSwitchProperties.java
top/IncognitoSwitchViewBinder.java
top/TabSwitcherActionMenuCoordinator.java
top/TabSwitcherActionMenuRenderTest.java

Bug: 1127732
Change-Id: I0543ab61e80015f5c34ff58640dacff799b109ff
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2639067Reviewed-by: default avatarTheresa  <twellington@chromium.org>
Commit-Queue: Jinsuk Kim <jinsukkim@chromium.org>
Cr-Commit-Position: refs/heads/master@{#845567}
parent 2e11a25f
......@@ -82,10 +82,8 @@ chrome_java_resources = [
"java/res/drawable-hdpi/ic_suggestion_magnifier.png",
"java/res/drawable-hdpi/ic_warning_white_24dp.png",
"java/res/drawable-hdpi/ic_watch_later_24dp.png",
"java/res/drawable-hdpi/incognito_simple.png",
"java/res/drawable-hdpi/incognito_small.png",
"java/res/drawable-hdpi/incognito_splash.png",
"java/res/drawable-hdpi/incognito_switch.png",
"java/res/drawable-hdpi/infobar_chrome.png",
"java/res/drawable-hdpi/infobar_mobile_friendly.png",
"java/res/drawable-hdpi/infobar_restore.png",
......@@ -216,10 +214,8 @@ chrome_java_resources = [
"java/res/drawable-mdpi/ic_suggestion_magnifier.png",
"java/res/drawable-mdpi/ic_warning_white_24dp.png",
"java/res/drawable-mdpi/ic_watch_later_24dp.png",
"java/res/drawable-mdpi/incognito_simple.png",
"java/res/drawable-mdpi/incognito_small.png",
"java/res/drawable-mdpi/incognito_splash.png",
"java/res/drawable-mdpi/incognito_switch.png",
"java/res/drawable-mdpi/infobar_chrome.png",
"java/res/drawable-mdpi/infobar_mobile_friendly.png",
"java/res/drawable-mdpi/infobar_restore.png",
......@@ -338,10 +334,8 @@ chrome_java_resources = [
"java/res/drawable-xhdpi/ic_suggestion_magnifier.png",
"java/res/drawable-xhdpi/ic_warning_white_24dp.png",
"java/res/drawable-xhdpi/ic_watch_later_24dp.png",
"java/res/drawable-xhdpi/incognito_simple.png",
"java/res/drawable-xhdpi/incognito_small.png",
"java/res/drawable-xhdpi/incognito_splash.png",
"java/res/drawable-xhdpi/incognito_switch.png",
"java/res/drawable-xhdpi/infobar_chrome.png",
"java/res/drawable-xhdpi/infobar_mobile_friendly.png",
"java/res/drawable-xhdpi/infobar_restore.png",
......@@ -439,10 +433,8 @@ chrome_java_resources = [
"java/res/drawable-xxhdpi/ic_suggestion_magnifier.png",
"java/res/drawable-xxhdpi/ic_warning_white_24dp.png",
"java/res/drawable-xxhdpi/ic_watch_later_24dp.png",
"java/res/drawable-xxhdpi/incognito_simple.png",
"java/res/drawable-xxhdpi/incognito_small.png",
"java/res/drawable-xxhdpi/incognito_splash.png",
"java/res/drawable-xxhdpi/incognito_switch.png",
"java/res/drawable-xxhdpi/infobar_chrome.png",
"java/res/drawable-xxhdpi/infobar_mobile_friendly.png",
"java/res/drawable-xxhdpi/infobar_restore.png",
......@@ -537,10 +529,8 @@ chrome_java_resources = [
"java/res/drawable-xxxhdpi/ic_suggestion_magnifier.png",
"java/res/drawable-xxxhdpi/ic_warning_white_24dp.png",
"java/res/drawable-xxxhdpi/ic_watch_later_24dp.png",
"java/res/drawable-xxxhdpi/incognito_simple.png",
"java/res/drawable-xxxhdpi/incognito_small.png",
"java/res/drawable-xxxhdpi/incognito_splash.png",
"java/res/drawable-xxxhdpi/incognito_switch.png",
"java/res/drawable-xxxhdpi/infobar_chrome.png",
"java/res/drawable-xxxhdpi/infobar_mobile_friendly.png",
"java/res/drawable-xxxhdpi/infobar_restore.png",
......@@ -902,7 +892,6 @@ chrome_java_resources = [
"java/res/layout/sync_passphrase_types.xml",
"java/res/layout/sync_promo_view.xml",
"java/res/layout/tab_switcher_action_menu_layout.xml",
"java/res/layout/tab_switcher_toolbar.xml",
"java/res/layout/tile_no_text_view.xml",
"java/res/layout/tile_no_text_view_condensed.xml",
"java/res/layout/tile_view_modern.xml",
......@@ -924,8 +913,6 @@ chrome_java_resources = [
"java/res/menu/custom_tabs_menu.xml",
"java/res/menu/history_manager_menu.xml",
"java/res/menu/languages_action_bar_menu.xml",
"java/res/menu/main_menu.xml",
"java/res/menu/main_menu_regroup.xml",
"java/res/menu/password_entry_editor_action_bar_menu.xml",
"java/res/menu/password_entry_viewer_action_bar_menu.xml",
"java/res/menu/prefeditor_editor_menu.xml",
......
......@@ -1380,22 +1380,17 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/toolbar/ToolbarColors.java",
"java/src/org/chromium/chrome/browser/toolbar/ToolbarDataProvider.java",
"java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java",
"java/src/org/chromium/chrome/browser/toolbar/ToolbarTabControllerImpl.java",
"java/src/org/chromium/chrome/browser/toolbar/menu_button/MenuButton.java",
"java/src/org/chromium/chrome/browser/toolbar/menu_button/MenuButtonCoordinator.java",
"java/src/org/chromium/chrome/browser/toolbar/menu_button/MenuButtonMediator.java",
"java/src/org/chromium/chrome/browser/toolbar/menu_button/MenuButtonProperties.java",
"java/src/org/chromium/chrome/browser/toolbar/menu_button/MenuButtonViewBinder.java",
"java/src/org/chromium/chrome/browser/toolbar/top/IncognitoSwitchCoordinator.java",
"java/src/org/chromium/chrome/browser/toolbar/top/IncognitoSwitchProperties.java",
"java/src/org/chromium/chrome/browser/toolbar/top/IncognitoSwitchViewBinder.java",
"java/src/org/chromium/chrome/browser/toolbar/top/OptionalBrowsingModeButtonController.java",
"java/src/org/chromium/chrome/browser/toolbar/top/StartSurfaceToolbarCoordinator.java",
"java/src/org/chromium/chrome/browser/toolbar/top/StartSurfaceToolbarMediator.java",
"java/src/org/chromium/chrome/browser/toolbar/top/StartSurfaceToolbarProperties.java",
"java/src/org/chromium/chrome/browser/toolbar/top/StartSurfaceToolbarView.java",
"java/src/org/chromium/chrome/browser/toolbar/top/StartSurfaceToolbarViewBinder.java",
"java/src/org/chromium/chrome/browser/toolbar/top/TabSwitcherActionMenuCoordinator.java",
"java/src/org/chromium/chrome/browser/toolbar/top/TabSwitcherModeTTCoordinatorPhone.java",
"java/src/org/chromium/chrome/browser/toolbar/top/TabSwitcherModeTTPhone.java",
"java/src/org/chromium/chrome/browser/toolbar/top/Toolbar.java",
......
......@@ -589,7 +589,6 @@ chrome_test_java_sources = [
"javatests/src/org/chromium/chrome/browser/toolbar/VoiceToolbarButtonControllerTest.java",
"javatests/src/org/chromium/chrome/browser/toolbar/top/AdaptiveToolbarTest.java",
"javatests/src/org/chromium/chrome/browser/toolbar/top/BrandColorTest.java",
"javatests/src/org/chromium/chrome/browser/toolbar/top/TabSwitcherActionMenuRenderTest.java",
"javatests/src/org/chromium/chrome/browser/toolbar/top/TabSwitcherActionMenuTest.java",
"javatests/src/org/chromium/chrome/browser/toolbar/top/ToolbarButtonIphTest.java",
"javatests/src/org/chromium/chrome/browser/toolbar/top/ToolbarPhoneTest.java",
......
......@@ -44,10 +44,6 @@
<dimen name="tab_title_favicon_start_padding">10dp</dimen>
<dimen name="tab_title_favicon_end_padding">7dp</dimen>
<!-- Custom Menu dimensions -->
<dimen name="tab_switcher_menu_width">222dp</dimen>
<dimen name="tab_switcher_menu_vertical_padding">8dp</dimen>
<dimen name="menu_badge_translation_y">6dp</dimen>
<!-- Infobar dimensions -->
......@@ -393,7 +389,6 @@
<dimen name="custom_tabs_toolbar_maxWidth">60dp</dimen>
<dimen name="custom_tabs_toolbar_vertical_padding">16dp</dimen>
<dimen name="custom_tabs_toolbar_horizontal_margin_no_close">8dp</dimen>
<dimen name="toolbar_icon_height">24dp</dimen>
<dimen name="min_toolbar_icon_side_padding">6dp</dimen>
<dimen name="custom_tabs_url_lite_separator_margin">4dp</dimen>
<dimen name="custom_tabs_url_text_size">12sp</dimen>
......
......@@ -17,12 +17,6 @@
<item name="custom_tab_bottom_bar_wrapper" type="id"/>
<item name="default_search_engine_dialog_options" type="id"/>
<!-- Tab Actions -->
<item type="id" name="close_tab" />
<item type="id" name="ungroup_tab" />
<item type="id" name="share_tab_group" />
<item type="id" name="edit_group_name" />
<!-- Media playback notification -->
<item type="id" name="media_playback_notification" />
......
......@@ -426,10 +426,17 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
mCustomTabThemeColorProvider = new SettableThemeColorProvider(/* context= */ mActivity);
mActivityTabProvider = tabProvider;
// clang-format off
mToolbarTabController = new ToolbarTabControllerImpl(mLocationBarModel::getTab,
() -> mShowStartSurfaceSupplier != null && mShowStartSurfaceSupplier.get(),
profileSupplier, mBottomControlsCoordinatorSupplier, ToolbarManager::homepageUrl,
() -> {
Profile profile = profileSupplier.get();
return profile != null ? TrackerFactory.getTrackerForProfile(profile) : null;
},
mBottomControlsCoordinatorSupplier, ToolbarManager::homepageUrl,
this::updateButtonStatus);
// clang-format on
BrowserStateBrowserControlsVisibilityDelegate controlsVisibilityDelegate =
mBrowserControlsSizer.getBrowserVisibilityDelegate();
......
......@@ -30,7 +30,6 @@ import org.chromium.base.test.BaseRobolectricTestRunner;
import org.chromium.chrome.browser.feature_engagement.TrackerFactory;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
import org.chromium.chrome.browser.homepage.HomepageManager;
import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.toolbar.bottom.BottomControlsCoordinator;
import org.chromium.chrome.test.util.browser.Features;
......@@ -64,16 +63,14 @@ public class ToolbarTabControllerImplTest {
@Mock
private Supplier<Boolean> mOverrideHomePageSupplier;
@Mock
private Supplier<Profile> mProfileSupplier;
@Mock
private Profile mProfile;
@Mock
private Supplier<BottomControlsCoordinator> mBottomControlsCoordinatorSupplier;
@Mock
private BottomControlsCoordinator mBottomControlsCoordinator;
@Mock
private Tracker mTracker;
@Mock
private Supplier<Tracker> mTrackerSupplier;
@Mock
private Runnable mRunnable;
@Rule
......@@ -88,7 +85,7 @@ public class ToolbarTabControllerImplTest {
doReturn(false).when(mOverrideHomePageSupplier).get();
TrackerFactory.setTrackerForTests(mTracker);
mToolbarTabController = new ToolbarTabControllerImpl(mTabSupplier,
mOverrideHomePageSupplier, mProfileSupplier, mBottomControlsCoordinatorSupplier,
mOverrideHomePageSupplier, mTrackerSupplier, mBottomControlsCoordinatorSupplier,
ToolbarManager::homepageUrl, mRunnable);
}
......@@ -154,7 +151,7 @@ public class ToolbarTabControllerImplTest {
@Features.EnableFeatures(ChromeFeatureList.TOOLBAR_IPH_ANDROID)
public void openHomepage_handledByStartSurfaceWithProfile() {
doReturn(true).when(mOverrideHomePageSupplier).get();
doReturn(mProfile).when(mProfileSupplier).get();
doReturn(mTracker).when(mTrackerSupplier).get();
mToolbarTabController.openHomepage();
......@@ -166,7 +163,7 @@ public class ToolbarTabControllerImplTest {
@Features.DisableFeatures(ChromeFeatureList.TOOLBAR_IPH_ANDROID)
public void openHomepage_handledByStartSurface_disabledNtpButtonFeature() {
doReturn(true).when(mOverrideHomePageSupplier).get();
doReturn(mProfile).when(mProfileSupplier).get();
doReturn(mTracker).when(mTrackerSupplier).get();
mToolbarTabController.openHomepage();
......
......@@ -26,6 +26,7 @@ android_library("java") {
"java/src/org/chromium/chrome/browser/toolbar/ToolbarProgressBar.java",
"java/src/org/chromium/chrome/browser/toolbar/ToolbarProgressBarAnimatingView.java",
"java/src/org/chromium/chrome/browser/toolbar/ToolbarTabController.java",
"java/src/org/chromium/chrome/browser/toolbar/ToolbarTabControllerImpl.java",
"java/src/org/chromium/chrome/browser/toolbar/VoiceToolbarButtonController.java",
"java/src/org/chromium/chrome/browser/toolbar/bottom/BottomControlsContentDelegate.java",
"java/src/org/chromium/chrome/browser/toolbar/bottom/BottomControlsCoordinator.java",
......@@ -42,6 +43,10 @@ android_library("java") {
"java/src/org/chromium/chrome/browser/toolbar/top/ActionModeController.java",
"java/src/org/chromium/chrome/browser/toolbar/top/CohortUtils.java",
"java/src/org/chromium/chrome/browser/toolbar/top/HomeButtonCoordinator.java",
"java/src/org/chromium/chrome/browser/toolbar/top/IncognitoSwitchCoordinator.java",
"java/src/org/chromium/chrome/browser/toolbar/top/IncognitoSwitchProperties.java",
"java/src/org/chromium/chrome/browser/toolbar/top/IncognitoSwitchViewBinder.java",
"java/src/org/chromium/chrome/browser/toolbar/top/TabSwitcherActionMenuCoordinator.java",
"java/src/org/chromium/chrome/browser/toolbar/top/ToggleTabStackButton.java",
"java/src/org/chromium/chrome/browser/toolbar/top/ToggleTabStackButtonCoordinator.java",
"java/src/org/chromium/chrome/browser/toolbar/top/ToolbarActionModeCallback.java",
......@@ -95,23 +100,37 @@ android_resources("java_resources") {
sources = [
"java/res/drawable-hdpi/btn_tabswitcher_modern.png",
"java/res/drawable-hdpi/btn_toolbar_home.png",
"java/res/drawable-hdpi/incognito_simple.png",
"java/res/drawable-hdpi/incognito_switch.png",
"java/res/drawable-hdpi/modern_location_bar.9.png",
"java/res/drawable-mdpi/btn_tabswitcher_modern.png",
"java/res/drawable-mdpi/btn_toolbar_home.png",
"java/res/drawable-mdpi/incognito_simple.png",
"java/res/drawable-mdpi/incognito_switch.png",
"java/res/drawable-mdpi/modern_location_bar.9.png",
"java/res/drawable-xhdpi/btn_tabswitcher_modern.png",
"java/res/drawable-xhdpi/btn_toolbar_home.png",
"java/res/drawable-xhdpi/incognito_simple.png",
"java/res/drawable-xhdpi/incognito_switch.png",
"java/res/drawable-xhdpi/modern_location_bar.9.png",
"java/res/drawable-xxhdpi/btn_tabswitcher_modern.png",
"java/res/drawable-xxhdpi/btn_toolbar_home.png",
"java/res/drawable-xxhdpi/incognito_simple.png",
"java/res/drawable-xxhdpi/incognito_switch.png",
"java/res/drawable-xxhdpi/modern_location_bar.9.png",
"java/res/drawable-xxxhdpi/btn_tabswitcher_modern.png",
"java/res/drawable-xxxhdpi/btn_toolbar_home.png",
"java/res/drawable-xxxhdpi/incognito_simple.png",
"java/res/drawable-xxxhdpi/incognito_switch.png",
"java/res/drawable/new_tab_icon.xml",
"java/res/layout/bottom_control_container.xml",
"java/res/layout/control_container.xml",
"java/res/layout/tab_switcher_toolbar.xml",
"java/res/menu/main_menu.xml",
"java/res/menu/main_menu_regroup.xml",
"java/res/values-sw600dp/dimens.xml",
"java/res/values/dimens.xml",
"java/res/values/ids.xml",
]
deps = [
......@@ -167,6 +186,7 @@ android_library("javatests") {
sources = [
"java/src/org/chromium/chrome/browser/toolbar/ToolbarProgressBarTest.java",
"java/src/org/chromium/chrome/browser/toolbar/load_progress/LoadProgressMediatorTest.java",
"java/src/org/chromium/chrome/browser/toolbar/top/TabSwitcherActionMenuRenderTest.java",
]
deps = [
......
......@@ -10,7 +10,8 @@
android:id="@+id/tab_switcher_toolbar"
android:layout_width="match_parent"
android:layout_height="@dimen/toolbar_height_no_shadow"
android:clickable="true" >
android:clickable="true"
android:focusable="true" >
<LinearLayout
android:layout_width="wrap_content"
......@@ -26,7 +27,7 @@
android:scaleType="center"
android:paddingStart="16dp"
android:paddingEnd="16dp"
android:tint="@color/default_icon_color"
app:tint="@color/default_icon_color"
app:srcCompat="@drawable/new_tab_icon"
android:contentDescription="@string/accessibility_toolbar_btn_new_tab"/>
<TextView
......
......@@ -12,4 +12,11 @@
<!-- Bottom controls dimensions -->
<dimen name="bottom_controls_height">@dimen/min_touch_target_size</dimen>
<!-- Custom Menu dimensions -->
<dimen name="tab_switcher_menu_width">222dp</dimen>
<dimen name="tab_switcher_menu_vertical_padding">8dp</dimen>
<!-- Custom Tabs dimensions -->
<dimen name="toolbar_icon_height">24dp</dimen>
</resources>
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright 2021 The Chromium Authors. All rights reserved.
Use of this source code is governed by a BSD-style license that can be
found in the LICENSE file.
-->
<resources>
<!-- Tab Actions -->
<item type="id" name="close_tab" />
<item type="id" name="ungroup_tab" />
<item type="id" name="share_tab_group" />
<item type="id" name="edit_group_name" />
</resources>
......@@ -7,9 +7,7 @@ package org.chromium.chrome.browser.toolbar;
import org.chromium.base.metrics.RecordHistogram;
import org.chromium.base.metrics.RecordUserAction;
import org.chromium.base.supplier.Supplier;
import org.chromium.chrome.browser.feature_engagement.TrackerFactory;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.toolbar.bottom.BottomControlsCoordinator;
import org.chromium.components.embedder_support.util.UrlConstants;
......@@ -26,7 +24,7 @@ import org.chromium.ui.base.PageTransition;
public class ToolbarTabControllerImpl implements ToolbarTabController {
private final Supplier<Tab> mTabSupplier;
private final Supplier<Boolean> mOverrideHomePageSupplier;
private final Supplier<Profile> mProfileSupplier;
private final Supplier<Tracker> mTrackerSupplier;
private final Supplier<BottomControlsCoordinator> mBottomControlsCoordinatorSupplier;
private final Supplier<String> mHomepageUrlSupplier;
private final Runnable mOnSuccessRunnable;
......@@ -36,19 +34,19 @@ public class ToolbarTabControllerImpl implements ToolbarTabController {
* @param tabSupplier Supplier for the currently active tab.
* @param overrideHomePageSupplier Supplier that returns true if it overrides the default
* homepage behavior.
* @param profileSupplier Supplier for the current profile.
* @param trackerSupplier Supplier for the current profile tracker.
* @param homepageUrlSupplier Supplier for the homepage URL.
* @param onSuccessRunnable Runnable that is invoked when the active tab is asked to perform the
* corresponding ToolbarTabController action; it is not invoked if the tab cannot
* perform the action or for openHompage.
*/
public ToolbarTabControllerImpl(Supplier<Tab> tabSupplier,
Supplier<Boolean> overrideHomePageSupplier, Supplier<Profile> profileSupplier,
Supplier<Boolean> overrideHomePageSupplier, Supplier<Tracker> trackerSupplier,
Supplier<BottomControlsCoordinator> bottomControlsCoordinatorSupplier,
Supplier<String> homepageUrlSupplier, Runnable onSuccessRunnable) {
mTabSupplier = tabSupplier;
mOverrideHomePageSupplier = overrideHomePageSupplier;
mProfileSupplier = profileSupplier;
mTrackerSupplier = trackerSupplier;
mBottomControlsCoordinatorSupplier = bottomControlsCoordinatorSupplier;
mHomepageUrlSupplier = homepageUrlSupplier;
mOnSuccessRunnable = onSuccessRunnable;
......@@ -104,11 +102,8 @@ public class ToolbarTabControllerImpl implements ToolbarTabController {
// While some other element is handling the routing of this click event, something
// still needs to notify the event. This approach allows consolidation of events for
// the home button.
Profile profile = mProfileSupplier.get();
if (profile != null) {
TrackerFactory.getTrackerForProfile(profile).notifyEvent(
EventConstants.HOMEPAGE_BUTTON_CLICKED);
}
Tracker tracker = mTrackerSupplier.get();
if (tracker != null) tracker.notifyEvent(EventConstants.HOMEPAGE_BUTTON_CLICKED);
}
return;
}
......@@ -134,10 +129,9 @@ public class ToolbarTabControllerImpl implements ToolbarTabController {
/** Record that homepage button was used for IPH reasons */
private void recordHomeButtonUseForIPH(String homepageUrl) {
Tab tab = mTabSupplier.get();
Profile profile = mProfileSupplier.get();
if (tab == null || profile == null) return;
Tracker tracker = mTrackerSupplier.get();
if (tab == null || tracker == null) return;
Tracker tracker = TrackerFactory.getTrackerForProfile(mProfileSupplier.get());
tracker.notifyEvent(EventConstants.HOMEPAGE_BUTTON_CLICKED);
if (UrlUtilities.isNTPUrl(homepageUrl)) {
......
......@@ -12,11 +12,11 @@ import android.view.ViewGroup;
import android.widget.CompoundButton;
import android.widget.Switch;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.tabmodel.EmptyTabModelSelectorObserver;
import org.chromium.chrome.browser.tabmodel.TabModel;
import org.chromium.chrome.browser.tabmodel.TabModelSelector;
import org.chromium.chrome.browser.tabmodel.TabModelSelectorObserver;
import org.chromium.chrome.browser.toolbar.R;
import org.chromium.ui.modelutil.PropertyModel;
import org.chromium.ui.modelutil.PropertyModelChangeProcessor;
......@@ -39,21 +39,20 @@ class IncognitoSwitchCoordinator {
Switch incognitoSwitchView = (Switch) root.findViewById(R.id.incognito_switch);
assert incognitoSwitchView != null;
mPropertyModel =
new PropertyModel.Builder(IncognitoSwitchProperties.ALL_KEYS)
.with(ON_CHECKED_CHANGE_LISTENER,
new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(
CompoundButton buttonView, boolean incognitoSelected) {
setSelectedMode(incognitoSelected);
}
})
.with(IS_INCOGNITO, mTabModelSelector.isIncognitoSelected())
// TODO(crbug.com/1042997): check start surface status properly in
// StartSurfaceToolbarMediator.
.with(IS_VISIBLE, visible)
.build();
mPropertyModel = new PropertyModel.Builder(IncognitoSwitchProperties.ALL_KEYS)
.with(ON_CHECKED_CHANGE_LISTENER,
new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView,
boolean incognitoSelected) {
setSelectedMode(incognitoSelected);
}
})
.with(IS_INCOGNITO, mTabModelSelector.isIncognitoSelected())
// TODO(crbug.com/1042997): check start surface status properly in
// StartSurfaceToolbarMediator.
.with(IS_VISIBLE, visible)
.build();
mTabModelSelectorObserver = new EmptyTabModelSelectorObserver() {
@Override
......
......@@ -10,7 +10,7 @@ import static org.chromium.chrome.browser.toolbar.top.IncognitoSwitchProperties.
import android.view.View;
import android.widget.Switch;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.toolbar.R;
import org.chromium.ui.modelutil.PropertyKey;
import org.chromium.ui.modelutil.PropertyModel;
......
......@@ -18,7 +18,7 @@ import androidx.annotation.VisibleForTesting;
import org.chromium.base.Callback;
import org.chromium.base.metrics.RecordUserAction;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.toolbar.R;
import org.chromium.components.browser_ui.widget.listmenu.BasicListMenu;
import org.chromium.components.browser_ui.widget.listmenu.ListMenu;
import org.chromium.components.browser_ui.widget.listmenu.ListMenuButton;
......
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