diff --git a/android/java/org/chromium/chrome/browser/BraveRewardsPanelPopup.java b/android/java/org/chromium/chrome/browser/BraveRewardsPanelPopup.java index 5e9c50bb7cdd..7cc9bb6904e8 100644 --- a/android/java/org/chromium/chrome/browser/BraveRewardsPanelPopup.java +++ b/android/java/org/chromium/chrome/browser/BraveRewardsPanelPopup.java @@ -86,7 +86,6 @@ public class BraveRewardsPanelPopup implements BraveRewardsObserver, BraveReward public static final String PREF_WAS_BRAVE_REWARDS_TURNED_ON = "brave_rewards_turned_on"; public static final String PREF_GRANTS_NOTIFICATION_RECEIVED = "grants_notification_received"; - public static final String PREF_IS_BRAVE_REWARDS_ENABLED = "brave_rewards_enabled"; public static final String PREF_WAS_TOOLBAR_BAT_LOGO_BUTTON_PRESSED = "was_toolbar_bat_logo_button_pressed"; private static final String ADS_GRANT_TYPE = "1"; @@ -166,11 +165,6 @@ public class BraveRewardsPanelPopup implements BraveRewardsObserver, BraveReward private double walletBalance = .0; - public static boolean isBraveRewardsEnabled() { - SharedPreferences sharedPreferences = ContextUtils.getAppSharedPreferences(); - return sharedPreferences.getBoolean(BraveRewardsPanelPopup.PREF_IS_BRAVE_REWARDS_ENABLED, false); - } - private boolean isVerifyWalletEnabled() { SharedPreferences sharedPreferences = ContextUtils.getAppSharedPreferences(); return sharedPreferences.getBoolean(BraveRewardsPanelPopup.PREF_VERIFY_WALLET_ENABLE, false); diff --git a/android/java/org/chromium/chrome/browser/ntp_background_images/util/NTPUtil.java b/android/java/org/chromium/chrome/browser/ntp_background_images/util/NTPUtil.java index 663dce1c321b..13caac693476 100644 --- a/android/java/org/chromium/chrome/browser/ntp_background_images/util/NTPUtil.java +++ b/android/java/org/chromium/chrome/browser/ntp_background_images/util/NTPUtil.java @@ -149,7 +149,7 @@ public static void updateOrientedUI(Context context, ViewGroup view) { public static int checkForNonDistruptiveBanner(NTPImage ntpImage, SponsoredTab sponsoredTab) { BraveRewardsNativeWorker mBraveRewardsNativeWorker = BraveRewardsNativeWorker.getInstance(); if (sponsoredTab.shouldShowBanner()) { - if (BraveRewardsPanelPopup.isBraveRewardsEnabled()) { + if (BravePrefServiceBridge.getInstance().getBoolean(BravePref.BRAVE_REWARDS_ENABLED)) { if (BraveAdsNativeHelper.nativeIsBraveAdsEnabled(Profile.getLastUsedProfile())) { if (ntpImage instanceof Wallpaper) { return SponsoredImageUtil.BR_ON_ADS_ON; diff --git a/android/java/org/chromium/chrome/browser/onboarding/OnboardingPrefManager.java b/android/java/org/chromium/chrome/browser/onboarding/OnboardingPrefManager.java index 194086693c1c..2d90a6aa7d75 100644 --- a/android/java/org/chromium/chrome/browser/onboarding/OnboardingPrefManager.java +++ b/android/java/org/chromium/chrome/browser/onboarding/OnboardingPrefManager.java @@ -16,6 +16,8 @@ import org.chromium.chrome.browser.BraveFeatureList; import org.chromium.chrome.browser.BraveRewardsPanelPopup; import org.chromium.chrome.browser.flags.ChromeFeatureList; +import org.chromium.chrome.browser.preferences.BravePref; +import org.chromium.chrome.browser.preferences.BravePrefServiceBridge; import org.chromium.chrome.browser.notifications.BraveOnboardingNotification; import org.chromium.chrome.browser.profiles.Profile; @@ -135,7 +137,7 @@ public void setOnboardingShownForSkip(boolean isShown) { public boolean showOnboardingForSkip() { boolean shouldShow = !hasOnboardingShownForSkip() - && (ChromeFeatureList.isEnabled(BraveFeatureList.BRAVE_REWARDS) && !BraveRewardsPanelPopup.isBraveRewardsEnabled()) + && (ChromeFeatureList.isEnabled(BraveFeatureList.BRAVE_REWARDS) && !BravePrefServiceBridge.getInstance().getBoolean(BravePref.BRAVE_REWARDS_ENABLED)) && !BraveAdsNativeHelper.nativeIsBraveAdsEnabled(Profile.getLastUsedProfile()) && (getNextOnboardingDate() > 0 && System.currentTimeMillis() > getNextOnboardingDate()); return shouldShow; diff --git a/android/java/org/chromium/chrome/browser/toolbar/top/BraveToolbarLayout.java b/android/java/org/chromium/chrome/browser/toolbar/top/BraveToolbarLayout.java index 64bc322b5be8..843530ac0f93 100644 --- a/android/java/org/chromium/chrome/browser/toolbar/top/BraveToolbarLayout.java +++ b/android/java/org/chromium/chrome/browser/toolbar/top/BraveToolbarLayout.java @@ -39,6 +39,7 @@ import org.chromium.chrome.browser.flags.ChromeFeatureList; import org.chromium.chrome.browser.ntp.NewTabPage; import org.chromium.chrome.browser.onboarding.OnboardingPrefManager; +import org.chromium.chrome.browser.preferences.BravePref; import org.chromium.chrome.browser.preferences.BravePrefServiceBridge; import org.chromium.chrome.browser.preferences.website.BraveShieldsContentSettings; import org.chromium.chrome.browser.preferences.website.BraveShieldsContentSettingsObserver; @@ -576,7 +577,7 @@ private boolean mayShowBraveAdsOnboardingDialog() { @Override public void OnNotificationsCount(int count) { - boolean rewardsEnabled = BraveRewardsPanelPopup.isBraveRewardsEnabled(); + boolean rewardsEnabled = BravePrefServiceBridge.getInstance().getBoolean(BravePref.BRAVE_REWARDS_ENABLED); if (mBraveRewardsNotificationsCount != null && rewardsEnabled) { if (count != 0) { String value = Integer.toString(count); @@ -651,8 +652,6 @@ public void OnRewardsMainEnabled(boolean enabled) { needRelaunch = true; } - sharedPreferencesEditor.putBoolean(BraveRewardsPanelPopup.PREF_IS_BRAVE_REWARDS_ENABLED, enabled); - sharedPreferencesEditor.apply(); if (mBraveRewardsNotificationsCount != null) { String count = mBraveRewardsNotificationsCount.getText().toString(); if (!count.isEmpty()) { diff --git a/browser/android/preferences/brave_prefs.h b/browser/android/preferences/brave_prefs.h index 9f0dabe34ca3..06e99fde9a1b 100644 --- a/browser/android/preferences/brave_prefs.h +++ b/browser/android/preferences/brave_prefs.h @@ -8,6 +8,7 @@ #include #include "brave/common/pref_names.h" +#include "brave/components/brave_rewards/common/pref_names.h" #include "brave/components/ntp_background_images/common/pref_names.h" #include "build/build_config.h" @@ -20,6 +21,7 @@ enum BravePref { NTP_SHOW_BACKGROUND_IMAGE, TOP_SITE_SUGGESTIONS_ENABLED, BRAVE_SUGGESTED_SITE_SUGGESTIONS_ENABLED, + BRAVE_REWARDS_ENABLED, // BRAVE_PREF_NUM_PREFS must be the last entry. BRAVE_PREF_NUM_PREFS }; @@ -30,7 +32,8 @@ const char* const kBravePrefsExposedToJava[] = { ntp_background_images::prefs::kNewTabPageSuperReferralThemesOption, ntp_background_images::prefs::kNewTabPageShowBackgroundImage, kTopSiteSuggestionsEnabled, - kBraveSuggestedSiteSuggestionsEnabled + kBraveSuggestedSiteSuggestionsEnabled, + brave_rewards::prefs::kBraveRewardsEnabled }; static const int kBravePrefOffset = 10000; diff --git a/browser/brave_ads/android/java/org/chromium/chrome/browser/dialogs/BraveAdsSignupDialog.java b/browser/brave_ads/android/java/org/chromium/chrome/browser/dialogs/BraveAdsSignupDialog.java index f1d3a424608c..8e205a35ae65 100644 --- a/browser/brave_ads/android/java/org/chromium/chrome/browser/dialogs/BraveAdsSignupDialog.java +++ b/browser/brave_ads/android/java/org/chromium/chrome/browser/dialogs/BraveAdsSignupDialog.java @@ -27,6 +27,8 @@ import org.chromium.chrome.browser.flags.ChromeFeatureList; import org.chromium.chrome.browser.notifications.BraveOnboardingNotification; import org.chromium.chrome.browser.onboarding.OnboardingPrefManager; +import org.chromium.chrome.browser.preferences.BravePref; +import org.chromium.chrome.browser.preferences.BravePrefServiceBridge; import org.chromium.chrome.browser.profiles.Profile; import org.chromium.chrome.browser.settings.BraveRewardsPreferences; import org.chromium.chrome.browser.util.PackageUtils; @@ -46,7 +48,7 @@ public static boolean shouldShowNewUserDialog(Context context) { shouldShowOnboardingDialog() && PackageUtils.isFirstInstall(context) && !BraveAdsNativeHelper.nativeIsBraveAdsEnabled(Profile.getLastUsedProfile()) - && !BraveRewardsPanelPopup.isBraveRewardsEnabled() + && !BravePrefServiceBridge.getInstance().getBoolean(BravePref.BRAVE_REWARDS_ENABLED) && hasElapsed24Hours(context) && ChromeFeatureList.isEnabled(BraveFeatureList.BRAVE_REWARDS); @@ -61,7 +63,7 @@ public static boolean shouldShowNewUserDialogIfRewardsIsSwitchedOff(Context cont shouldShowOnboardingDialog() && !PackageUtils.isFirstInstall(context) && !BraveAdsNativeHelper.nativeIsBraveAdsEnabled(Profile.getLastUsedProfile()) - && !BraveRewardsPanelPopup.isBraveRewardsEnabled() + && !BravePrefServiceBridge.getInstance().getBoolean(BravePref.BRAVE_REWARDS_ENABLED) && ChromeFeatureList.isEnabled(BraveFeatureList.BRAVE_REWARDS); boolean shouldShowForViewCount = shouldShowForViewCount(); @@ -75,7 +77,7 @@ public static boolean shouldShowExistingUserDialog(Context context) { shouldShowOnboardingDialog() && !PackageUtils.isFirstInstall(context) && !BraveAdsNativeHelper.nativeIsBraveAdsEnabled(Profile.getLastUsedProfile()) - && BraveRewardsPanelPopup.isBraveRewardsEnabled() + && BravePrefServiceBridge.getInstance().getBoolean(BravePref.BRAVE_REWARDS_ENABLED) && BraveAdsNativeHelper.nativeIsLocaleValid(Profile.getLastUsedProfile()) && ChromeFeatureList.isEnabled(BraveFeatureList.BRAVE_REWARDS); diff --git a/build/android/config.gni b/build/android/config.gni index dda93c798a2a..58d9b97793c3 100644 --- a/build/android/config.gni +++ b/build/android/config.gni @@ -34,3 +34,7 @@ brave_chrome_app_java_resources_deps = [ brave_components_browser_ui_site_settings_android_java_resources_deps = [ "//brave/build/android:android_brave_strings_grd", ] + +brave_resources_exclusion_exceptions = [ +"*com_google_android_material_material*design_bottom_*" +] diff --git a/patches/chrome-android-chrome_public_apk_tmpl.gni.patch b/patches/chrome-android-chrome_public_apk_tmpl.gni.patch index e409be429564..a95f2a184dac 100644 --- a/patches/chrome-android-chrome_public_apk_tmpl.gni.patch +++ b/patches/chrome-android-chrome_public_apk_tmpl.gni.patch @@ -1,8 +1,16 @@ diff --git a/chrome/android/chrome_public_apk_tmpl.gni b/chrome/android/chrome_public_apk_tmpl.gni -index 4438f47bcfdb8cbbc1428b35d22bff3aa3f484c4..fdbfe3793dc5e7f9f114be0520d21796dda9beba 100644 +index 4438f47bcfdb8cbbc1428b35d22bff3aa3f484c4..ed160c6ca53f4a68690dc694426e33562876065a 100644 --- a/chrome/android/chrome_public_apk_tmpl.gni +++ b/chrome/android/chrome_public_apk_tmpl.gni -@@ -299,6 +299,7 @@ template("chrome_public_common_apk_or_module_tmpl") { +@@ -195,6 +195,7 @@ template("chrome_public_common_apk_or_module_tmpl") { + "${_material_package}/text_*", + ] + resource_values_filter_rules = [ "${_material_package}:mtrl_alert" ] ++ resource_exclusion_exceptions += brave_resources_exclusion_exceptions + + if (!_is_monochrome) { + product_config_java_packages = [ "org.chromium.chrome.browser" ] +@@ -299,6 +300,7 @@ template("chrome_public_common_apk_or_module_tmpl") { if (!defined(proguard_configs)) { proguard_configs = [] }