Skip to content

Upgrade from Chromium 96 to Chromium 97 (uplift to 1.34.x). #11599

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Dec 19, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 2 additions & 0 deletions android/brave_java_sources.gni
Original file line number Diff line number Diff line change
Expand Up @@ -131,11 +131,13 @@ brave_java_sources = [
"../../brave/android/java/org/chromium/chrome/browser/download/settings/BraveDownloadSettings.java",
"../../brave/android/java/org/chromium/chrome/browser/externalnav/BraveExternalNavigationHandler.java",
"../../brave/android/java/org/chromium/chrome/browser/feedback/BraveHelpAndFeedbackLauncherImpl.java",
"../../brave/android/java/org/chromium/chrome/browser/firstrun/BraveFirstRunFlowSequencer.java",
"../../brave/android/java/org/chromium/chrome/browser/firstrun/BraveFreIntentCreator.java",
"../../brave/android/java/org/chromium/chrome/browser/firstrun/P3aOnboardingActivity.java",
"../../brave/android/java/org/chromium/chrome/browser/help/BraveHelpAndFeedbackLauncher.java",
"../../brave/android/java/org/chromium/chrome/browser/homepage/BraveHomepageManager.java",
"../../brave/android/java/org/chromium/chrome/browser/homepage/settings/BraveHomepageSettings.java",
"../../brave/android/java/org/chromium/chrome/browser/infobar/BraveInfoBarIdentifier.java",
"../../brave/android/java/org/chromium/chrome/browser/informers/BraveAndroidSyncDisabledInformer.java",
"../../brave/android/java/org/chromium/chrome/browser/language/settings/BraveLanguageSettings.java",
"../../brave/android/java/org/chromium/chrome/browser/local_database/BraveStatsTable.java",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,16 +13,17 @@

import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.Px;

import org.chromium.base.ApiCompatibilityUtils;
import org.chromium.base.supplier.Supplier;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.bookmarks.BookmarkBridge;
import org.chromium.chrome.browser.feed.shared.FeedSurfaceDelegate;
import org.chromium.chrome.browser.feed.hooks.FeedHooks;
import org.chromium.chrome.browser.feed.sections.SectionHeaderView;
import org.chromium.chrome.browser.feedback.HelpAndFeedbackLauncher;
import org.chromium.chrome.browser.native_page.NativePageNavigationDelegate;
import org.chromium.chrome.browser.ntp.NewTabPageLaunchOrigin;
import org.chromium.chrome.browser.ntp.SnapScrollHelper;
import org.chromium.chrome.browser.ntp.snippets.SectionHeaderView;
import org.chromium.chrome.browser.privacy.settings.PrivacyPreferencesManagerImpl;
import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.share.ShareDelegate;
Expand All @@ -42,24 +43,24 @@ public class BraveFeedSurfaceCoordinator extends FeedSurfaceCoordinator {

public BraveFeedSurfaceCoordinator(Activity activity, SnackbarManager snackbarManager,
WindowAndroid windowAndroid, @Nullable SnapScrollHelper snapScrollHelper,
@Nullable View ntpHeader, @Nullable SectionHeaderView sectionHeaderView,
boolean showDarkBackground, FeedSurfaceDelegate delegate,
@Nullable NativePageNavigationDelegate pageNavigationDelegate, Profile profile,
boolean isPlaceholderShownInitially, BottomSheetController bottomSheetController,
@Nullable View ntpHeader, @Px int toolbarHeight, boolean showDarkBackground,
FeedSurfaceDelegate delegate, Profile profile, boolean isPlaceholderShownInitially,
BottomSheetController bottomSheetController,
Supplier<ShareDelegate> shareDelegateSupplier,
@Nullable ScrollableContainerDelegate externalScrollableContainerDelegate,
@NewTabPageLaunchOrigin int launchOrigin,
PrivacyPreferencesManagerImpl privacyPreferencesManager,
@NonNull Supplier<Toolbar> toolbarSupplier,
FeedLaunchReliabilityLoggingState launchReliabilityLoggingState,
@Nullable FeedSwipeRefreshLayout swipeRefreshLayout, boolean overScrollDisabled,
@Nullable ViewGroup viewportView, @NonNull BookmarkBridge bookmarkBridge) {
super(activity, snackbarManager, windowAndroid, snapScrollHelper, ntpHeader,
sectionHeaderView, showDarkBackground, delegate, pageNavigationDelegate, profile,
isPlaceholderShownInitially, bottomSheetController, shareDelegateSupplier,
externalScrollableContainerDelegate, launchOrigin, privacyPreferencesManager,
toolbarSupplier, launchReliabilityLoggingState, swipeRefreshLayout,
overScrollDisabled, viewportView, bookmarkBridge);
@Nullable ViewGroup viewportView, FeedActionDelegate actionDelegate,
HelpAndFeedbackLauncher helpAndFeedbackLauncher, FeedHooks feedHooks) {
super(activity, snackbarManager, windowAndroid, snapScrollHelper, ntpHeader, toolbarHeight,
showDarkBackground, delegate, profile, isPlaceholderShownInitially,
bottomSheetController, shareDelegateSupplier, externalScrollableContainerDelegate,
launchOrigin, privacyPreferencesManager, toolbarSupplier,
launchReliabilityLoggingState, swipeRefreshLayout, overScrollDisabled, viewportView,
actionDelegate, helpAndFeedbackLauncher, feedHooks);
}

@Override
Expand Down
3 changes: 2 additions & 1 deletion android/java/apk_for_test.flags
Original file line number Diff line number Diff line change
Expand Up @@ -50,8 +50,10 @@

-keep class org.chromium.chrome.browser.ntp.NewTabPage {
public <init>(...);
*** mBrowserControlsStateProvider;
*** mNewTabPageLayout;
*** mFeedSurfaceProvider;
*** mToolbarSupplier;
}

-keep class org.chromium.chrome.browser.ntp.BraveNewTabPage {
Expand Down Expand Up @@ -136,7 +138,6 @@
*** mOverviewModeBehaviorSupplier;
*** mSnackbarManager;
*** onOrientationChange(...);
*** updateButtonStatus(...);
*** updateBookmarkButtonStatus(...);
*** updateReloadState(...);
}
Expand Down
12 changes: 4 additions & 8 deletions android/java/org/chromium/chrome/browser/BraveSyncInformers.java
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
import org.chromium.chrome.R;
import org.chromium.chrome.browser.BraveSyncWorker;
import org.chromium.chrome.browser.app.BraveActivity;
import org.chromium.chrome.browser.infobar.InfoBarIdentifier;
import org.chromium.chrome.browser.infobar.BraveInfoBarIdentifier;
import org.chromium.chrome.browser.preferences.BravePrefServiceBridge;
import org.chromium.chrome.browser.settings.BraveSyncScreensPreference;
import org.chromium.chrome.browser.settings.SettingsLauncherImpl;
Expand Down Expand Up @@ -81,15 +81,11 @@ public boolean onInfoBarLinkClicked() {
return false;
}
},
// must be SYNC_V2_MIGRATE_INFOBAR_DELEGATE, but now it is introduced through
// src/brave/chromium_src/components/infobars/core/infobar_delegate.h and
// java enums are generated by //components/infobars/core:infobar_generated_enums
// who does not understand `brave/chromium_src`
InfoBarIdentifier.INLINE_UPDATE_READY_INFOBAR_ANDROID,
activity,
BraveInfoBarIdentifier.SYNC_V2_MIGRATE_INFOBAR_DELEGATE, activity,
R.drawable.sync_icon /* drawableId */,
activity.getString(R.string.brave_sync_v2_migrate_infobar_message) /* message */,
activity.getString(R.string.brave_sync_v2_migrate_infobar_command) /* primaryText */,
activity.getString(
R.string.brave_sync_v2_migrate_infobar_command) /* primaryText */,
null /* secondaryText */, null /* linkText */, false /* autoExpire */);
BraveSyncWorker.get().setSyncV2MigrateNoticeDismissed(true);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,8 @@ private void updateBookmarkMenuItem(BookmarkBridge bookmarkBridge, Tab currentTa
mBookmarkButton.setImageResource(R.drawable.btn_star_filled);
mBookmarkButton.setContentDescription(getContext().getString(R.string.edit_bookmark));
ApiCompatibilityUtils.setImageTintList(mBookmarkButton,
AppCompatResources.getColorStateList(getContext(), R.color.blue_mode_tint));
AppCompatResources.getColorStateList(
getContext(), R.color.default_icon_color_accent1_tint_list));
} else {
mBookmarkButton.setImageResource(R.drawable.btn_star);
mBookmarkButton.setContentDescription(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,8 @@

public class BraveTabbedAppMenuPropertiesDelegate extends TabbedAppMenuPropertiesDelegate {
private Menu mMenu;
AppMenuDelegate mAppMenuDelegate;
private AppMenuDelegate mAppMenuDelegate;
private ObservableSupplier<BookmarkBridge> mBookmarkBridgeSupplier;

public BraveTabbedAppMenuPropertiesDelegate(Context context,
ActivityTabProvider activityTabProvider,
Expand All @@ -65,6 +66,7 @@ public BraveTabbedAppMenuPropertiesDelegate(Context context,
snackbarManager);

mAppMenuDelegate = appMenuDelegate;
mBookmarkBridgeSupplier = bookmarkBridgeSupplier;
}

@Override
Expand Down Expand Up @@ -158,11 +160,11 @@ public void prepareMenu(Menu menu, AppMenuHandler handler) {
shareItem.setIcon(AppCompatResources.getDrawable(mContext, R.drawable.share_icon));
}

// By this we forcibly initialize mBookmarkBridge
// By this we forcibly initialize BookmarkBridge
MenuItem bookmarkItem = menu.findItem(R.id.bookmark_this_page_id);
Tab currentTab = mActivityTabProvider.get();
if (bookmarkItem != null && currentTab != null) {
updateBookmarkMenuItem(bookmarkItem, currentTab);
updateBookmarkMenuItemShortcut(bookmarkItem, currentTab);
}
}

Expand All @@ -181,7 +183,7 @@ public void onMenuDismissed() {
@Override
public void onFooterViewInflated(AppMenuHandler appMenuHandler, View view) {
// If it's still null, just hide the whole view
if (mBookmarkBridge == null) {
if (mBookmarkBridgeSupplier.get() == null) {
if (view != null) {
view.setVisibility(View.GONE);
}
Expand All @@ -193,8 +195,8 @@ public void onFooterViewInflated(AppMenuHandler appMenuHandler, View view) {

if (view instanceof AppMenuIconRowFooter) {
((AppMenuIconRowFooter) view)
.initialize(appMenuHandler, mBookmarkBridge, mActivityTabProvider.get(),
mAppMenuDelegate);
.initialize(appMenuHandler, mBookmarkBridgeSupplier.get(),
mActivityTabProvider.get(), mAppMenuDelegate);
}

// Hide bookmark button if bottom toolbar is enabled
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
/* 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.firstrun;

import android.app.Activity;

public abstract class BraveFirstRunFlowSequencer extends FirstRunFlowSequencer {
public BraveFirstRunFlowSequencer(Activity activity) {
super(activity);
}

@Override
public void start() {
super.start();
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
/* 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.infobar;

import androidx.annotation.IntDef;

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;

// Reflects enum items from chromium_src/components/infobars/core/infobar_delegate.h

@IntDef({BraveInfoBarIdentifier.INVALID, BraveInfoBarIdentifier.BRAVE_CONFIRM_P3A_INFOBAR_DELEGATE,
BraveInfoBarIdentifier.WAYBACK_MACHINE_INFOBAR_DELEGATE,
BraveInfoBarIdentifier.SYNC_V2_MIGRATE_INFOBAR_DELEGATE,
BraveInfoBarIdentifier.ANDROID_SYSTEM_SYNC_DISABLED_INFOBAR})

@Retention(RetentionPolicy.SOURCE)
public @interface BraveInfoBarIdentifier {
int INVALID = -1;
int BRAVE_CONFIRM_P3A_INFOBAR_DELEGATE = 500;
int WAYBACK_MACHINE_INFOBAR_DELEGATE = 502;
int SYNC_V2_MIGRATE_INFOBAR_DELEGATE = 503;
int ANDROID_SYSTEM_SYNC_DISABLED_INFOBAR = 504;
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
import org.chromium.base.Log;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.app.BraveActivity;
import org.chromium.chrome.browser.infobar.InfoBarIdentifier;
import org.chromium.chrome.browser.infobar.BraveInfoBarIdentifier;
import org.chromium.chrome.browser.sync.SyncService;
import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.ui.messages.infobar.BraveSimpleConfirmInfoBarBuilder;
Expand Down Expand Up @@ -92,11 +92,7 @@ public boolean onInfoBarLinkClicked() {
return false;
}
},
// must be enum from
// src/brave/chromium_src/components/infobars/core/infobar_delegate.h and java enums
// are generated by //components/infobars/core:infobar_generated_enums who does not
// understand `brave/chromium_src`
InfoBarIdentifier.INLINE_UPDATE_READY_INFOBAR_ANDROID, activity,
BraveInfoBarIdentifier.ANDROID_SYSTEM_SYNC_DISABLED_INFOBAR, activity,
R.drawable.ic_warning_circle,
activity.getString(R.string.brave_sync_android_sync_disabled),
activity.getString(R.string.brave_open_system_sync_settings),
Expand Down
27 changes: 16 additions & 11 deletions android/java/org/chromium/chrome/browser/ntp/BraveNewTabPage.java
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,12 @@
import org.chromium.chrome.browser.browser_controls.BrowserControlsStateProvider;
import org.chromium.chrome.browser.compositor.layouts.OverviewModeBehavior;
import org.chromium.chrome.browser.feed.BraveFeedSurfaceCoordinator;
import org.chromium.chrome.browser.feed.FeedFeatures;
import org.chromium.chrome.browser.feed.FeedLaunchReliabilityLoggingState;
import org.chromium.chrome.browser.feed.FeedSurfaceProvider;
import org.chromium.chrome.browser.feed.FeedSwipeRefreshLayout;
import org.chromium.chrome.browser.feed.shared.FeedFeatures;
import org.chromium.chrome.browser.feed.shared.FeedSurfaceProvider;
import org.chromium.chrome.browser.feed.hooks.FeedHooksImpl;
import org.chromium.chrome.browser.feedback.HelpAndFeedbackLauncherImpl;
import org.chromium.chrome.browser.lifecycle.ActivityLifecycleDispatcher;
import org.chromium.chrome.browser.privacy.settings.PrivacyPreferencesManagerImpl;
import org.chromium.chrome.browser.profiles.Profile;
Expand All @@ -29,13 +32,16 @@
import org.chromium.chrome.browser.toolbar.top.Toolbar;
import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager;
import org.chromium.chrome.browser.ui.native_page.NativePageHost;
import org.chromium.chrome.browser.xsurface.FeedLaunchReliabilityLogger.SurfaceType;
import org.chromium.components.browser_ui.bottomsheet.BottomSheetController;
import org.chromium.ui.base.WindowAndroid;

public class BraveNewTabPage extends NewTabPage {
private Supplier<Toolbar> mToolbarSupplier;
// To delete in bytecode, members from parent class will be used instead.
private BrowserControlsStateProvider mBrowserControlsStateProvider;
private NewTabPageLayout mNewTabPageLayout;
private FeedSurfaceProvider mFeedSurfaceProvider;
private Supplier<Toolbar> mToolbarSupplier;

public BraveNewTabPage(Activity activity,
BrowserControlsStateProvider browserControlsStateProvider,
Expand All @@ -55,8 +61,6 @@ public BraveNewTabPage(Activity activity,
if (mNewTabPageLayout instanceof BraveNewTabPageLayout) {
((BraveNewTabPageLayout) mNewTabPageLayout).setTab(tab);
}

mToolbarSupplier = toolbarSupplier;
}

@Override
Expand All @@ -71,16 +75,17 @@ protected void initializeMainView(Activity activity, WindowAndroid windowAndroid

assert !FeedFeatures.isFeedEnabled();
mFeedSurfaceProvider = new BraveFeedSurfaceCoordinator(activity, snackbarManager,
windowAndroid, new SnapScrollHelper(mNewTabPageManager, mNewTabPageLayout),
mNewTabPageLayout, null, isInNightMode, this,
mNewTabPageManager.getNavigationDelegate(), profile,
windowAndroid, new SnapScrollHelperImpl(mNewTabPageManager, mNewTabPageLayout),
mNewTabPageLayout, mBrowserControlsStateProvider.getTopControlsHeight(),
isInNightMode, this, profile,
/* isPlaceholderShownInitially= */ false, bottomSheetController,
shareDelegateSupplier, /* externalScrollableContainerDelegate= */ null,
NewTabPageUtils.decodeOriginFromNtpUrl(url),
PrivacyPreferencesManagerImpl.getInstance(), mToolbarSupplier,
/* FeedLaunchReliabilityLoggingState */ null,
new FeedLaunchReliabilityLoggingState(SurfaceType.NEW_TAB_PAGE, mConstructedTimeNs),
FeedSwipeRefreshLayout.create(activity, R.id.toolbar_container),
/* overScrollDisabled= */ false,
/* viewportView= */ null, new BookmarkBridge(profile));
/* overScrollDisabled= */ false, /* viewportView= */ null,
/* actionDelegate= */ null, HelpAndFeedbackLauncherImpl.getInstance(),
FeedHooksImpl.getInstance());
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,7 @@
import org.chromium.chrome.browser.compositor.CompositorViewHolder;
import org.chromium.chrome.browser.custom_layout.VerticalViewPager;
import org.chromium.chrome.browser.explore_sites.ExploreSitesBridge;
import org.chromium.chrome.browser.feed.FeedSurfaceScrollDelegate;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
import org.chromium.chrome.browser.lifecycle.ActivityLifecycleDispatcher;
import org.chromium.chrome.browser.local_database.DatabaseHelper;
Expand Down Expand Up @@ -1211,7 +1212,7 @@ private void processFeed() {
@Override
public void initialize(NewTabPageManager manager, Activity activity,
TileGroup.Delegate tileGroupDelegate, boolean searchProviderHasLogo,
boolean searchProviderIsGoogle, ScrollDelegate scrollDelegate,
boolean searchProviderIsGoogle, FeedSurfaceScrollDelegate scrollDelegate,
ContextMenuManager contextMenuManager, UiConfig uiConfig, Supplier<Tab> tabProvider,
ActivityLifecycleDispatcher lifecycleDispatcher, NewTabPageUma uma, boolean isIncognito,
WindowAndroid windowAndroid) {
Expand Down
Loading