[Android] Changes for modularized toolbar

Additionaly fixed:
- c-tor signatures for various classes
- explicitly added header for network::ResourceRequest

Chromuim change:
https://chromium.googlesource.com/chromium/src/+/2c6cbee37831bffa83494c98eca09a8ca9def489

Modularize toolbar/

Moves the files in chrome/browser/toolbar (except some glue code) and
related resources to chrome/browser/ui/android/toolbar.

Bug: 1127732
This commit is contained in:
samartnik
2021-08-18 10:58:37 -04:00
committed by mkarolin
parent 39a6b94221
commit 0021d75620
15 changed files with 104 additions and 68 deletions
+5 -2
View File
@@ -205,7 +205,7 @@ brave_java_sources = [
"../../brave/android/java/org/chromium/chrome/browser/toolbar/menu_button/BraveMenuButtonCoordinator.java",
"../../brave/android/java/org/chromium/chrome/browser/toolbar/top/BraveTabSwitcherModeTTCoordinatorPhone.java",
"../../brave/android/java/org/chromium/chrome/browser/toolbar/top/BraveTabSwitcherModeTTPhone.java",
"../../brave/android/java/org/chromium/chrome/browser/toolbar/top/BraveToolbarLayout.java",
"../../brave/android/java/org/chromium/chrome/browser/toolbar/top/BraveToolbarLayoutImpl.java",
"../../brave/android/java/org/chromium/chrome/browser/toolbar/top/BraveTopToolbarCoordinator.java",
"../../brave/android/java/org/chromium/chrome/browser/ui/brave_tricks/checkbox_to_switch/CheckBoxPreference.java",
"../../brave/android/java/org/chromium/chrome/browser/ui/messages/infobar/BraveSimpleConfirmInfoBarBuilder.java",
@@ -288,7 +288,10 @@ brave_components_browser_ui_site_settings_android_java = [
brave_browser_ui_android_appmenu_internal_sources = [ "//brave/browser/ui/android/appmenu/internal/java/src/org/chromium/chrome/browser/ui/appmenu/BraveAppMenu.java" ]
brave_browser_ui_android_toolbar_sources = [ "//brave/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/bottom/BraveBottomControlsMediator.java" ]
brave_browser_ui_android_toolbar_sources = [
"//brave/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/bottom/BraveBottomControlsMediator.java",
"//brave/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/BraveToolbarLayout.java",
]
brave_java_base_sources = [
"//brave/android/java/org/chromium/base/BraveCommandLineInitUtil.java",
@@ -45,14 +45,14 @@ public class BraveFeedSurfaceCoordinator extends FeedSurfaceCoordinator {
boolean isPlaceholderShownInitially, BottomSheetController bottomSheetController,
Supplier<ShareDelegate> shareDelegateSupplier,
@Nullable ScrollableContainerDelegate externalScrollableContainerDelegate,
TabModelSelector tabModelSelector, @NewTabPageLaunchOrigin int launchOrigin,
@NewTabPageLaunchOrigin int launchOrigin,
PrivacyPreferencesManagerImpl privacyPreferencesManager,
FeedLaunchReliabilityLoggingState launchReliabilityLoggingState) {
super(activity, snackbarManager, windowAndroid, snapScrollHelper, ntpHeader,
sectionHeaderView, showDarkBackground, delegate, pageNavigationDelegate, profile,
isPlaceholderShownInitially, bottomSheetController, shareDelegateSupplier,
externalScrollableContainerDelegate, tabModelSelector, launchOrigin,
privacyPreferencesManager, launchReliabilityLoggingState);
externalScrollableContainerDelegate, launchOrigin, privacyPreferencesManager,
launchReliabilityLoggingState);
}
@Override
+1 -1
View File
@@ -291,7 +291,7 @@
-keep class org.chromium.chrome.browser.customtabs.features.toolbar.CustomTabToolbar
-keep class org.chromium.chrome.browser.toolbar.top.BraveToolbarLayout
-keep class org.chromium.chrome.browser.toolbar.top.BraveToolbarLayoutImpl
-keep class org.chromium.chrome.browser.toolbar.top.ToolbarPhone
@@ -99,7 +99,7 @@ import org.chromium.chrome.browser.tab.TabLaunchType;
import org.chromium.chrome.browser.tab.TabSelectionType;
import org.chromium.chrome.browser.tabmodel.TabModel;
import org.chromium.chrome.browser.tabmodel.TabModelUtils;
import org.chromium.chrome.browser.toolbar.top.BraveToolbarLayout;
import org.chromium.chrome.browser.toolbar.top.BraveToolbarLayoutImpl;
import org.chromium.chrome.browser.util.BraveDbUtil;
import org.chromium.chrome.browser.util.BraveReferrer;
import org.chromium.chrome.browser.util.PackageUtils;
@@ -555,7 +555,7 @@ public abstract class BraveActivity<C extends ChromeActivityComponent>
}
public void hideRewardsOnboardingIcon() {
BraveToolbarLayout layout = (BraveToolbarLayout)findViewById(R.id.toolbar);
BraveToolbarLayoutImpl layout = (BraveToolbarLayoutImpl) findViewById(R.id.toolbar);
assert layout != null;
if (layout != null) {
layout.hideRewardsOnboardingIcon();
@@ -655,7 +655,7 @@ public abstract class BraveActivity<C extends ChromeActivityComponent>
}
public void OnRewardsPanelDismiss() {
BraveToolbarLayout layout = (BraveToolbarLayout)findViewById(R.id.toolbar);
BraveToolbarLayoutImpl layout = (BraveToolbarLayoutImpl) findViewById(R.id.toolbar);
assert layout != null;
if (layout != null) {
layout.onRewardsPanelDismiss();
@@ -663,7 +663,7 @@ public abstract class BraveActivity<C extends ChromeActivityComponent>
}
public void dismissRewardsPanel() {
BraveToolbarLayout layout = (BraveToolbarLayout)findViewById(R.id.toolbar);
BraveToolbarLayoutImpl layout = (BraveToolbarLayoutImpl) findViewById(R.id.toolbar);
assert layout != null;
if (layout != null) {
layout.dismissRewardsPanel();
@@ -671,7 +671,7 @@ public abstract class BraveActivity<C extends ChromeActivityComponent>
}
public void dismissShieldsTooltip() {
BraveToolbarLayout layout = (BraveToolbarLayout)findViewById(R.id.toolbar);
BraveToolbarLayoutImpl layout = (BraveToolbarLayoutImpl) findViewById(R.id.toolbar);
assert layout != null;
if (layout != null) {
layout.dismissShieldsTooltip();
@@ -679,7 +679,7 @@ public abstract class BraveActivity<C extends ChromeActivityComponent>
}
public void openRewardsPanel() {
BraveToolbarLayout layout = (BraveToolbarLayout)findViewById(R.id.toolbar);
BraveToolbarLayoutImpl layout = (BraveToolbarLayoutImpl) findViewById(R.id.toolbar);
assert layout != null;
if (layout != null) {
layout.openRewardsPanel();
@@ -55,10 +55,9 @@ public class BraveNewTabPage extends NewTabPage {
protected void initializeMainView(Activity activity, WindowAndroid windowAndroid,
SnackbarManager snackbarManager, NewTabPageUma uma, boolean isInNightMode,
BottomSheetController bottomSheetController,
Supplier<ShareDelegate> shareDelegateSupplier, TabModelSelector tabModelSelector,
String url) {
Supplier<ShareDelegate> shareDelegateSupplier, String url) {
super.initializeMainView(activity, windowAndroid, snackbarManager, uma, isInNightMode,
bottomSheetController, shareDelegateSupplier, tabModelSelector, url);
bottomSheetController, shareDelegateSupplier, url);
// Override surface provider
Profile profile = Profile.fromWebContents(mTab.getWebContents());
@@ -69,7 +68,7 @@ public class BraveNewTabPage extends NewTabPage {
mNewTabPageManager.getNavigationDelegate(), profile,
/* isPlaceholderShownInitially= */ false, bottomSheetController,
shareDelegateSupplier, /* externalScrollableContainerDelegate= */ null,
tabModelSelector, NewTabPageUtils.decodeOriginFromNtpUrl(url),
NewTabPageUtils.decodeOriginFromNtpUrl(url),
PrivacyPreferencesManagerImpl.getInstance(),
/* FeedLaunchReliabilityLoggingState */ null);
}
@@ -18,6 +18,7 @@ import androidx.appcompat.app.AppCompatActivity;
import org.chromium.base.ApiCompatibilityUtils;
import org.chromium.base.Callback;
import org.chromium.base.CallbackController;
import org.chromium.base.jank_tracker.JankTracker;
import org.chromium.base.supplier.ObservableSupplier;
import org.chromium.base.supplier.ObservableSupplierImpl;
import org.chromium.base.supplier.OneshotSupplier;
@@ -152,7 +153,7 @@ public class BraveToolbarManager extends ToolbarManager {
@NonNull TabContentManager tabContentManager,
@NonNull TabCreatorManager tabCreatorManager,
@NonNull OneshotSupplier<OverviewModeBehavior> overviewModeBehaviorSupplier,
@NonNull SnackbarManager snackbarManager) {
@NonNull SnackbarManager snackbarManager, JankTracker jankTracker) {
super(activity, controlsSizer, fullscreenManager, controlContainer, compositorViewHolder,
urlFocusChangedCallback, topUiThemeColorProvider, tabObscuringHandler,
shareDelegateSupplier, identityDiscController, buttonDataProviders, tabProvider,
@@ -164,7 +165,7 @@ public class BraveToolbarManager extends ToolbarManager {
isInOverviewModeSupplier, modalDialogManagerSupplier, statusBarColorController,
appMenuDelegate, activityLifecycleDispatcher, startSurfaceParentTabSupplier,
bottomSheetController, isWarmOnResumeSupplier, tabContentManager, tabCreatorManager,
overviewModeBehaviorSupplier, snackbarManager);
overviewModeBehaviorSupplier, snackbarManager, jankTracker);
mOmniboxFocusStateSupplier = omniboxFocusStateSupplier;
mLayoutStateProviderSupplier = layoutStateProviderSupplier;
mActivity = activity;
@@ -18,7 +18,7 @@ import org.chromium.base.supplier.Supplier;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.browser_controls.BrowserStateBrowserControlsVisibilityDelegate;
import org.chromium.chrome.browser.theme.ThemeColorProvider;
import org.chromium.chrome.browser.toolbar.top.BraveToolbarLayout;
import org.chromium.chrome.browser.toolbar.top.BraveToolbarLayoutImpl;
import org.chromium.chrome.browser.ui.appmenu.AppMenuCoordinator;
import org.chromium.ui.base.WindowAndroid;
import org.chromium.ui.modelutil.PropertyModel;
@@ -64,7 +64,8 @@ public class BraveMenuButtonCoordinator extends MenuButtonCoordinator {
}
private void updateMenuButtonState() {
BraveToolbarLayout layout = (BraveToolbarLayout) mActivity.findViewById(R.id.toolbar);
BraveToolbarLayoutImpl layout =
(BraveToolbarLayoutImpl) mActivity.findViewById(R.id.toolbar);
assert layout != null;
if (layout != null) {
layout.updateMenuButtonState();
@@ -62,7 +62,6 @@ import org.chromium.chrome.browser.BraveRewardsHelper;
import org.chromium.chrome.browser.BraveRewardsNativeWorker;
import org.chromium.chrome.browser.BraveRewardsObserver;
import org.chromium.chrome.browser.BraveRewardsPanelPopup;
import org.chromium.chrome.browser.NavigationPopup.HistoryDelegate;
import org.chromium.chrome.browser.app.BraveActivity;
import org.chromium.chrome.browser.brave_stats.BraveStatsUtil;
import org.chromium.chrome.browser.custom_layout.popup_window_tooltip.PopupWindowTooltip;
@@ -105,6 +104,7 @@ import org.chromium.chrome.browser.toolbar.ToolbarTabController;
import org.chromium.chrome.browser.toolbar.bottom.BottomToolbarVariationManager;
import org.chromium.chrome.browser.toolbar.menu_button.BraveMenuButtonCoordinator;
import org.chromium.chrome.browser.toolbar.menu_button.MenuButtonCoordinator;
import org.chromium.chrome.browser.toolbar.top.NavigationPopup.HistoryDelegate;
import org.chromium.chrome.browser.toolbar.top.ToolbarLayout;
import org.chromium.chrome.browser.toolbar.top.ToolbarTablet.OfflineDownloader;
import org.chromium.chrome.browser.util.PackageUtils;
@@ -126,9 +126,9 @@ import java.util.EnumSet;
import java.util.List;
import java.util.Locale;
public abstract class BraveToolbarLayout extends ToolbarLayout
implements OnClickListener, View.OnLongClickListener, BraveRewardsObserver,
BraveRewardsNativeWorker.PublisherObserver {
public abstract class BraveToolbarLayoutImpl extends ToolbarLayout
implements BraveToolbarLayout, OnClickListener, View.OnLongClickListener,
BraveRewardsObserver, BraveRewardsNativeWorker.PublisherObserver {
public static final String PREF_HIDE_BRAVE_REWARDS_ICON = "hide_brave_rewards_icon";
private static final String JAPAN_COUNTRY_CODE = "JP";
private static final long MB_10 = 10000000;
@@ -162,7 +162,7 @@ public abstract class BraveToolbarLayout extends ToolbarLayout
private boolean mIsBottomToolbarVisible;
public BraveToolbarLayout(Context context, AttributeSet attrs) {
public BraveToolbarLayoutImpl(Context context, AttributeSet attrs) {
super(context, attrs);
}
@@ -183,7 +183,7 @@ public abstract class BraveToolbarLayout extends ToolbarLayout
protected void onFinishInflate() {
super.onFinishInflate();
if (this instanceof ToolbarTablet) {
if (BraveReflectionUtil.EqualTypes(this.getClass(), ToolbarTablet.class)) {
ImageButton forwardButton = findViewById(R.id.forward_button);
if (forwardButton != null) {
final Drawable forwardButtonDrawable = UiUtils.getTintedDrawable(getContext(),
@@ -841,10 +841,6 @@ public abstract class BraveToolbarLayout extends ToolbarLayout
}
@Override
public void onClick(View v) {
onClickImpl(v);
}
public void onClickImpl(View v) {
if (mBraveShieldsHandler == null) {
assert false;
@@ -883,6 +879,11 @@ public abstract class BraveToolbarLayout extends ToolbarLayout
}
}
@Override
public void onClick(View v) {
onClickImpl(v);
}
private boolean checkForRewardsOnboarding() {
return PackageUtils.isFirstInstall(getContext())
&& !BraveAdsNativeHelper.nativeIsBraveAdsEnabled(
@@ -911,7 +912,7 @@ public abstract class BraveToolbarLayout extends ToolbarLayout
}
@Override
public boolean onLongClick(View v) {
public boolean onLongClickImpl(View v) {
// Use null as the default description since Toast.showAnchoredToast
// will return false if it is null.
String description = null;
@@ -929,6 +930,11 @@ public abstract class BraveToolbarLayout extends ToolbarLayout
return Toast.showAnchoredToast(context, v, description);
}
@Override
public boolean onLongClick(View v) {
return onLongClickImpl(v);
}
@Override
public void onUrlFocusChange(boolean hasFocus) {
Context context = getContext();
@@ -944,7 +950,8 @@ public abstract class BraveToolbarLayout extends ToolbarLayout
super.onUrlFocusChange(hasFocus);
}
public void populateUrlAnimatorSet(boolean showExpandedState,
@Override
public void populateUrlAnimatorSetImpl(boolean showExpandedState,
int urlFocusToolbarButtonsDuration, int urlClearFocusTabStackDelayMs,
List<Animator> animators) {
if (mBraveShieldsButton != null) {
@@ -981,10 +988,7 @@ public abstract class BraveToolbarLayout extends ToolbarLayout
}
}
private void updateModernLocationBarColor(int color) {
updateModernLocationBarColorImpl(color);
}
@Override
public void updateModernLocationBarColorImpl(int color) {
if (mShieldsLayout != null && mShieldsLayoutIsColorBackground) {
mShieldsLayout.setBackgroundColor(
@@ -999,7 +1003,8 @@ public abstract class BraveToolbarLayout extends ToolbarLayout
}
}
public int getBoundsAfterAccountingForRightButtons(ViewGroup toolbarButtonsContainer) {
@Override
public int getBoundsAfterAccountingForRightButtonsImpl(ViewGroup toolbarButtonsContainer) {
if (toolbarButtonsContainer == null || mShieldsLayout == null) {
assert false;
return 0;
@@ -1186,7 +1191,7 @@ public abstract class BraveToolbarLayout extends ToolbarLayout
public void onThemeColorChanged(int color, boolean shouldAnimate) {
final int textBoxColor = ThemeUtils.getTextBoxColorForToolbarBackgroundInNonNativePage(
getContext().getResources(), color, isIncognito());
updateModernLocationBarColor(textBoxColor);
updateModernLocationBarColorImpl(textBoxColor);
}
/**
@@ -1232,7 +1237,10 @@ public abstract class BraveToolbarLayout extends ToolbarLayout
}
private void updateShieldsLayoutBackground(boolean rounded) {
if (!(this instanceof ToolbarTablet) || (mShieldsLayout == null)) return;
if (!BraveReflectionUtil.EqualTypes(this.getClass(), ToolbarTablet.class)
|| (mShieldsLayout == null)) {
return;
}
if (rounded) {
mShieldsLayout.setBackgroundDrawable(
@@ -1244,7 +1252,7 @@ public abstract class BraveToolbarLayout extends ToolbarLayout
ChromeColors.getDefaultThemeColor(getContext().getResources(), isIncognito()));
mShieldsLayoutIsColorBackground = true;
}
updateModernLocationBarColor(mCurrentToolbarColor);
updateModernLocationBarColorImpl(mCurrentToolbarColor);
}
private boolean isTabSwitcherOnBottom() {
@@ -13,7 +13,6 @@ import org.chromium.base.supplier.ObservableSupplier;
import org.chromium.base.supplier.OneshotSupplier;
import org.chromium.base.supplier.Supplier;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.NavigationPopup.HistoryDelegate;
import org.chromium.chrome.browser.identity_disc.IdentityDiscController;
import org.chromium.chrome.browser.layouts.LayoutStateProvider;
import org.chromium.chrome.browser.tabmodel.TabModelSelector;
@@ -23,6 +22,7 @@ import org.chromium.chrome.browser.toolbar.ButtonDataProvider;
import org.chromium.chrome.browser.toolbar.ToolbarDataProvider;
import org.chromium.chrome.browser.toolbar.ToolbarTabController;
import org.chromium.chrome.browser.toolbar.menu_button.MenuButtonCoordinator;
import org.chromium.chrome.browser.toolbar.top.NavigationPopup.HistoryDelegate;
import org.chromium.chrome.browser.toolbar.top.ToolbarTablet.OfflineDownloader;
import org.chromium.chrome.browser.ui.appmenu.AppMenuButtonHelper;
import org.chromium.chrome.browser.user_education.UserEducationHelper;
@@ -53,7 +53,6 @@ public class BraveTopToolbarCoordinator extends TopToolbarCoordinator {
ObservableSupplier<Boolean> homepageManagedByPolicySupplier,
ObservableSupplier<Boolean> identityDiscStateSupplier,
Callback<Runnable> invalidatorCallback, Supplier<ButtonData> identityDiscButtonSupplier,
OneshotSupplier<StartSurface> startSurfaceSupplier,
Supplier<ResourceManager> resourceManagerSupplier, BooleanSupplier isInVrSupplier,
BooleanSupplier isIncognitoModeEnabledSupplier, boolean isGridTabSwitcherEnabled,
boolean isTabToGtsAnimationEnabled, boolean isStartSurfaceEnabled,
@@ -66,9 +65,8 @@ public class BraveTopToolbarCoordinator extends TopToolbarCoordinator {
appMenuButtonHelperSupplier, tabModelSelectorSupplier, homepageEnabledSupplier,
startSurfaceAsHomepageSupplier, homepageManagedByPolicySupplier,
identityDiscStateSupplier, invalidatorCallback, identityDiscButtonSupplier,
startSurfaceSupplier, resourceManagerSupplier, isInVrSupplier,
isIncognitoModeEnabledSupplier, isGridTabSwitcherEnabled,
isTabToGtsAnimationEnabled, isStartSurfaceEnabled,
resourceManagerSupplier, isInVrSupplier, isIncognitoModeEnabledSupplier,
isGridTabSwitcherEnabled, isTabToGtsAnimationEnabled, isStartSurfaceEnabled,
isTabGroupsAndroidContinuationEnabled, historyDelegate,
partnerHomepageEnabledSupplier, offlineDownloader);
@@ -87,7 +85,8 @@ public class BraveTopToolbarCoordinator extends TopToolbarCoordinator {
public void onBottomToolbarVisibilityChanged(boolean isVisible) {
if (mBraveToolbarLayout instanceof BraveToolbarLayout) {
((BraveToolbarLayout) mBraveToolbarLayout).onBottomToolbarVisibilityChanged(isVisible);
((BraveToolbarLayoutImpl) mBraveToolbarLayout)
.onBottomToolbarVisibilityChanged(isVisible);
}
if (mTabSwitcherModeCoordinatorPhone instanceof BraveTabSwitcherModeTTCoordinatorPhone) {
((BraveTabSwitcherModeTTCoordinatorPhone) mTabSwitcherModeCoordinatorPhone)
@@ -25,7 +25,6 @@ import org.chromium.base.supplier.ObservableSupplier;
import org.chromium.base.supplier.ObservableSupplierImpl;
import org.chromium.base.supplier.OneshotSupplier;
import org.chromium.base.supplier.Supplier;
import org.chromium.chrome.browser.NavigationPopup.HistoryDelegate;
import org.chromium.chrome.browser.app.ChromeActivity;
import org.chromium.chrome.browser.browser_controls.BrowserControlsSizer;
import org.chromium.chrome.browser.browser_controls.BrowserControlsStateProvider;
@@ -58,6 +57,7 @@ import org.chromium.chrome.browser.toolbar.ToolbarDataProvider;
import org.chromium.chrome.browser.toolbar.ToolbarManager;
import org.chromium.chrome.browser.toolbar.ToolbarTabController;
import org.chromium.chrome.browser.toolbar.menu_button.MenuButtonCoordinator;
import org.chromium.chrome.browser.toolbar.top.NavigationPopup.HistoryDelegate;
import org.chromium.chrome.browser.toolbar.top.ToolbarActionModeCallback;
import org.chromium.chrome.browser.toolbar.top.ToolbarControlContainer;
import org.chromium.chrome.browser.toolbar.top.ToolbarLayout;
@@ -334,7 +334,7 @@ public class BytecodeTest {
StatusBarColorController.class, AppMenuDelegate.class,
ActivityLifecycleDispatcher.class, Supplier.class, BottomSheetController.class,
Supplier.class, TabContentManager.class, TabCreatorManager.class,
OneshotSupplier.class, SnackbarManager.class));
OneshotSupplier.class, SnackbarManager.class, JankTracker.class));
Assert.assertTrue(constructorsMatch(
"org/chromium/chrome/browser/toolbar/bottom/BottomControlsMediator",
"org/chromium/chrome/browser/toolbar/bottom/BraveBottomControlsMediator",
@@ -394,8 +394,8 @@ public class BytecodeTest {
MenuButtonCoordinator.class, MenuButtonCoordinator.class, ObservableSupplier.class,
ObservableSupplier.class, ObservableSupplier.class, ObservableSupplier.class,
ObservableSupplier.class, ObservableSupplier.class, Callback.class, Supplier.class,
OneshotSupplier.class, Supplier.class, BooleanSupplier.class, BooleanSupplier.class,
boolean.class, boolean.class, boolean.class, boolean.class, HistoryDelegate.class,
Supplier.class, BooleanSupplier.class, BooleanSupplier.class, boolean.class,
boolean.class, boolean.class, boolean.class, HistoryDelegate.class,
BooleanSupplier.class, OfflineDownloader.class));
Assert.assertTrue(constructorsMatch(
"org/chromium/chrome/browser/toolbar/menu_button/MenuButtonCoordinator",
@@ -574,9 +574,11 @@ public class BytecodeTest {
"org/chromium/chrome/browser/suggestions/tile/BraveTileView"));
Assert.assertTrue(checkSuperName(
"org/chromium/chrome/browser/customtabs/features/toolbar/CustomTabToolbar",
"org/chromium/chrome/browser/toolbar/top/BraveToolbarLayout"));
"org/chromium/chrome/browser/toolbar/top/BraveToolbarLayoutImpl"));
Assert.assertTrue(checkSuperName("org/chromium/chrome/browser/toolbar/top/ToolbarPhone",
"org/chromium/chrome/browser/toolbar/top/BraveToolbarLayout"));
"org/chromium/chrome/browser/toolbar/top/BraveToolbarLayoutImpl"));
Assert.assertTrue(checkSuperName("org/chromium/chrome/browser/toolbar/top/ToolbarTablet",
"org/chromium/chrome/browser/toolbar/top/BraveToolbarLayoutImpl"));
Assert.assertTrue(checkSuperName(
"org/chromium/chrome/browser/compositor/layouts/LayoutManagerChromePhone",
"org/chromium/chrome/browser/compositor/layouts/BraveLayoutManagerChrome"));
@@ -0,0 +1,28 @@
/* Copyright (c) 2021 The Brave Authors. All rights reserved.
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
* You can obtain one at http://mozilla.org/MPL/2.0/. */
package org.chromium.chrome.browser.toolbar.top;
import android.animation.Animator;
import android.content.Context;
import android.util.AttributeSet;
import android.view.View;
import android.view.ViewGroup;
import java.util.List;
public interface BraveToolbarLayout {
public void onClickImpl(View v);
public boolean onLongClickImpl(View v);
public void updateModernLocationBarColorImpl(int color);
public int getBoundsAfterAccountingForRightButtonsImpl(ViewGroup toolbarButtonsContainer);
public void populateUrlAnimatorSetImpl(boolean showExpandedState,
int urlFocusToolbarButtonsDuration, int urlClearFocusTabStackDelayMs,
List<Animator> animators);
}
@@ -11,13 +11,16 @@ public class BraveToolbarLayoutClassAdapter extends BraveClassVisitor {
static String sCustomTabToolbarClassName =
"org/chromium/chrome/browser/customtabs/features/toolbar/CustomTabToolbar";
static String sToolbarPhoneClassName = "org/chromium/chrome/browser/toolbar/top/ToolbarPhone";
static String sToolbarTabletClassName = "org/chromium/chrome/browser/toolbar/top/ToolbarTablet";
static String sBraveToolbarLayoutClassName =
"org/chromium/chrome/browser/toolbar/top/BraveToolbarLayout";
"org/chromium/chrome/browser/toolbar/top/BraveToolbarLayoutImpl";
public BraveToolbarLayoutClassAdapter(ClassVisitor visitor) {
super(visitor);
changeSuperName(sCustomTabToolbarClassName, sBraveToolbarLayoutClassName);
changeSuperName(sToolbarPhoneClassName, sBraveToolbarLayoutClassName);
changeSuperName(sToolbarTabletClassName, sBraveToolbarLayoutClassName);
}
}
@@ -86,6 +86,7 @@
#include "content/public/browser/service_process_host.h"
#include "content/public/browser/storage_partition.h"
#include "net/base/network_change_notifier.h"
#include "services/network/public/cpp/resource_request.h"
#include "services/network/public/cpp/shared_url_loader_factory.h"
#include "services/network/public/cpp/simple_url_loader.h"
#include "third_party/abseil-cpp/absl/types/optional.h"
@@ -1,5 +1,5 @@
diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarPhone.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarPhone.java
index a41e088b95a2900daa15513f399dbd276ca084f9..7448905d9ee4fb47415d6267fc89d0a02367e0dc 100644
index a41e088b95a2900daa15513f399dbd276ca084f9..a170d8d74392fd20c295057af4173c50ac3d1a86 100644
--- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarPhone.java
+++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarPhone.java
@@ -406,6 +406,7 @@ public class ToolbarPhone extends ToolbarLayout implements OnClickListener, TabC
@@ -22,7 +22,7 @@ index a41e088b95a2900daa15513f399dbd276ca084f9..7448905d9ee4fb47415d6267fc89d0a0
* @return The right bounds of the location bar after accounting for any visible left buttons.
*/
private int getBoundsAfterAccountingForRightButtons() {
+ if (true) return Math.max(mToolbarSidePadding, BraveToolbarLayout.class.cast(this).getBoundsAfterAccountingForRightButtons(mToolbarButtonsContainer));
+ if (true) return Math.max(mToolbarSidePadding, BraveToolbarLayout.class.cast(this).getBoundsAfterAccountingForRightButtonsImpl(mToolbarButtonsContainer));
return Math.max(mToolbarSidePadding, mToolbarButtonsContainer.getMeasuredWidth());
}
@@ -30,7 +30,7 @@ index a41e088b95a2900daa15513f399dbd276ca084f9..7448905d9ee4fb47415d6267fc89d0a0
} else {
populateUrlClearExpansionAnimatorSet(animators);
}
+ BraveToolbarLayout.class.cast(this).populateUrlAnimatorSet(showExpandedState, URL_FOCUS_TOOLBAR_BUTTONS_DURATION_MS, URL_CLEAR_FOCUS_TABSTACK_DELAY_MS, animators);
+ BraveToolbarLayout.class.cast(this).populateUrlAnimatorSetImpl(showExpandedState, URL_FOCUS_TOOLBAR_BUTTONS_DURATION_MS, URL_CLEAR_FOCUS_TABSTACK_DELAY_MS, animators);
mUrlFocusLayoutAnimator = new AnimatorSet();
mUrlFocusLayoutAnimator.playTogether(animators);
@@ -1,26 +1,17 @@
diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarTablet.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarTablet.java
index e14c4ffdd2c20e6b3f673066b22512b18e65bb0c..06fa5bcf8ccbf0fe86f9572646693f7d2ff21cb7 100644
index e14c4ffdd2c20e6b3f673066b22512b18e65bb0c..bc63c6c68a60e46010906c545aa622640ad02b38 100644
--- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarTablet.java
+++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarTablet.java
@@ -59,7 +59,7 @@ import java.util.Collection;
* The Toolbar object for Tablet screens.
*/
@SuppressLint("Instantiatable")
-public class ToolbarTablet extends ToolbarLayout
+public class ToolbarTablet extends BraveToolbarLayout
implements OnClickListener, View.OnLongClickListener, TabCountObserver {
/** Downloads page for offline access. */
public interface OfflineDownloader {
@@ -326,10 +326,12 @@ public class ToolbarTablet extends ToolbarLayout
mOfflineDownloader.downloadPage(getContext(), getToolbarDataProvider().getTab());
RecordUserAction.record("MobileToolbarDownloadPage");
}
+ super.onClick(v);
+ BraveToolbarLayout.class.cast(this).onClickImpl(v);
}
@Override
public boolean onLongClick(View v) {
+ if (super.onLongClick(v)) return true;
+ if (BraveToolbarLayout.class.cast(this).onLongClickImpl(v)) return true;
String description = null;
Context context = getContext();
Resources resources = context.getResources();