From e030665d44cb340af1fabf3c7670caaf4967e3e9 Mon Sep 17 00:00:00 2001 From: AlexeyBarabash Date: Fri, 20 Aug 2021 00:29:51 +0300 Subject: [PATCH 1/2] Remove Chromium leftovers from sync types screen; fixes brave/brave-browser#17580 --- .../browser/sync/settings/BraveManageSyncSettings.java | 8 ++++++-- .../bytecode/BraveManageSyncSettingsClassAdapter.java | 3 +++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/android/java/org/chromium/chrome/browser/sync/settings/BraveManageSyncSettings.java b/android/java/org/chromium/chrome/browser/sync/settings/BraveManageSyncSettings.java index 3600010736b7..38e7bfb959d3 100644 --- a/android/java/org/chromium/chrome/browser/sync/settings/BraveManageSyncSettings.java +++ b/android/java/org/chromium/chrome/browser/sync/settings/BraveManageSyncSettings.java @@ -15,10 +15,11 @@ // See org.brave.bytecode.BraveManageSyncSettingsClassAdapter public class BraveManageSyncSettings extends ManageSyncSettings { - private Preference mGoogleActivityControls; + private static final String PREF_ADVANCED_CATEGORY = "advanced_category"; + private Preference mTurnOffSync; + private Preference mGoogleActivityControls; private Preference mSyncEncryption; - private Preference mManageSyncData; private CheckBoxPreference mSyncPaymentsIntegration; @@ -27,10 +28,13 @@ public class BraveManageSyncSettings extends ManageSyncSettings { public void onCreatePreferences(@Nullable Bundle savedInstanceState, String rootKey) { super.onCreatePreferences(savedInstanceState, rootKey); + getPreferenceScreen().removePreference(mTurnOffSync); getPreferenceScreen().removePreference(mGoogleActivityControls); getPreferenceScreen().removePreference(mSyncEncryption); getPreferenceScreen().removePreference(mManageSyncData); + findPreference(PREF_ADVANCED_CATEGORY).setVisible(false); + mSyncPaymentsIntegration.setVisible(false); } } diff --git a/build/android/bytecode/java/org/brave/bytecode/BraveManageSyncSettingsClassAdapter.java b/build/android/bytecode/java/org/brave/bytecode/BraveManageSyncSettingsClassAdapter.java index b362918c287b..3c38ca50933e 100644 --- a/build/android/bytecode/java/org/brave/bytecode/BraveManageSyncSettingsClassAdapter.java +++ b/build/android/bytecode/java/org/brave/bytecode/BraveManageSyncSettingsClassAdapter.java @@ -16,6 +16,9 @@ public class BraveManageSyncSettingsClassAdapter extends BraveClassVisitor { BraveManageSyncSettingsClassAdapter(ClassVisitor visitor) { super(visitor); + deleteField(sBraveManageSyncSettingsClassName, "mTurnOffSync"); + makeProtectedField(sManageSyncSettingsClassName, "mTurnOffSync"); + deleteField(sBraveManageSyncSettingsClassName, "mGoogleActivityControls"); makeProtectedField(sManageSyncSettingsClassName, "mGoogleActivityControls"); From 1da551807122e4ec6c5b19fea15bfbb7ad113ffd Mon Sep 17 00:00:00 2001 From: AlexeyBarabash Date: Mon, 23 Aug 2021 17:57:16 +0300 Subject: [PATCH 2/2] Updated unit test for bytecode patch of ManageSyncSettings.mTurnOffSync --- android/javatests/org/chromium/chrome/browser/BytecodeTest.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/android/javatests/org/chromium/chrome/browser/BytecodeTest.java b/android/javatests/org/chromium/chrome/browser/BytecodeTest.java index 367cd7fad663..00236671c0e2 100644 --- a/android/javatests/org/chromium/chrome/browser/BytecodeTest.java +++ b/android/javatests/org/chromium/chrome/browser/BytecodeTest.java @@ -442,6 +442,8 @@ public void testFieldsExist() throws Exception { Assert.assertTrue( fieldExists("org/chromium/chrome/browser/sync/settings/ManageSyncSettings", "mSyncPaymentsIntegration")); + Assert.assertTrue(fieldExists( + "org/chromium/chrome/browser/sync/settings/ManageSyncSettings", "mTurnOffSync")); Assert.assertTrue( fieldExists("org/chromium/chrome/browser/toolbar/bottom/BottomControlsCoordinator", "mMediator"));