From ddf4cb106c7f1cffd20a07ef5e1fe130271e5bfa Mon Sep 17 00:00:00 2001 From: samartnik Date: Tue, 9 Aug 2022 14:01:43 -0400 Subject: [PATCH] [Android] DynamicColors features removed Chromium change: chromium/chromium@74c6794 Remove launched DynamicColors features. Bug: 1345778 --- android/brave_java_sources.gni | 1 + .../browser/util/BraveDynamicColors.java | 21 ++++++++++++++++++ build/android/bytecode/BUILD.gn | 1 + .../org/brave/bytecode/BraveClassAdapter.java | 1 + .../BraveDynamicColorsClassAdapter.java | 22 +++++++++++++++++++ 5 files changed, 46 insertions(+) create mode 100644 android/java/org/chromium/chrome/browser/util/BraveDynamicColors.java create mode 100644 build/android/bytecode/java/org/brave/bytecode/BraveDynamicColorsClassAdapter.java diff --git a/android/brave_java_sources.gni b/android/brave_java_sources.gni index bdc53efea58..4602782a9ab 100644 --- a/android/brave_java_sources.gni +++ b/android/brave_java_sources.gni @@ -346,6 +346,7 @@ brave_java_sources = [ "../../brave/android/java/org/chromium/chrome/browser/upgrade/NotificationIntent.java", "../../brave/android/java/org/chromium/chrome/browser/util/BraveConstants.java", "../../brave/android/java/org/chromium/chrome/browser/util/BraveDbUtil.java", + "../../brave/android/java/org/chromium/chrome/browser/util/BraveDynamicColors.java", "../../brave/android/java/org/chromium/chrome/browser/util/ConfigurationUtils.java", "../../brave/android/java/org/chromium/chrome/browser/util/ImageUtils.java", "../../brave/android/java/org/chromium/chrome/browser/util/LiveDataUtil.java", diff --git a/android/java/org/chromium/chrome/browser/util/BraveDynamicColors.java b/android/java/org/chromium/chrome/browser/util/BraveDynamicColors.java new file mode 100644 index 00000000000..8f2d8d44482 --- /dev/null +++ b/android/java/org/chromium/chrome/browser/util/BraveDynamicColors.java @@ -0,0 +1,21 @@ +/* Copyright (c) 2022 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.util; + +import android.app.Activity; + +import com.google.android.material.color.DynamicColorsOptions; + +public class BraveDynamicColors { + public static void applyToActivityIfAvailable(Activity activity) { + // We disable dynamic colors as it causes styling issues with Brave theme. + } + + public static void applyToActivityIfAvailable( + Activity activity, DynamicColorsOptions dynamicColorsOptions) { + // We disable dynamic colors as it causes styling issues with Brave theme. + } +} diff --git a/build/android/bytecode/BUILD.gn b/build/android/bytecode/BUILD.gn index f0443b54654..425d71ee826 100644 --- a/build/android/bytecode/BUILD.gn +++ b/build/android/bytecode/BUILD.gn @@ -25,6 +25,7 @@ java_binary("java_bytecode_rewriter") { "//brave/build/android/bytecode/java/org/brave/bytecode/BraveDefaultBrowserPromoUtilsClassAdapter.java", "//brave/build/android/bytecode/java/org/brave/bytecode/BraveDropdownItemViewInfoListBuilderClassAdapter.java", "//brave/build/android/bytecode/java/org/brave/bytecode/BraveDropdownItemViewInfoListManagerClassAdapter.java", + "//brave/build/android/bytecode/java/org/brave/bytecode/BraveDynamicColorsClassAdapter.java", "//brave/build/android/bytecode/java/org/brave/bytecode/BraveEditUrlSuggestionProcessorClassAdapter.java", "//brave/build/android/bytecode/java/org/brave/bytecode/BraveFeedSurfaceCoordinatorClassAdapter.java", "//brave/build/android/bytecode/java/org/brave/bytecode/BraveFeedSurfaceMediatorClassAdapter.java", diff --git a/build/android/bytecode/java/org/brave/bytecode/BraveClassAdapter.java b/build/android/bytecode/java/org/brave/bytecode/BraveClassAdapter.java index 8fc16ebbc23..6c5535b0a3f 100644 --- a/build/android/bytecode/java/org/brave/bytecode/BraveClassAdapter.java +++ b/build/android/bytecode/java/org/brave/bytecode/BraveClassAdapter.java @@ -24,6 +24,7 @@ public class BraveClassAdapter { chain = new BraveDefaultBrowserPromoUtilsClassAdapter(chain); chain = new BraveDropdownItemViewInfoListBuilderClassAdapter(chain); chain = new BraveDropdownItemViewInfoListManagerClassAdapter(chain); + chain = new BraveDynamicColorsClassAdapter(chain); chain = new BraveEditUrlSuggestionProcessorClassAdapter(chain); chain = new BraveFeedSurfaceCoordinatorClassAdapter(chain); chain = new BraveFeedSurfaceMediatorClassAdapter(chain); diff --git a/build/android/bytecode/java/org/brave/bytecode/BraveDynamicColorsClassAdapter.java b/build/android/bytecode/java/org/brave/bytecode/BraveDynamicColorsClassAdapter.java new file mode 100644 index 00000000000..7047429db32 --- /dev/null +++ b/build/android/bytecode/java/org/brave/bytecode/BraveDynamicColorsClassAdapter.java @@ -0,0 +1,22 @@ +/* Copyright (c) 2022 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.brave.bytecode; + +import org.objectweb.asm.ClassVisitor; + +public class BraveDynamicColorsClassAdapter extends BraveClassVisitor { + static String sDynamicColorsClassName = "com/google/android/material/color/DynamicColors"; + + static String sBraveDynamicColorsClassName = + "org/chromium/chrome/browser/util/BraveDynamicColors"; + + public BraveDynamicColorsClassAdapter(ClassVisitor visitor) { + super(visitor); + + changeMethodOwner(sDynamicColorsClassName, "applyToActivityIfAvailable", + sBraveDynamicColorsClassName); + } +}