From 932da2ddc380f6cfe6b3284af2d354b146d25c47 Mon Sep 17 00:00:00 2001 From: Carmelo Messina Date: Tue, 19 May 2026 11:04:31 +0200 Subject: [PATCH] Disable AppRating: Remove AppRating code paths and build targets. The feature depends on Google Play Review APIs already disabled by default. --- build/cromite_patches_list.txt | 3 +- build/patches/Disable-AppRating.patch | 89 +++++++++++++++++++++++++++ 2 files changed, 91 insertions(+), 1 deletion(-) create mode 100644 build/patches/Disable-AppRating.patch diff --git a/build/cromite_patches_list.txt b/build/cromite_patches_list.txt index c4b37452..d69b22f4 100644 --- a/build/cromite_patches_list.txt +++ b/build/cromite_patches_list.txt @@ -305,6 +305,8 @@ Disable-device-bound-session.patch Keep-disabled-CpuPerformance.patch Immediately-destroy-shared-workers-when-closing-the-page.patch Disable-minikin-hyphenation.patch +Disable-integration-with-Gemini.patch +Disable-AppRating.patch # temporary or wip patches Temp-disable-predictive-back-gesture.patch @@ -316,7 +318,6 @@ Block-leakage-of-urls-in-sandbox-iframes.patch Fix-chromium-build-bugs.patch Try-to-fix-2082.patch Temp-use-PREVIEW-for-IDCompositionDevice5.patch -Disable-integration-with-Gemini.patch # adblock patches eyeo-133.0.6943.49-base.patch diff --git a/build/patches/Disable-AppRating.patch b/build/patches/Disable-AppRating.patch new file mode 100644 index 00000000..966e29ad --- /dev/null +++ b/build/patches/Disable-AppRating.patch @@ -0,0 +1,89 @@ +From: uazo +Date: Mon, 18 May 2026 15:44:56 +0000 +Subject: Disable AppRating + +Chromium Android includes an AppRating promo path that can trigger user-facing +review prompts through the Android app-rating integration. The implementation +depends on Google Play Review APIs provided by Google Play Services. Those +dependencies are already excluded by default in this fork through a separate +patch, making the AppRating feature non-functional and unnecessary. + +Change: +Remove AppRatingPromoController from the optional promo selection flow and +exclude the app_rating Java and junit targets from the Android build graph. + +Privacy/Security Impact: +Removes an unused user-engagement surface and avoids invoking review-related +logic tied to Google Play Services. No browser engine, network, Blink, V8, +storage, or process-isolation behavior is changed. + +Notes: +AppRating depends on Google Play Review APIs from Google Play Services. +Since Google Play Services support is already excluded by default through a +separate patch, this change removes the now-unused integration and prevents +accidental reintroduction of the feature. + +License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html +--- + chrome/android/BUILD.gn | 4 ++-- + .../chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java | 6 ------ + chrome/browser/ui/android/app_rating/BUILD.gn | 2 ++ + 3 files changed, 4 insertions(+), 8 deletions(-) + +diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn +--- a/chrome/android/BUILD.gn ++++ b/chrome/android/BUILD.gn +@@ -513,7 +513,7 @@ if (_is_default_toolchain) { + "//chrome/browser/touch_to_fill/common/android:java", + "//chrome/browser/translate/android:java", + "//chrome/browser/ui/android/actions:java", +- "//chrome/browser/ui/android/app_rating:java", ++ #"//chrome/browser/ui/android/app_rating:java", + "//chrome/browser/ui/android/appmenu:factory_java", + "//chrome/browser/ui/android/appmenu:java", + "//chrome/browser/ui/android/bottombar:java", +@@ -1201,7 +1201,7 @@ if (_is_default_toolchain) { + "//chrome/browser/touch_to_fill/password_manager/password_generation/android/internal:junit", + "//chrome/browser/translate/android:junit", + "//chrome/browser/ui/android/actions:junit", +- "//chrome/browser/ui/android/app_rating:junit", ++ #"//chrome/browser/ui/android/app_rating:junit", + "//chrome/browser/ui/android/appmenu/internal:junit", + "//chrome/browser/ui/android/autofill/internal:junit", + "//chrome/browser/ui/android/bottombar:junit", +diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java +--- a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java ++++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java +@@ -201,7 +201,6 @@ import org.chromium.chrome.browser.toolbar.ToolbarFeatures; + import org.chromium.chrome.browser.toolbar.ToolbarIntentMetadata; + import org.chromium.chrome.browser.toolbar.adaptive.AdaptiveToolbarBehavior; + import org.chromium.chrome.browser.ui.RootUiCoordinator; +-import org.chromium.chrome.browser.ui.app_rating.AppRatingPromoController; + import org.chromium.chrome.browser.ui.appmenu.AppMenuBlocker; + import org.chromium.chrome.browser.ui.appmenu.AppMenuDelegate; + import org.chromium.chrome.browser.ui.bottombar.BottomBarHostManager; +@@ -2237,11 +2236,6 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { + return true; + } + +- if (AppRatingPromoController.maybeShowPromo(profile, mActivity)) { +- UserEducationUtils.recordOptionalPromoType(OptionalPromoType.APP_RATING_PROMPT); +- return true; +- } +- + UserEducationUtils.recordOptionalPromoType(OptionalPromoType.NONE_SHOWN); + return false; + } +diff --git a/chrome/browser/ui/android/app_rating/BUILD.gn b/chrome/browser/ui/android/app_rating/BUILD.gn +--- a/chrome/browser/ui/android/app_rating/BUILD.gn ++++ b/chrome/browser/ui/android/app_rating/BUILD.gn +@@ -5,6 +5,8 @@ + import("//build/config/android/config.gni") + import("//build/config/android/rules.gni") + ++assert(false) ++ + if (enable_chrome_android_internal) { + android_aar_prebuilt("play_review_aar_internal_java") { + aar_path = "//third_party/android_deps/autorolled/cipd/libs/com_google_android_play_review/review.aar" +--