Rebase to v125 (#1084)

Rebase to v125
This commit is contained in:
uazo
2024-05-18 16:53:15 +09:00
committed by GitHub
201 changed files with 3138 additions and 3150 deletions
+1 -1
View File
@@ -1 +1 @@
124.0.6367.202
125.0.6422.41
+2 -3
View File
@@ -140,7 +140,6 @@ Re-introduce-override_build_timestamp.patch
enable-ftrivial-auto-var-init-zero.patch
disable-appending-variations-header.patch
Disable-idle-detection.patch
Allow-building-without-supervised-users.patch
Disable-minidump-upload-scheduling.patch
Revert-Permit-blocking-of-view-source.patch
Disable-safety-check.patch
@@ -237,8 +236,6 @@ Add-webRTC-site-settings.patch
Show-site-settings-for-cookies-javascript-and-ads.patch
Viewport-Protection-flag.patch
Revert-remove-allowscript-content-setting-secondary-url.patch
Revert-remove-allowimage-content-setting-secondary-url.patch
Temp-Alert-for-CC-revert.patch
Timezone-customization.patch
Change-popup-site-setting.patch
Disable-speechSynthesis-getVoices-API.patch
@@ -288,6 +285,8 @@ Enable-platform-aac-audio-and-h264-video.patch
Disable-Paint-Preview-by-default.patch
Do-not-use-Windows-ClearType-Text-Tuner-setting.patch
Private-network-access-content-settings.patch
Allow-building-without-supervised-users.patch
Keep-ComputePressure-disabled.patch
Temp-PerformanceNavigationTiming-privacy-fix.patch
Temp-disable-predictive-back-gesture.patch
@@ -90,8 +90,8 @@ diff --git a/base/android/android_image_reader_compat.h b/base/android/android_i
diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json
--- a/chrome/browser/flag-metadata.json
+++ b/chrome/browser/flag-metadata.json
@@ -3101,9 +3101,9 @@
"expiry_milestone": 125
@@ -3186,9 +3186,9 @@
"expiry_milestone": 135
},
{
- "name": "enable-image-reader",
@@ -183,7 +183,7 @@ diff --git a/gpu/config/gpu_util.cc b/gpu/config/gpu_util.cc
if (!gpu_preferences.enable_android_surface_control)
return kGpuFeatureStatusDisabled;
@@ -390,6 +393,11 @@ void AdjustGpuFeatureStatusToWorkarounds(GpuFeatureInfo* gpu_feature_info) {
@@ -385,6 +388,11 @@ void AdjustGpuFeatureStatusToWorkarounds(GpuFeatureInfo* gpu_feature_info) {
gpu_feature_info->status_values[GPU_FEATURE_TYPE_CANVAS_OOP_RASTERIZATION] =
kGpuFeatureStatusBlocklisted;
}
@@ -217,7 +217,7 @@ diff --git a/gpu/ipc/service/gpu_init.cc b/gpu/ipc/service/gpu_init.cc
#endif
#if BUILDFLAG(ENABLE_VULKAN)
@@ -708,6 +709,13 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandLine* command_line,
@@ -723,6 +724,13 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandLine* command_line,
}
#endif // BUILDFLAG(IS_WIN)
@@ -28,7 +28,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
import org.chromium.printing.PrintManagerDelegateImpl;
import org.chromium.printing.PrintingController;
import org.chromium.printing.PrintingControllerImpl;
@@ -1060,6 +1061,8 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -1078,6 +1079,8 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
super.onStartWithNative();
ChromeActivitySessionTracker.getInstance().onStartWithNative();
ChromeCachedFlags.getInstance().cacheNativeFlags();
@@ -40,26 +40,26 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc
--- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -134,6 +134,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
@@ -138,6 +138,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
&feed::kFeedShowSignInCommand,
&feed::kFeedSignedOutViewDemotion,
&feed::kFeedUserInteractionReliabilityReport,
+ &kAllowUserCertificates,
&feed::kInterestFeedV2,
&feed::kInterestFeedV2Hearts,
&feed::kWebFeed,
&feed::kWebFeedAwareness,
diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
--- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
@@ -141,6 +141,7 @@ public abstract class ChromeFeatureList {
return ChromeFeatureMap.getInstance().mutableFlagWithSafeDefault(featureName, defaultValue);
}
@@ -146,6 +146,7 @@ public abstract class ChromeFeatureList {
/* Alphabetical: */
public static final String ACCOUNT_REAUTHENTICATION_RECENT_TIME_WINDOW =
"AccountReauthenticationRecentTimeWindow";
+ public static final String ALLOW_USER_CERTIFICATES = "AllowUserCertificates";
public static final String ADAPTIVE_BUTTON_IN_TOP_TOOLBAR_TRANSLATE =
"AdaptiveButtonInTopToolbarTranslate";
public static final String ADAPTIVE_BUTTON_IN_TOP_TOOLBAR_ADD_TO_BOOKMARKS =
@@ -533,6 +534,8 @@ public abstract class ChromeFeatureList {
@@ -536,6 +537,8 @@ public abstract class ChromeFeatureList {
public static final CachedFlag sAndroidTabGroupStableIds =
newCachedFlag(ANDROID_TAB_GROUP_STABLE_IDS, false);
public static final CachedFlag sAppSpecificHistory = newCachedFlag(APP_SPECIFIC_HISTORY, false);
@@ -68,10 +68,10 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
public static final CachedFlag sArchiveTabService = newCachedFlag(ARCHIVE_TAB_SERVICE, false);
public static final CachedFlag sAsyncNotificationManager =
newCachedFlag(ASYNC_NOTIFICATION_MANAGER, false);
@@ -684,6 +687,7 @@ public abstract class ChromeFeatureList {
@@ -686,6 +689,7 @@ public abstract class ChromeFeatureList {
public static final List<CachedFlag> sFlagsCachedFullBrowser =
List.of(
sAccountReauthenticationRecentTimeWindow,
+ sAllowUserCertificates,
sAndroidAppIntegration,
sAndroidElegantTextHeight,
@@ -44,7 +44,7 @@ new file mode 100644
diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_request_http_job.cc
--- a/net/url_request/url_request_http_job.cc
+++ b/net/url_request/url_request_http_job.cc
@@ -300,6 +300,11 @@ std::unique_ptr<URLRequestJob> URLRequestHttpJob::Create(URLRequest* request) {
@@ -306,6 +306,11 @@ std::unique_ptr<URLRequestJob> URLRequestHttpJob::Create(URLRequest* request) {
}
}
@@ -6,23 +6,26 @@ adds a new flag in chrome://flags to re-enable the experiment
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
base/features.cc | 3 +++
base/features.cc | 4 ++++
chrome/browser/about_flags.cc | 1 +
.../Add-PartialLowEndModeOnMidRangeDevices-flag.inc | 12 ++++++++++++
3 files changed, 16 insertions(+)
3 files changed, 17 insertions(+)
create mode 100644 cromite_flags/chrome/browser/about_flags_cc/Add-PartialLowEndModeOnMidRangeDevices-flag.inc
diff --git a/base/features.cc b/base/features.cc
--- a/base/features.cc
+++ b/base/features.cc
@@ -67,4 +67,7 @@ BASE_FEATURE(kCollectAndroidFrameTimelineMetrics,
base::FEATURE_DISABLED_BY_DEFAULT);
@@ -91,6 +91,10 @@ BASE_FEATURE(kCollectAndroidFrameTimelineMetrics,
FEATURE_DISABLED_BY_DEFAULT);
#endif // BUILDFLAG(IS_ANDROID)
+#if BUILDFLAG(IS_ANDROID)
+SET_CROMITE_FEATURE_DISABLED(kPartialLowEndModeOnMidRangeDevices);
+#endif
} // namespace base::features
+
void Init(EmitThreadControllerProfilerMetadata
emit_thread_controller_profiler_metadata) {
InitializeCpuReductionExperiment();
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -14,8 +14,8 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json
--- a/chrome/browser/flag-metadata.json
+++ b/chrome/browser/flag-metadata.json
@@ -7251,9 +7251,9 @@
"expiry_milestone": 125
@@ -7333,9 +7333,9 @@
"expiry_milestone": 126
},
{
- "name": "restrict-gamepad-access",
@@ -29,7 +29,7 @@ diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.js
diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
--- a/chrome/browser/flag_descriptions.cc
+++ b/chrome/browser/flag_descriptions.cc
@@ -3083,7 +3083,7 @@ const char kResetShortcutCustomizationsDescription[] =
@@ -3005,7 +3005,7 @@ const char kResetShortcutCustomizationsDescription[] =
const char kRestrictGamepadAccessName[] = "Restrict gamepad access";
const char kRestrictGamepadAccessDescription[] =
@@ -50,7 +50,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/android/java/res/values/values.xml b/chrome/android/java/res/values/values.xml
--- a/chrome/android/java/res/values/values.xml
+++ b/chrome/android/java/res/values/values.xml
@@ -25,6 +25,9 @@ found in the LICENSE file.
@@ -19,6 +19,9 @@ found in the LICENSE file.
<!-- Compositor Tab Title Text -->
<bool name="compositor_tab_title_fake_bold_text">true</bool>
@@ -100,7 +100,7 @@ diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
diff --git a/chrome/browser/browser_resources.grd b/chrome/browser/browser_resources.grd
--- a/chrome/browser/browser_resources.grd
+++ b/chrome/browser/browser_resources.grd
@@ -234,6 +234,9 @@
@@ -233,6 +233,9 @@
<include name="IDR_PREF_HASH_SEED_BIN" file="resources\settings\internal\pref_hash_seed.bin" type="BINDATA" />
<include name="IDR_ADDITIONAL_MODULE_IDS" file="${additional_modules_list_file}" use_base_dir="false" type="BINDATA" />
</if>
@@ -206,7 +206,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse
#if BUILDFLAG(ENABLE_BACKGROUND_MODE)
#include "chrome/browser/background/background_mode_manager.h"
#endif
@@ -1483,6 +1485,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) {
@@ -1523,6 +1525,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) {
component_updater::RegisterPrefs(registry);
domain_reliability::RegisterPrefs(registry);
embedder_support::OriginTrialPrefs::RegisterPrefs(registry);
@@ -661,7 +661,7 @@ new file mode 100644
diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn
--- a/chrome/browser/ui/BUILD.gn
+++ b/chrome/browser/ui/BUILD.gn
@@ -306,6 +306,8 @@ static_library("ui") {
@@ -314,6 +314,8 @@ static_library("ui") {
"webui/metrics_internals/metrics_internals_ui.h",
"webui/net_export_ui.cc",
"webui/net_export_ui.h",
@@ -673,7 +673,7 @@ diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn
diff --git a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc b/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc
--- a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc
+++ b/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc
@@ -53,6 +53,7 @@
@@ -55,6 +55,7 @@
#include "chrome/browser/ui/webui/ntp_tiles_internals_ui.h"
#include "chrome/browser/ui/webui/omnibox/omnibox_ui.h"
#include "chrome/browser/ui/webui/policy/policy_ui.h"
@@ -681,7 +681,7 @@ diff --git a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc b/chrom
#include "chrome/browser/ui/webui/predictors/predictors_ui.h"
#include "chrome/browser/ui/webui/privacy_sandbox/privacy_sandbox_internals_ui.h"
#include "chrome/browser/ui/webui/segmentation_internals/segmentation_internals_ui.h"
@@ -470,6 +471,8 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui,
@@ -455,6 +456,8 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui,
return &NewWebUI<MetricsInternalsUI>;
if (url.host_piece() == chrome::kChromeUINetExportHost)
return &NewWebUI<NetExportUI>;
@@ -1136,7 +1136,7 @@ diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_cons
const char kChromeUIChromeURLsHost[] = "chrome-urls";
const char kChromeUIChromeURLsURL[] = "chrome://chrome-urls/";
const char kChromeUIComponentsHost[] = "components";
@@ -466,6 +468,7 @@ bool IsSystemWebUIHost(base::StringPiece host) {
@@ -464,6 +466,7 @@ bool IsSystemWebUIHost(base::StringPiece host) {
kChromeUILockScreenNetworkHost,
kChromeUILockScreenStartReauthHost,
kChromeUIMobileSetupHost,
@@ -1144,7 +1144,7 @@ diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_cons
kChromeUIMultiDeviceSetupHost,
kChromeUINetworkHost,
kChromeUINotificationTesterHost,
@@ -764,6 +767,7 @@ const char* const kChromeHostURLs[] = {
@@ -759,6 +762,7 @@ const char* const kChromeHostURLs[] = {
#if !BUILDFLAG(IS_ANDROID)
#if !BUILDFLAG(IS_CHROMEOS)
kChromeUIAppLauncherPageHost,
+103 -79
View File
@@ -66,7 +66,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
chrome/browser/profiles/profile_selections.cc | 10 ++
chrome/browser/profiles/profile_selections.h | 7 +-
.../browser/ui/android/native_page/BUILD.gn | 2 +
.../browser/ui/native_page/NativePage.java | 14 +-
.../browser/ui/native_page/NativePage.java | 23 ++-
.../strings/android_chrome_strings.grd | 31 ++++
.../browser/toolbar/LocationBarModel.java | 5 +-
chrome/browser/ui/messages/android/BUILD.gn | 1 +
@@ -85,7 +85,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../add-an-always-incognito-mode.inc | 3 +
.../add-an-always-incognito-mode.inc | 1 +
net/base/file_stream_context.cc | 2 +-
66 files changed, 775 insertions(+), 101 deletions(-)
66 files changed, 781 insertions(+), 104 deletions(-)
create mode 100644 chrome/android/java/res/xml/incognito_preferences.xml
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/AlwaysIncognitoLinkInterceptor.java
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/IncognitoSettings.java
@@ -98,7 +98,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_java_resources.gni
--- a/chrome/android/chrome_java_resources.gni
+++ b/chrome/android/chrome_java_resources.gni
@@ -646,6 +646,7 @@ chrome_java_resources = [
@@ -642,6 +642,7 @@ chrome_java_resources = [
"java/res/xml/manage_sync_preferences.xml",
"java/res/xml/personalize_google_services_preferences.xml",
"java/res/xml/phone_as_a_security_key_accessory_filter.xml",
@@ -255,7 +255,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
import org.chromium.chrome.browser.IntentHandler.TabOpenType;
import org.chromium.chrome.browser.app.ChromeActivity;
import org.chromium.chrome.browser.app.metrics.LaunchCauseMetrics;
@@ -686,10 +690,15 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -692,10 +696,15 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
});
// For saving non-incognito tab closures for Recent Tabs.
@@ -275,7 +275,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
// Defer initialization of this helper so it triggers after TabModelFilter
// observers.
UndoRefocusHelper.initialize(
@@ -2445,8 +2454,9 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -2430,8 +2439,9 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
// We determine the model as soon as possible so every systems get initialized coherently.
boolean startIncognito =
@@ -290,7 +290,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
@@ -96,6 +96,7 @@ import org.chromium.chrome.browser.contextualsearch.ContextualSearchFieldTrial;
@@ -94,6 +94,7 @@ import org.chromium.chrome.browser.contextualsearch.ContextualSearchFieldTrial;
import org.chromium.chrome.browser.contextualsearch.ContextualSearchManager;
import org.chromium.chrome.browser.contextualsearch.ContextualSearchManager.ContextualSearchTabPromotionDelegate;
import org.chromium.chrome.browser.dependency_injection.ChromeActivityCommonsModule;
@@ -298,7 +298,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
import org.chromium.chrome.browser.dependency_injection.ChromeActivityComponent;
import org.chromium.chrome.browser.dependency_injection.ModuleFactoryOverrides;
import org.chromium.chrome.browser.device.DeviceClassManager;
@@ -1998,6 +1999,9 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -2008,6 +2009,9 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
throw new IllegalStateException(
"Attempting to access TabCreator before initialization");
}
@@ -331,7 +331,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App
/**
* Base implementation of {@link AppMenuPropertiesDelegate} that handles hiding and showing menu
* items based on activity state.
@@ -593,6 +599,13 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
@@ -594,6 +600,13 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
}
private void prepareCommonMenuItems(Menu menu, @MenuGroup int menuGroup, boolean isIncognito) {
@@ -345,7 +345,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App
// We have to iterate all menu items since same menu item ID may be associated with more
// than one menu items.
boolean isOverviewModeMenu = menuGroup == MenuGroup.OVERVIEW_MODE_MENU;
@@ -656,7 +669,15 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
@@ -657,7 +670,15 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
}
if (item.getItemId() == R.id.recent_tabs_menu_id) {
@@ -362,8 +362,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App
}
if (item.getItemId() == R.id.menu_select_tabs) {
item.setVisible(isMenuSelectTabsVisible);
@@ -865,8 +886,9 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
&& !isChromeScheme
@@ -866,8 +887,9 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
&& !isNativePage
&& !isFileScheme
&& !isContentScheme
- && !isIncognito
@@ -472,12 +472,12 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
+ downloadItemVisible = true;
+ }
boolean isChromeScheme =
boolean isNativePage =
url.getScheme().equals(UrlConstants.CHROME_SCHEME)
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java
@@ -83,6 +83,9 @@ import org.chromium.components.browser_ui.widget.TintedDrawable;
@@ -84,6 +84,9 @@ import org.chromium.components.browser_ui.widget.TintedDrawable;
import org.chromium.components.embedder_support.util.UrlConstants;
import org.chromium.device.mojom.ScreenOrientationLockType;
@@ -487,7 +487,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.util.ArrayList;
@@ -1296,7 +1299,7 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid
@@ -1307,7 +1310,7 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid
@Override
public boolean isIncognito() {
@@ -499,7 +499,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadUtils.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadUtils.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadUtils.java
@@ -34,6 +34,7 @@ import org.chromium.base.FileUtils;
@@ -35,6 +35,7 @@ import org.chromium.base.FileUtils;
import org.chromium.base.IntentUtils;
import org.chromium.base.Log;
import org.chromium.chrome.R;
@@ -507,7 +507,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/Downlo
import org.chromium.chrome.browser.ChromeTabbedActivity;
import org.chromium.chrome.browser.IntentHandler;
import org.chromium.chrome.browser.app.download.home.DownloadActivityLauncher;
@@ -76,6 +77,10 @@ import org.chromium.url.GURL;
@@ -77,6 +78,10 @@ import org.chromium.url.GURL;
import java.io.File;
@@ -518,7 +518,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/Downlo
/** A class containing some utility static methods. */
public class DownloadUtils {
private static final String TAG = "download";
@@ -288,7 +293,16 @@ public class DownloadUtils {
@@ -290,7 +295,16 @@ public class DownloadUtils {
// Offline pages isn't supported in Incognito. This should be checked before calling
// OfflinePageBridge.getForProfile because OfflinePageBridge instance will not be found
// for incognito profile.
@@ -563,7 +563,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryManager.java b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryManager.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryManager.java
@@ -50,6 +50,14 @@ import org.chromium.ui.base.Clipboard;
@@ -52,6 +52,14 @@ import org.chromium.ui.base.Clipboard;
import java.util.List;
@@ -578,7 +578,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History
/** Combines and manages the different UI components of browsing history. */
public class HistoryManager
implements OnMenuItemClickListener,
@@ -140,7 +148,7 @@ public class HistoryManager
@@ -147,7 +155,7 @@ public class HistoryManager
mUmaRecorder.recordOpenHistory();
// If incognito placeholder is shown, we don't need to create History UI elements.
@@ -587,7 +587,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History
mSelectableListLayout = null;
mRootView = getIncognitoHistoryPlaceholderView();
return;
@@ -349,9 +357,22 @@ public class HistoryManager
@@ -355,9 +363,22 @@ public class HistoryManager
onBackPressStateChanged();
}
@@ -611,7 +611,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History
// If Incognito placeholder is shown no need to call any destroy method.
return;
}
@@ -407,7 +428,7 @@ public class HistoryManager
@@ -417,7 +438,7 @@ public class HistoryManager
* @return True if manager handles this event, false if it decides to ignore.
*/
private boolean onBackPressed() {
@@ -664,20 +664,20 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat
import org.chromium.chrome.browser.app.ChromeActivity;
import org.chromium.chrome.browser.app.download.home.DownloadPage;
import org.chromium.chrome.browser.bookmarks.BookmarkPage;
@@ -308,7 +309,8 @@ public class NativePageFactory {
String url, NativePage candidatePage, Tab tab, boolean isIncognito, boolean isPdf) {
@@ -307,7 +308,8 @@ public class NativePageFactory {
String url, NativePage candidatePage, Tab tab, boolean isIncognito, PdfInfo pdfInfo) {
NativePage page;
- switch (NativePage.nativePageType(url, candidatePage, isIncognito, isPdf)) {
- switch (NativePage.nativePageType(url, candidatePage, isIncognito, pdfInfo != null)) {
+ boolean isAlwaysIncognito = AlwaysIncognitoLinkInterceptor.isAlwaysIncognito();
+ switch (NativePage.nativePageType(url, candidatePage, isIncognito, isPdf, isAlwaysIncognito)) {
+ switch (NativePage.nativePageType(url, candidatePage, isIncognito, pdfInfo != null, isAlwaysIncognito)) {
case NativePageType.NONE:
return null;
case NativePageType.CANDIDATE:
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsManager.java b/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsManager.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsManager.java
@@ -36,6 +36,15 @@ import org.chromium.components.signin.metrics.SigninAccessPoint;
@@ -38,6 +38,15 @@ import org.chromium.components.signin.metrics.SigninAccessPoint;
import org.chromium.components.sync.SyncService;
import org.chromium.url.GURL;
@@ -693,7 +693,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsM
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -102,7 +111,8 @@ public class RecentTabsManager
@@ -104,7 +113,8 @@ public class RecentTabsManager
Profile profile,
Context context,
Runnable showHistoryManager) {
@@ -703,7 +703,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsM
mActiveTab = tab;
mTabModelSelector = tabModelSelector;
mShowHistoryManager = showHistoryManager;
@@ -265,6 +275,22 @@ public class RecentTabsManager
@@ -270,6 +280,22 @@ public class RecentTabsManager
*/
public void openRecentlyClosedTab(RecentlyClosedTab tab, int windowDisposition) {
if (mIsDestroyed) return;
@@ -952,7 +952,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabSaverImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabSaverImpl.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabSaverImpl.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabSaverImpl.java
@@ -28,6 +28,8 @@ import java.util.Arrays;
@@ -29,6 +29,8 @@ import java.util.Arrays;
import java.util.Collections;
import java.util.List;
@@ -961,7 +961,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore
/** Creates historical entries in TabRestoreService. */
@JNINamespace("historical_tab_saver")
public class HistoricalTabSaverImpl implements HistoricalTabSaver {
@@ -66,10 +68,10 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver {
@@ -67,10 +69,10 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver {
// HistoricalTabSaver implementation.
@Override
@@ -974,7 +974,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore
}
@Override
@@ -126,7 +128,7 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver {
@@ -127,7 +129,7 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver {
// If there is only a single valid tab remaining save it individually.
if (validEntries.size() == 1 && validEntries.get(0).isSingleTab()) {
@@ -983,7 +983,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore
return;
}
@@ -165,14 +167,15 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver {
@@ -166,14 +168,15 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver {
CollectionUtil.integerCollectionToIntArray(savedStateVersions));
}
@@ -1001,7 +1001,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore
}
/**
@@ -180,7 +183,7 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver {
@@ -181,7 +184,7 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver {
* internal Chrome scheme, about:blank, or a native page and it cannot be incognito.
*/
private boolean shouldSave(Tab tab) {
@@ -1010,7 +1010,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore
// {@link GURL#getScheme()} is not available in unit tests.
if (mIgnoreUrlSchemesForTesting) return true;
@@ -261,7 +264,7 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver {
@@ -262,7 +265,7 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver {
@NativeMethods
interface Natives {
@@ -1022,7 +1022,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore
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
@@ -137,6 +137,8 @@ import org.chromium.components.webapps.bottomsheet.PwaBottomSheetController;
@@ -150,6 +150,8 @@ import org.chromium.components.webapps.bottomsheet.PwaBottomSheetController;
import org.chromium.components.webapps.bottomsheet.PwaBottomSheetControllerFactory;
import org.chromium.ui.base.ActivityWindowAndroid;
import org.chromium.ui.base.DeviceFormFactor;
@@ -1031,7 +1031,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab
import org.chromium.ui.base.IntentRequestTracker;
import org.chromium.ui.dragdrop.DragDropGlobalState;
import org.chromium.ui.modaldialog.ModalDialogManager;
@@ -1006,7 +1008,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator {
@@ -1073,7 +1075,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator {
() -> {
mTabCreatorManagerSupplier
.get()
@@ -1054,7 +1054,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
/** This class creates various kinds of new tabs and adds them to the right {@link TabModel}. */
public class ChromeTabCreator extends TabCreator {
/** Interface to handle showing overview instead of NTP if needed. */
@@ -499,7 +503,6 @@ public class ChromeTabCreator extends TabCreator {
@@ -500,7 +504,6 @@ public class ChromeTabCreator extends TabCreator {
// TODO(crbug.com/1081924): Clean up the launches from SearchActivity/Chrome.
public Tab launchUrlFromExternalApp(
LoadUrlParams loadUrlParams, String appId, boolean forceNewTab, Intent intent) {
@@ -1070,10 +1070,10 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabMod
import org.chromium.base.supplier.OneshotSupplier;
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
import org.chromium.chrome.browser.compositor.layouts.content.TabContentManager;
import org.chromium.chrome.browser.flags.ActivityType;
import org.chromium.chrome.browser.ntp.RecentlyClosedBridge;
@@ -107,6 +108,8 @@ public class TabModelSelectorImpl extends TabModelSelectorBase implements TabMod
import org.chromium.chrome.browser.profiles.ProfileProvider;
@@ -108,6 +109,8 @@ public class TabModelSelectorImpl extends TabModelSelectorBase implements TabMod
ProfileProvider profileProvider = mProfileProviderSupplier.get();
assert profileProvider != null;
@@ -1085,7 +1085,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabMod
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java
@@ -49,6 +49,8 @@ import org.chromium.chrome.features.start_surface.StartSurfaceUserData;
@@ -48,6 +48,8 @@ import org.chromium.chrome.features.start_surface.StartSurfaceUserData;
import org.chromium.components.embedder_support.util.UrlUtilities;
import org.chromium.content_public.browser.LoadUrlParams;
@@ -1094,7 +1094,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPer
import java.io.BufferedInputStream;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
@@ -671,6 +673,13 @@ public class TabPersistentStore {
@@ -670,6 +672,13 @@ public class TabPersistentStore {
}
}
}
@@ -1119,7 +1119,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/Toolbar
import org.chromium.chrome.browser.IntentHandler;
import org.chromium.chrome.browser.app.tab_activity_glue.TabReparentingController;
import org.chromium.chrome.browser.app.tabmodel.TabWindowManagerSingleton;
@@ -626,7 +627,7 @@ public class ToolbarManager
@@ -634,7 +635,7 @@ public class ToolbarManager
TraceEvent.end("isOfflinePage");
return ret;
}
@@ -1188,7 +1188,7 @@ diff --git a/chrome/browser/android/historical_tab_saver.cc b/chrome/browser/and
using base::android::JavaParamRef;
using base::android::JavaRef;
using base::android::ScopedJavaLocalRef;
@@ -87,7 +92,8 @@ std::vector<std::optional<tab_groups::TabGroupId>> JavaTokensToTabGroupIds(
@@ -84,7 +89,8 @@ std::vector<std::optional<tab_groups::TabGroupId>> JavaTokensToTabGroupIds(
void CreateHistoricalTab(
TabAndroid* tab_android,
@@ -1198,7 +1198,7 @@ diff --git a/chrome/browser/android/historical_tab_saver.cc b/chrome/browser/and
if (!tab_android) {
return;
}
@@ -98,9 +104,14 @@ void CreateHistoricalTab(
@@ -95,9 +101,14 @@ void CreateHistoricalTab(
return;
}
@@ -1215,7 +1215,7 @@ diff --git a/chrome/browser/android/historical_tab_saver.cc b/chrome/browser/and
if (!service) {
return;
}
@@ -162,7 +173,7 @@ void CreateHistoricalBulkClosure(
@@ -159,7 +170,7 @@ void CreateHistoricalBulkClosure(
std::vector<int> per_tab_root_id,
std::vector<raw_ptr<TabAndroid, VectorExperimental>> tabs,
std::vector<WebContentsStateByteBuffer> web_contents_state) {
@@ -1224,7 +1224,7 @@ diff --git a/chrome/browser/android/historical_tab_saver.cc b/chrome/browser/and
DCHECK_EQ(root_ids.size(), group_titles.size());
DCHECK_EQ(root_ids.size(), group_colors.size());
DCHECK_EQ(root_ids.size(), optional_tab_group_ids.size());
@@ -286,11 +297,12 @@ static void JNI_HistoricalTabSaverImpl_CreateHistoricalTab(
@@ -283,11 +294,12 @@ static void JNI_HistoricalTabSaverImpl_CreateHistoricalTab(
JNIEnv* env,
const JavaParamRef<jobject>& jtab_android,
const JavaParamRef<jobject>& state,
@@ -1295,15 +1295,15 @@ diff --git a/chrome/browser/autocomplete/remote_suggestions_service_factory.cc b
diff --git a/chrome/browser/content_settings/host_content_settings_map_factory.cc b/chrome/browser/content_settings/host_content_settings_map_factory.cc
--- a/chrome/browser/content_settings/host_content_settings_map_factory.cc
+++ b/chrome/browser/content_settings/host_content_settings_map_factory.cc
@@ -16,6 +16,7 @@
#include "chrome/browser/profiles/profiles_state.h"
@@ -18,6 +18,7 @@
#include "chrome/browser/search_engines/template_url_service_factory.h"
#include "chrome/browser/supervised_user/supervised_user_settings_service_factory.h"
#include "chrome/common/buildflags.h"
+#include "chrome/common/pref_names.h"
#include "components/content_settings/core/browser/content_settings_pref_provider.h"
#include "components/content_settings/core/browser/host_content_settings_map.h"
#include "components/permissions/features.h"
@@ -105,9 +106,25 @@ scoped_refptr<RefcountedKeyedService>
@@ -99,9 +100,25 @@ scoped_refptr<RefcountedKeyedService>
if (profile->IsOffTheRecord() && !profile->IsGuestSession())
GetForProfile(original_profile);
@@ -1330,7 +1330,7 @@ diff --git a/chrome/browser/content_settings/host_content_settings_map_factory.c
/*store_last_modified=*/true, profile->ShouldRestoreOldSessionCookies(),
profiles::IsRegularUserProfile(profile)));
@@ -117,6 +134,9 @@ scoped_refptr<RefcountedKeyedService>
@@ -111,6 +128,9 @@ scoped_refptr<RefcountedKeyedService>
HostContentSettingsMap::WEBUI_ALLOWLIST_PROVIDER,
std::move(allowlist_provider));
@@ -1343,7 +1343,7 @@ diff --git a/chrome/browser/content_settings/host_content_settings_map_factory.c
diff --git a/chrome/browser/history/history_tab_helper.cc b/chrome/browser/history/history_tab_helper.cc
--- a/chrome/browser/history/history_tab_helper.cc
+++ b/chrome/browser/history/history_tab_helper.cc
@@ -41,6 +41,9 @@
@@ -42,6 +42,9 @@
#include "components/feed/core/v2/public/feed_api.h"
#include "components/feed/core/v2/public/feed_service.h"
#include "content/public/browser/web_contents.h"
@@ -1353,7 +1353,7 @@ diff --git a/chrome/browser/history/history_tab_helper.cc b/chrome/browser/histo
#else
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/browser_finder.h"
@@ -448,6 +451,13 @@ void HistoryTabHelper::TitleWasSet(NavigationEntry* entry) {
@@ -455,6 +458,13 @@ void HistoryTabHelper::TitleWasSet(NavigationEntry* entry) {
history::HistoryService* HistoryTabHelper::GetHistoryService() {
Profile* profile =
Profile::FromBrowserContext(web_contents()->GetBrowserContext());
@@ -1367,7 +1367,7 @@ diff --git a/chrome/browser/history/history_tab_helper.cc b/chrome/browser/histo
if (profile->IsOffTheRecord())
return nullptr;
@@ -455,6 +465,16 @@ history::HistoryService* HistoryTabHelper::GetHistoryService() {
@@ -462,6 +472,16 @@ history::HistoryService* HistoryTabHelper::GetHistoryService() {
profile, ServiceAccessType::IMPLICIT_ACCESS);
}
@@ -1429,9 +1429,9 @@ diff --git a/chrome/browser/offline_pages/android/offline_page_bridge.cc b/chrom
+#include "components/prefs/pref_service.h"
+#include "chrome/common/pref_names.h"
using base::android::ConvertJavaStringToUTF8;
using base::android::ConvertUTF16ToJavaString;
@@ -780,9 +783,15 @@ void OfflinePageBridge::GetPageByOfflineIdDone(
using base::android::ConvertUTF8ToJavaString;
using base::android::JavaParamRef;
@@ -757,9 +760,15 @@ void OfflinePageBridge::GetPageByOfflineIdDone(
}
if (offline_page_model_->IsArchiveInInternalDir(offline_page->file_path)) {
@@ -1716,7 +1716,7 @@ diff --git a/chrome/browser/offline_pages/request_coordinator_factory.h b/chrome
diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc
--- a/chrome/browser/prefs/browser_prefs.cc
+++ b/chrome/browser/prefs/browser_prefs.cc
@@ -249,6 +249,7 @@
@@ -244,6 +244,7 @@
#if BUILDFLAG(IS_ANDROID)
#include "chrome/browser/accessibility/accessibility_prefs/android/accessibility_prefs_controller.h"
@@ -1724,7 +1724,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse
#include "chrome/browser/android/bookmarks/partner_bookmarks_shim.h"
#include "chrome/browser/android/ntp/recent_tabs_page_prefs.h"
#include "chrome/browser/android/oom_intervention/oom_intervention_decider.h"
@@ -1892,6 +1893,10 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
@@ -1942,6 +1943,10 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
usage_stats::UsageStatsBridge::RegisterProfilePrefs(registry);
variations::VariationsService::RegisterProfilePrefs(registry);
webapps::InstallPromptPrefs::RegisterProfilePrefs(registry);
@@ -1810,18 +1810,29 @@ diff --git a/chrome/browser/ui/android/native_page/java/src/org/chromium/chrome/
/** An interface for pages that will be using Android views instead of html/rendered Web content. */
public interface NativePage {
/**
@@ -127,7 +129,7 @@ public interface NativePage {
static boolean isNativePageUrl(GURL url, boolean isIncognito) {
// TODO(shuyng): Propagate the real isPdf param.
return url != null
- && nativePageType(url, null, isIncognito, /* isPdf= */ false)
+ && nativePageType(url, null, isIncognito, /* isPdf= */ false, /*isAlwaysIncognito*/ false)
!= NativePageType.NONE;
@@ -130,7 +132,9 @@ public interface NativePage {
* @return Whether the URL would navigate to a native page.
*/
static boolean isNativePageUrl(GURL url, boolean isIncognito, boolean isPdf) {
- return url != null && nativePageType(url, null, isIncognito, isPdf) != NativePageType.NONE;
+ return url != null
+ && nativePageType(url, null, isIncognito, isPdf, /*isAlwaysIncognito*/ false)
+ != NativePageType.NONE;
}
@@ -140,11 +142,12 @@ public interface NativePage {
/**
@@ -140,7 +144,7 @@ public interface NativePage {
* not have chrome or chrome-native scheme.
*/
// TODO(crbug/783819) - Convert to using GURL.
static boolean isChromePageUrl(GURL url, boolean isIncognito) {
- return url != null && chromePageType(url, null, isIncognito) != NativePageType.NONE;
+ return url != null && chromePageType(url, null, isIncognito, /*isAlwaysIncognito*/false) != NativePageType.NONE;
}
/**
@@ -152,11 +156,12 @@ public interface NativePage {
*/
// TODO(crbug.com/40549331) - Convert to using GURL.
static @NativePageType int nativePageType(
- String url, NativePage candidatePage, boolean isIncognito, boolean isPdf) {
+ String url, NativePage candidatePage, boolean isIncognito, boolean isPdf,
@@ -1834,16 +1845,29 @@ diff --git a/chrome/browser/ui/android/native_page/java/src/org/chromium/chrome/
}
/**
@@ -155,7 +158,7 @@ public interface NativePage {
@@ -167,9 +172,10 @@ public interface NativePage {
* @return Type of the native page defined in {@link NativePageType}.
*/
private static @NativePageType int nativePageType(
- GURL url, NativePage candidatePage, boolean isIncognito, boolean isPdf) {
+ GURL url, NativePage candidatePage, boolean isIncognito, boolean isPdf, boolean isAlwaysIncognito) {
+ GURL url, NativePage candidatePage, boolean isIncognito, boolean isPdf,
+ boolean isAlwaysIncognito) {
if (!isPdf) {
- return chromePageType(url, candidatePage, isIncognito);
+ return chromePageType(url, candidatePage, isIncognito, isAlwaysIncognito);
}
if (candidatePage != null && candidatePage.getUrl().equals(url.getSpec())) {
@@ -187,7 +193,7 @@ public interface NativePage {
* which do not have chrome or chrome-native scheme.
*/
private static @NativePageType int chromePageType(
- GURL url, NativePage candidatePage, boolean isIncognito) {
+ GURL url, NativePage candidatePage, boolean isIncognito, boolean isAlwaysIncognito) {
String host = url.getHost();
String scheme = url.getScheme();
if (!isPdf
@@ -180,7 +183,8 @@ public interface NativePage {
if (!UrlConstants.CHROME_NATIVE_SCHEME.equals(scheme)
@@ -207,7 +213,8 @@ public interface NativePage {
return NativePageType.DOWNLOADS;
} else if (UrlConstants.HISTORY_HOST.equals(host)) {
return NativePageType.HISTORY;
@@ -1856,7 +1880,7 @@ diff --git a/chrome/browser/ui/android/native_page/java/src/org/chromium/chrome/
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -1257,6 +1257,37 @@ Your Google account may have other forms of browsing history like searches and a
@@ -1265,6 +1265,37 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_CLEAR_BROWSING_HISTORY_SUMMARY_SYNCED_NO_LINK" desc="A text for the basic tab explaining browsing history for users with history sync. This version is shown when the link to MyActivity is displayed separately.">
Clears history from all synced devices
</message>
@@ -1962,7 +1986,7 @@ new file mode 100644
diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h
--- a/chrome/common/pref_names.h
+++ b/chrome/common/pref_names.h
@@ -3955,6 +3955,12 @@ inline constexpr char kOutOfProcessSystemDnsResolutionEnabled[] =
@@ -3988,6 +3988,12 @@ inline constexpr char kOutOfProcessSystemDnsResolutionEnabled[] =
"net.out_of_process_system_dns_resolution_enabled";
#endif // BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX)
@@ -2028,7 +2052,7 @@ diff --git a/components/content_settings/core/browser/content_settings_pref_prov
diff --git a/components/content_settings/core/browser/host_content_settings_map.cc b/components/content_settings/core/browser/host_content_settings_map.cc
--- a/components/content_settings/core/browser/host_content_settings_map.cc
+++ b/components/content_settings/core/browser/host_content_settings_map.cc
@@ -277,6 +277,7 @@ struct ContentSettingEntry {
@@ -283,6 +283,7 @@ struct ContentSettingEntry {
HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs,
bool is_off_the_record,
@@ -2036,7 +2060,7 @@ diff --git a/components/content_settings/core/browser/host_content_settings_map.
bool store_last_modified,
bool restore_session,
bool should_record_metrics)
@@ -286,6 +287,7 @@ HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs,
@@ -292,6 +293,7 @@ HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs,
#endif
prefs_(prefs),
is_off_the_record_(is_off_the_record),
@@ -2044,7 +2068,7 @@ diff --git a/components/content_settings/core/browser/host_content_settings_map.
store_last_modified_(store_last_modified),
allow_invalid_secondary_pattern_for_testing_(false),
clock_(base::DefaultClock::GetInstance()) {
@@ -298,7 +300,7 @@ HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs,
@@ -304,7 +306,7 @@ HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs,
policy_provider->AddObserver(this);
auto pref_provider_ptr = std::make_unique<content_settings::PrefProvider>(
@@ -2064,7 +2088,7 @@ diff --git a/components/content_settings/core/browser/host_content_settings_map.
bool store_last_modified,
bool restore_session,
bool should_record_metrics);
@@ -544,6 +545,8 @@ class HostContentSettingsMap : public content_settings::Observer,
@@ -546,6 +547,8 @@ class HostContentSettingsMap : public content_settings::Observer,
// Whether this settings map is for an incognito or guest session.
bool is_off_the_record_;
@@ -2098,7 +2122,7 @@ diff --git a/components/omnibox/browser/autocomplete_provider_client.h b/compone
diff --git a/components/omnibox/browser/base_search_provider.cc b/components/omnibox/browser/base_search_provider.cc
--- a/components/omnibox/browser/base_search_provider.cc
+++ b/components/omnibox/browser/base_search_provider.cc
@@ -332,7 +332,7 @@ bool BaseSearchProvider::CanSendSuggestRequestWithoutPageURL(
@@ -350,7 +350,7 @@ bool BaseSearchProvider::CanSendSuggestRequestWithoutPageURL(
}
// Don't make a suggest request if in incognito mode.
@@ -2110,7 +2134,7 @@ diff --git a/components/omnibox/browser/base_search_provider.cc b/components/omn
diff --git a/components/omnibox/browser/search_provider.cc b/components/omnibox/browser/search_provider.cc
--- a/components/omnibox/browser/search_provider.cc
+++ b/components/omnibox/browser/search_provider.cc
@@ -775,7 +775,9 @@ bool SearchProvider::IsQuerySuitableForSuggest(bool* query_is_private) const {
@@ -778,7 +778,9 @@ bool SearchProvider::IsQuerySuitableForSuggest(bool* query_is_private) const {
// keyword input to a keyword suggest server, if any.)
const TemplateURL* default_url = providers_.GetDefaultProviderURL();
const TemplateURL* keyword_url = providers_.GetKeywordProviderURL();
@@ -279,7 +279,7 @@ new file mode 100644
diff --git a/components/content_settings/core/browser/content_settings_registry.cc b/components/content_settings/core/browser/content_settings_registry.cc
--- a/components/content_settings/core/browser/content_settings_registry.cc
+++ b/components/content_settings/core/browser/content_settings_registry.cc
@@ -245,7 +245,7 @@ void ContentSettingsRegistry::Init() {
@@ -248,7 +248,7 @@ void ContentSettingsRegistry::Init() {
ContentSettingsInfo::INHERIT_IN_INCOGNITO,
ContentSettingsInfo::EXCEPTIONS_ON_SECURE_ORIGINS_ONLY);
@@ -128,7 +128,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDe
import org.chromium.chrome.browser.app.tab_activity_glue.ActivityTabWebContentsDelegateAndroid;
import org.chromium.chrome.browser.browser_controls.BrowserControlsStateProvider;
import org.chromium.chrome.browser.compositor.CompositorViewHolder;
@@ -53,7 +54,7 @@ import org.chromium.ui.modaldialog.ModalDialogManager;
@@ -54,7 +55,7 @@ import org.chromium.ui.modaldialog.ModalDialogManager;
* {@link ChromeTabbedActivity}.
*/
public class TabbedModeTabDelegateFactory implements TabDelegateFactory {
@@ -137,7 +137,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDe
private final BrowserControlsVisibilityDelegate mAppBrowserControlsVisibilityDelegate;
private final Supplier<ShareDelegate> mShareDelegateSupplier;
private final Supplier<EphemeralTabCoordinator> mEphemeralTabCoordinatorSupplier;
@@ -82,7 +83,7 @@ public class TabbedModeTabDelegateFactory implements TabDelegateFactory {
@@ -83,7 +84,7 @@ public class TabbedModeTabDelegateFactory implements TabDelegateFactory {
private NativePageFactory mNativePageFactory;
public TabbedModeTabDelegateFactory(
@@ -221,7 +221,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/bookmarks/B
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkBridge.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkBridge.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkBridge.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkBridge.java
@@ -33,6 +33,48 @@ import org.chromium.url.GURL;
@@ -34,6 +34,48 @@ import org.chromium.url.GURL;
import java.util.ArrayList;
import java.util.List;
@@ -270,7 +270,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
/**
* Provides the communication channel for Android to fetch and manipulate the bookmark model stored
* in native.
@@ -504,6 +546,212 @@ class BookmarkBridge {
@@ -505,6 +547,212 @@ class BookmarkBridge {
.getTotalBookmarkCount(mNativeBookmarkBridge, id.getId(), id.getType());
}
@@ -483,7 +483,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
/**
* Synchronously gets a list of bookmarks that match the specified search query.
*
@@ -1062,6 +1310,39 @@ class BookmarkBridge {
@@ -1063,6 +1311,39 @@ class BookmarkBridge {
BookmarkUtils.clearLastUsedPrefs();
}
@@ -523,7 +523,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
private static List<Pair<Integer, Integer>> createPairsList(int[] left, int[] right) {
List<Pair<Integer, Integer>> pairList = new ArrayList<>();
for (int i = 0; i < left.length; i++) {
@@ -1128,6 +1409,10 @@ class BookmarkBridge {
@@ -1131,6 +1412,10 @@ class BookmarkBridge {
void getChildIds(
long nativeBookmarkBridge, long id, int type, List<BookmarkId> bookmarksList);
@@ -785,7 +785,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat
import org.chromium.chrome.browser.app.download.home.DownloadPage;
import org.chromium.chrome.browser.bookmarks.BookmarkPage;
import org.chromium.chrome.browser.browser_controls.BrowserControlsMarginSupplier;
@@ -55,7 +56,7 @@ import org.chromium.ui.util.ColorUtils;
@@ -56,7 +57,7 @@ import org.chromium.ui.util.ColorUtils;
* Creates NativePage objects to show chrome-native:// URLs using the native Android view system.
*/
public class NativePageFactory {
@@ -794,8 +794,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat
private final BottomSheetController mBottomSheetController;
private final BrowserControlsManager mBrowserControlsManager;
private final Supplier<Tab> mCurrentTabSupplier;
@@ -75,7 +76,7 @@ public class NativePageFactory {
private NativePageBuilder mNativePageBuilder;
@@ -77,7 +78,7 @@ public class NativePageFactory {
private static NativePage sTestPage;
public NativePageFactory(
- @NonNull Activity activity,
@@ -803,7 +803,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat
@NonNull BottomSheetController sheetController,
@NonNull BrowserControlsManager browserControlsManager,
@NonNull Supplier<Tab> currentTabSupplier,
@@ -141,7 +142,7 @@ public class NativePageFactory {
@@ -143,7 +144,7 @@ public class NativePageFactory {
@VisibleForTesting
static class NativePageBuilder {
@@ -812,7 +812,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat
private final BottomSheetController mBottomSheetController;
private final Supplier<NewTabPageUma> mUma;
private final BrowserControlsManager mBrowserControlsManager;
@@ -159,7 +160,7 @@ public class NativePageFactory {
@@ -161,7 +162,7 @@ public class NativePageFactory {
private final OneshotSupplier<ModuleRegistry> mModuleRegistrySupplier;
public NativePageBuilder(
@@ -821,7 +821,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat
Supplier<NewTabPageUma> uma,
BottomSheetController sheetController,
BrowserControlsManager browserControlsManager,
@@ -229,7 +230,7 @@ public class NativePageFactory {
@@ -231,7 +232,7 @@ public class NativePageFactory {
mActivity.getComponentName(),
mSnackbarManagerSupplier.get(),
tab.getProfile(),
@@ -833,7 +833,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -201,6 +201,8 @@ static_library("browser") {
@@ -203,6 +203,8 @@ static_library("browser") {
"bluetooth/chrome_bluetooth_delegate_impl_client.h",
"bookmarks/bookmark_model_factory.cc",
"bookmarks/bookmark_model_factory.h",
@@ -842,7 +842,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
"bookmarks/chrome_bookmark_client.cc",
"bookmarks/chrome_bookmark_client.h",
"bookmarks/managed_bookmark_service_factory.cc",
@@ -1942,6 +1944,13 @@ static_library("browser") {
@@ -1979,6 +1981,13 @@ static_library("browser") {
]
}
@@ -856,7 +856,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
configs += [
"//build/config/compiler:wexit_time_destructors",
"//build/config:precompiled_headers",
@@ -3657,8 +3666,6 @@ static_library("browser") {
@@ -3711,8 +3720,6 @@ static_library("browser") {
"badging/badge_manager_factory.h",
"banners/app_banner_manager_desktop.cc",
"banners/app_banner_manager_desktop.h",
@@ -868,7 +868,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browser/bookmarks/android/bookmark_bridge.cc
--- a/chrome/browser/bookmarks/android/bookmark_bridge.cc
+++ b/chrome/browser/bookmarks/android/bookmark_bridge.cc
@@ -63,6 +63,28 @@
@@ -61,6 +61,28 @@
#include "content/public/browser/web_contents.h"
#include "url/gurl.h"
@@ -894,10 +894,10 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse
+#include "ui/shell_dialogs/selected_file_info.h"
+#include "ui/shell_dialogs/select_file_dialog.h"
+
using base::android::AttachCurrentThread;
using base::android::ConvertUTF16ToJavaString;
using base::android::ConvertUTF8ToJavaString;
@@ -80,12 +102,96 @@ using bookmarks::android::JavaBookmarkIdGetType;
// Must come after other includes, because FromJniType() uses Profile.
#include "chrome/android/chrome_jni_headers/BookmarkBridge_jni.h"
@@ -79,12 +101,96 @@ using bookmarks::android::JavaBookmarkIdGetType;
using content::BrowserThread;
using power_bookmarks::PowerBookmarkMeta;
@@ -994,7 +994,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse
class BookmarkTitleComparer {
public:
explicit BookmarkTitleComparer(BookmarkBridge* bookmark_bridge,
@@ -242,6 +348,10 @@ BookmarkBridge::~BookmarkBridge() {
@@ -240,6 +346,10 @@ BookmarkBridge::~BookmarkBridge() {
partner_bookmarks_shim_observation_.Reset();
bookmark_model_observation_.Reset();
profile_observation_.Reset();
@@ -1005,7 +1005,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse
}
void BookmarkBridge::Destroy(JNIEnv* env) {
@@ -818,6 +928,183 @@ jint BookmarkBridge::GetTotalBookmarkCount(
@@ -809,6 +919,183 @@ jint BookmarkBridge::GetTotalBookmarkCount(
return count;
}
@@ -1220,7 +1220,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.h b/chrome/browser
public:
// All of the injected pointers must be non-null and must outlive `this`.
BookmarkBridge(Profile* profile,
@@ -97,6 +102,12 @@ class BookmarkBridge : public ProfileObserver,
@@ -95,6 +100,12 @@ class BookmarkBridge : public ProfileObserver,
bool IsDoingExtensiveChanges(JNIEnv* env);
@@ -1233,7 +1233,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.h b/chrome/browser
jboolean IsEditBookmarksEnabled(JNIEnv* env);
void LoadEmptyPartnerBookmarkShimForTesting(JNIEnv* env);
@@ -109,6 +120,15 @@ class BookmarkBridge : public ProfileObserver,
@@ -107,6 +118,15 @@ class BookmarkBridge : public ProfileObserver,
jlong id,
jint type);
@@ -1249,7 +1249,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.h b/chrome/browser
void GetAllFoldersWithDepths(
JNIEnv* env,
const base::android::JavaParamRef<jobject>& j_folders_obj,
@@ -384,6 +404,9 @@ class BookmarkBridge : public ProfileObserver,
@@ -375,6 +395,9 @@ class BookmarkBridge : public ProfileObserver,
void CreateOrDestroyAccountReadingListManagerIfNeeded();
const raw_ptr<Profile> profile_; // weak
@@ -1259,7 +1259,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.h b/chrome/browser
base::android::ScopedJavaGlobalRef<jobject> java_bookmark_model_;
const raw_ptr<bookmarks::BookmarkModel> bookmark_model_; // weak
const raw_ptr<bookmarks::ManagedBookmarkService>
@@ -400,6 +423,7 @@ class BookmarkBridge : public ProfileObserver,
@@ -391,6 +414,7 @@ class BookmarkBridge : public ProfileObserver,
std::unique_ptr<bookmarks::ScopedGroupBookmarkActions>
grouped_bookmark_actions_;
PrefChangeRegistrar pref_change_registrar_;
@@ -1267,7 +1267,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.h b/chrome/browser
// Information about the Partner bookmarks (must check for IsLoaded()).
// This is owned by profile.
@@ -431,6 +455,10 @@ class BookmarkBridge : public ProfileObserver,
@@ -422,6 +446,10 @@ class BookmarkBridge : public ProfileObserver,
bool suppress_observer_notifications_ = false;
@@ -1349,7 +1349,7 @@ diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browse
diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationDialogCoordinator.java b/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationDialogCoordinator.java
--- a/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationDialogCoordinator.java
+++ b/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationDialogCoordinator.java
@@ -37,18 +37,18 @@ import java.util.ArrayList;
@@ -38,18 +38,18 @@ import java.util.ArrayList;
*/
public class DownloadLocationDialogCoordinator implements ModalDialogProperties.Controller {
@NonNull private DownloadLocationDialogController mController;
@@ -1372,7 +1372,7 @@ diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browse
private boolean mLocationDialogManaged;
/**
@@ -140,7 +140,7 @@ public class DownloadLocationDialogCoordinator implements ModalDialogProperties.
@@ -141,7 +141,7 @@ public class DownloadLocationDialogCoordinator implements ModalDialogProperties.
* Called after retrieved the download directory options.
* @param dirs An list of available download directories.
*/
@@ -1384,7 +1384,7 @@ diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browse
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc
--- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -175,6 +175,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
@@ -180,6 +180,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
&kCacheActivityTaskID,
&kCastDeviceFilter,
&kClearOmniboxFocusAfterNavigation,
@@ -1395,7 +1395,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
--- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
@@ -499,6 +499,7 @@ public abstract class ChromeFeatureList {
@@ -504,6 +504,7 @@ public abstract class ChromeFeatureList {
"UseLibunwindstackNativeUnwinderAndroid";
public static final String VERTICAL_AUTOMOTIVE_BACK_BUTTON_TOOLBAR =
"VerticalAutomotiveBackButtonToolbar";
@@ -1458,7 +1458,7 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro
/**
* Whether Chrome is set as the default browser.
@@ -899,6 +901,7 @@ public final class ChromePreferenceKeys {
@@ -900,6 +902,7 @@ public final class ChromePreferenceKeys {
AUTOFILL_ASSISTANT_PROACTIVE_HELP_ENABLED,
APP_LAUNCH_LAST_KNOWN_ACTIVE_TAB_STATE,
APP_LAUNCH_SEARCH_ENGINE_HAD_LOGO,
@@ -1469,7 +1469,7 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -248,6 +248,24 @@ CHAR_LIMIT guidelines:
@@ -253,6 +253,24 @@ CHAR_LIMIT guidelines:
<message name="IDS_NOTIFICATION_CATEGORY_SITES" desc="Label for notifications from websites, within a list of notification categories. [CHAR_LIMIT=32]">
Sites
</message>
@@ -1497,7 +1497,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
diff --git a/chrome/common/BUILD.gn b/chrome/common/BUILD.gn
--- a/chrome/common/BUILD.gn
+++ b/chrome/common/BUILD.gn
@@ -401,6 +401,9 @@ static_library("common_lib") {
@@ -400,6 +400,9 @@ static_library("common_lib") {
sources += [
"media/chrome_media_drm_bridge_client.cc",
"media/chrome_media_drm_bridge_client.h",
@@ -1510,7 +1510,7 @@ diff --git a/chrome/common/BUILD.gn b/chrome/common/BUILD.gn
diff --git a/chrome/utility/BUILD.gn b/chrome/utility/BUILD.gn
--- a/chrome/utility/BUILD.gn
+++ b/chrome/utility/BUILD.gn
@@ -84,8 +84,6 @@ static_library("utility") {
@@ -85,8 +85,6 @@ static_library("utility") {
if (!is_android) {
sources += [
@@ -1519,7 +1519,7 @@ diff --git a/chrome/utility/BUILD.gn b/chrome/utility/BUILD.gn
"importer/bookmarks_file_importer.cc",
"importer/bookmarks_file_importer.h",
"importer/external_process_importer_bridge.cc",
@@ -220,6 +218,11 @@ static_library("utility") {
@@ -224,6 +222,11 @@ static_library("utility") {
]
}
+59 -64
View File
@@ -15,7 +15,7 @@ Need: bromite-build-utils.patch
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
base/BUILD.gn | 4 +-
base/android/feature_map.cc | 8 +-
base/android/feature_map.cc | 5 +
.../base/cached_flags/CachedFlag.java | 8 +-
base/feature_list.cc | 78 +++++++++
base/feature_list.h | 72 ++++++++-
@@ -88,7 +88,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
services/network/public/cpp/features.h | 1 +
third_party/blink/common/features.cc | 1 +
third_party/blink/public/common/features.h | 1 +
74 files changed, 738 insertions(+), 20 deletions(-)
74 files changed, 736 insertions(+), 19 deletions(-)
create mode 100644 chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/cromite/include_all_directory.java
create mode 100644 chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/cromite/java_template/CromiteCachedFlag.java.tmpl
create mode 100644 chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/placeholder.txt
@@ -129,7 +129,7 @@ diff --git a/base/BUILD.gn b/base/BUILD.gn
sources = [
"allocator/allocator_check.cc",
"allocator/allocator_check.h",
@@ -1060,7 +1062,7 @@ component("base") {
@@ -1070,7 +1072,7 @@ component("base") {
"//build/config/compiler:wglobal_constructors",
]
@@ -141,23 +141,18 @@ diff --git a/base/BUILD.gn b/base/BUILD.gn
diff --git a/base/android/feature_map.cc b/base/android/feature_map.cc
--- a/base/android/feature_map.cc
+++ b/base/android/feature_map.cc
@@ -46,9 +46,15 @@ static jboolean JNI_FeatureMap_IsEnabled(
JNIEnv* env,
jlong jfeature_map,
const android::JavaParamRef<jstring>& jfeature_name) {
+ std::string feature_name = ConvertJavaStringToUTF8(env, jfeature_name);
@@ -43,6 +43,11 @@ const Feature* FeatureMap::FindFeatureExposedToJava(
static jboolean JNI_FeatureMap_IsEnabled(JNIEnv* env,
jlong jfeature_map,
std::string& feature_name) {
+ if (base::FeatureList::IsCromiteFlag(feature_name)) {
+ const base::Feature* cromite_feature =
+ base::FeatureList::GetCromiteFlag(feature_name);
+ return base::FeatureList::IsEnabled(*cromite_feature);
+ }
FeatureMap* feature_map = reinterpret_cast<FeatureMap*>(jfeature_map);
const base::Feature* feature = feature_map->FindFeatureExposedToJava(
- std::string_view(ConvertJavaStringToUTF8(env, jfeature_name)));
+ std::string_view(feature_name));
return base::FeatureList::IsEnabled(*feature);
}
const base::Feature* feature =
feature_map->FindFeatureExposedToJava(feature_name);
diff --git a/base/android/java/src/org/chromium/base/cached_flags/CachedFlag.java b/base/android/java/src/org/chromium/base/cached_flags/CachedFlag.java
--- a/base/android/java/src/org/chromium/base/cached_flags/CachedFlag.java
+++ b/base/android/java/src/org/chromium/base/cached_flags/CachedFlag.java
@@ -186,7 +181,7 @@ diff --git a/base/android/java/src/org/chromium/base/cached_flags/CachedFlag.jav
diff --git a/base/feature_list.cc b/base/feature_list.cc
--- a/base/feature_list.cc
+++ b/base/feature_list.cc
@@ -37,6 +37,31 @@
@@ -38,6 +38,31 @@
namespace base {
@@ -218,7 +213,7 @@ diff --git a/base/feature_list.cc b/base/feature_list.cc
namespace {
// Pointer to the FeatureList instance singleton that was set via
@@ -464,6 +489,48 @@ bool FeatureList::IsEnabled(const Feature& feature) {
@@ -466,6 +491,48 @@ bool FeatureList::IsEnabled(const Feature& feature) {
return g_feature_list_instance->IsFeatureEnabled(feature);
}
@@ -265,9 +260,9 @@ diff --git a/base/feature_list.cc b/base/feature_list.cc
+}
+
// static
bool FeatureList::IsValidFeatureOrFieldTrialName(StringPiece name) {
bool FeatureList::IsValidFeatureOrFieldTrialName(std::string_view name) {
return IsStringASCII(name) && name.find_first_of(",<*") == std::string::npos;
@@ -710,6 +777,17 @@ void FeatureList::VisitFeaturesAndParams(FeatureVisitor& visitor) {
@@ -712,6 +779,17 @@ void FeatureList::VisitFeaturesAndParams(FeatureVisitor& visitor) {
void FeatureList::FinalizeInitialization() {
DCHECK(!initialized_);
@@ -299,9 +294,9 @@ diff --git a/base/feature_list.h b/base/feature_list.h
+ : name(name), default_state(default_state),
+ is_cromite(cromite), is_new(is_new_flag) {
#if BUILDFLAG(ENABLE_BANNED_BASE_FEATURE_PREFIX)
if (StringPiece(name).find(BUILDFLAG(BANNED_BASE_FEATURE_PREFIX)) == 0) {
LOG(FATAL) << "Invalid feature name " << name << " starts with "
@@ -126,6 +128,9 @@ struct BASE_EXPORT LOGICALLY_CONST Feature {
if (std::string_view(name).find(BUILDFLAG(BANNED_BASE_FEATURE_PREFIX)) ==
0) {
@@ -127,6 +129,9 @@ struct BASE_EXPORT LOGICALLY_CONST Feature {
// command line switch.
const FeatureState default_state;
@@ -311,7 +306,7 @@ diff --git a/base/feature_list.h b/base/feature_list.h
private:
friend class FeatureList;
@@ -401,6 +406,11 @@ class BASE_EXPORT FeatureList {
@@ -402,6 +407,11 @@ class BASE_EXPORT FeatureList {
// instance, which is checked in builds with DCHECKs enabled.
static bool IsEnabled(const Feature& feature);
@@ -323,7 +318,7 @@ diff --git a/base/feature_list.h b/base/feature_list.h
// Some characters are not allowed to appear in feature names or the
// associated field trial names, as they are used as special characters for
// command-line serialization. This function checks that the strings are ASCII
@@ -665,4 +675,62 @@ class BASE_EXPORT FeatureList {
@@ -667,4 +677,62 @@ class BASE_EXPORT FeatureList {
} // namespace base
@@ -538,7 +533,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Settin
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -368,6 +368,10 @@ using flags_ui::kOsLinux;
@@ -370,6 +370,10 @@ using flags_ui::kOsLinux;
using flags_ui::kOsMac;
using flags_ui::kOsWin;
@@ -549,9 +544,9 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
namespace about_flags {
namespace {
@@ -3776,6 +3780,10 @@ const FeatureEntry::FeatureVariation kDefaultBrowserPromptRefreshVariations[] =
kDefaultBrowserPromptRefreshTesting,
std::size(kDefaultBrowserPromptRefreshTesting), nullptr}};
@@ -3879,6 +3883,10 @@ const FeatureEntry::FeatureVariation kDefaultBrowserPromptRefreshVariations[] =
kDefaultBrowserPromptRefreshAppMenuItem,
std::size(kDefaultBrowserPromptRefreshAppMenuItem), nullptr}};
+#define FEATURE_PARAM_SECTION
+#include "cromite_flags/chrome_browser_about_flags_cc.inc"
@@ -560,7 +555,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
// RECORDING USER METRICS FOR FLAGS:
// -----------------------------------------------------------------------------
// The first line of the entry is the internal name.
@@ -3802,6 +3810,9 @@ const FeatureEntry::FeatureVariation kDefaultBrowserPromptRefreshVariations[] =
@@ -3905,6 +3913,9 @@ const FeatureEntry::FeatureVariation kDefaultBrowserPromptRefreshVariations[] =
const FeatureEntry kFeatureEntries[] = {
// Include generated flags for flag unexpiry; see //docs/flag_expiry.md and
// //tools/flags/generate_unexpire_flags.py.
@@ -573,7 +568,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
diff --git a/chrome/browser/browser_features.cc b/chrome/browser/browser_features.cc
--- a/chrome/browser/browser_features.cc
+++ b/chrome/browser/browser_features.cc
@@ -400,4 +400,5 @@ BASE_FEATURE(kWebUsbDeviceDetection,
@@ -422,4 +422,5 @@ BASE_FEATURE(kWebUsbDeviceDetection,
"WebUsbDeviceDetection",
base::FEATURE_ENABLED_BY_DEFAULT);
@@ -621,9 +616,9 @@ diff --git a/chrome/browser/flags/BUILD.gn b/chrome/browser/flags/BUILD.gn
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc
--- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -1011,5 +1011,6 @@ BASE_FEATURE(kWebApkIconUpdateThreshold,
"WebApkIconUpdateThreshold",
base::FEATURE_ENABLED_BY_DEFAULT);
@@ -1011,5 +1011,6 @@ BASE_FEATURE(kWebApkAllowIconUpdate,
"WebApkAllowIconUpdate",
base::FEATURE_DISABLED_BY_DEFAULT);
+#include "cromite_flags/chrome_browser_flags_android_chrome_feature_list_cc.inc"
} // namespace android
@@ -631,7 +626,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
diff --git a/chrome/browser/flags/android/chrome_feature_list.h b/chrome/browser/flags/android/chrome_feature_list.h
--- a/chrome/browser/flags/android/chrome_feature_list.h
+++ b/chrome/browser/flags/android/chrome_feature_list.h
@@ -195,6 +195,7 @@ constexpr base::FeatureParam<int> kAuxiliarySearchMaxTabsCountParam(
@@ -191,6 +191,7 @@ constexpr base::FeatureParam<int> kAuxiliarySearchMaxTabsCountParam(
"auxiliary_search_max_donation_tab",
100);
@@ -642,7 +637,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.h b/chrome/browser
diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
--- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
@@ -13,6 +13,10 @@ import org.chromium.base.cached_flags.DoubleCachedFieldTrialParameter;
@@ -14,6 +14,10 @@ import org.chromium.base.cached_flags.DoubleCachedFieldTrialParameter;
import org.chromium.base.cached_flags.IntCachedFieldTrialParameter;
import org.chromium.base.cached_flags.StringCachedFieldTrialParameter;
@@ -653,16 +648,16 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
import java.util.List;
import java.util.Map;
@@ -700,7 +704,7 @@ public abstract class ChromeFeatureList {
@@ -701,7 +705,7 @@ public abstract class ChromeFeatureList {
public static final CachedFlag sVerticalAutomotiveBackButtonToolbar =
newCachedFlag(VERTICAL_AUTOMOTIVE_BACK_BUTTON_TOOLBAR, true);
- public static final List<CachedFlag> sFlagsCachedFullBrowser =
+ public static final List<CachedFlag> sFlagsCachedFullBrowserChromium =
List.of(
sAccountReauthenticationRecentTimeWindow,
sAllowUserCertificates,
sAndroidAppIntegration,
@@ -793,6 +797,13 @@ public abstract class ChromeFeatureList {
@@ -794,6 +798,13 @@ public abstract class ChromeFeatureList {
sUseLibunwindstackNativeUnwinderAndroid,
sVerticalAutomotiveBackButtonToolbar);
@@ -829,7 +824,7 @@ new file mode 100644
diff --git a/chrome/browser/ui/ui_features.cc b/chrome/browser/ui/ui_features.cc
--- a/chrome/browser/ui/ui_features.cc
+++ b/chrome/browser/ui/ui_features.cc
@@ -503,4 +503,5 @@ BASE_FEATURE(kStopLoadingAnimationForHiddenWindow,
@@ -523,4 +523,5 @@ BASE_FEATURE(kStopLoadingAnimationForHiddenWindow,
"StopLoadingAnimationForHiddenWindow",
base::FEATURE_ENABLED_BY_DEFAULT);
@@ -838,8 +833,8 @@ diff --git a/chrome/browser/ui/ui_features.cc b/chrome/browser/ui/ui_features.cc
diff --git a/chrome/common/chrome_features.cc b/chrome/common/chrome_features.cc
--- a/chrome/common/chrome_features.cc
+++ b/chrome/common/chrome_features.cc
@@ -1660,4 +1660,5 @@ BASE_FEATURE(kSupportsRtcWakeOver24Hours,
base::FEATURE_ENABLED_BY_DEFAULT);
@@ -1666,4 +1666,5 @@ BASE_FEATURE(kEventBasedLogUpload,
base::FEATURE_DISABLED_BY_DEFAULT);
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
+#include "cromite_flags/chrome_common_chrome_features_cc.inc"
@@ -883,10 +878,10 @@ diff --git a/components/browser_ui/settings/android/widget/java/src/org/chromium
// TOOD(crbug.com/1451550): This is an interim solution. In the long-term, we should migrate
// away from a switch with dynamically changing summaries onto a radio group.
/**
@@ -46,6 +54,18 @@ public class ChromeSwitchPreference extends SwitchPreferenceCompat {
super(context, attrs);
@@ -49,6 +57,18 @@ public class ChromeSwitchPreference extends SwitchPreferenceCompat {
mHasCustomLayout = ManagedPreferencesUtils.isCustomLayoutApplied(context, attrs);
mUseSummaryAsTitle = true;
+ TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.ChromeBasePreference);
+ mFeatureName = a.getString(R.styleable.ChromeBasePreference_featureName);
+ mNeedRestart = a.getBoolean(R.styleable.ChromeBasePreference_needRestart, false);
@@ -901,7 +896,7 @@ diff --git a/components/browser_ui/settings/android/widget/java/src/org/chromium
+ return mNeedRestart;
}
/** Sets the ManagedPreferenceDelegate which will determine whether this preference is managed. */
/**
diff --git a/components/components_strings.grd b/components/components_strings.grd
--- a/components/components_strings.grd
+++ b/components/components_strings.grd
@@ -910,15 +905,15 @@ diff --git a/components/components_strings.grd b/components/components_strings.g
<part file="webapps_strings.grdp" />
<part file="user_scripts/strings/userscripts_strings.grdp" />
+ <part file="cromite_components_strings_grd/placeholder.txt"/>
<if expr="use_blink">
<part file="history_clusters_strings.grdp" />
</if>
diff --git a/components/content_settings/core/common/features.cc b/components/content_settings/core/common/features.cc
--- a/components/content_settings/core/common/features.cc
+++ b/components/content_settings/core/common/features.cc
@@ -112,5 +112,6 @@ BASE_FEATURE(kIndexedHostContentSettingsMap,
"IndexedHostContentSettingsMap",
base::FEATURE_DISABLED_BY_DEFAULT);
base::FEATURE_ENABLED_BY_DEFAULT);
+#include "cromite_flags/components_content_settings_core_common_features_cc.inc"
} // namespace features
@@ -1346,7 +1341,7 @@ diff --git a/components/version_ui/version_handler_helper.cc b/components/versio
diff --git a/content/common/features.cc b/content/common/features.cc
--- a/content/common/features.cc
+++ b/content/common/features.cc
@@ -595,4 +595,5 @@ BASE_FEATURE(kWindowOpenFileSelectFix,
@@ -574,4 +574,5 @@ BASE_FEATURE(kWindowOpenFileSelectFix,
// Please keep features in alphabetical order.
@@ -1355,7 +1350,7 @@ diff --git a/content/common/features.cc b/content/common/features.cc
diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc
--- a/content/public/common/content_features.cc
+++ b/content/public/common/content_features.cc
@@ -1402,4 +1402,5 @@ bool IsVideoCaptureServiceEnabledForBrowserProcess() {
@@ -1287,4 +1287,5 @@ bool IsVideoCaptureServiceEnabledForBrowserProcess() {
VideoCaptureServiceConfiguration::kEnabledForBrowserProcess;
}
@@ -1364,7 +1359,7 @@ diff --git a/content/public/common/content_features.cc b/content/public/common/c
diff --git a/content/public/common/content_features.h b/content/public/common/content_features.h
--- a/content/public/common/content_features.h
+++ b/content/public/common/content_features.h
@@ -336,6 +336,7 @@ CONTENT_EXPORT BASE_DECLARE_FEATURE(kWebRtcPipeWireCapturer);
@@ -280,6 +280,7 @@ CONTENT_EXPORT BASE_DECLARE_FEATURE(kWebRtcPipeWireCapturer);
CONTENT_EXPORT bool IsVideoCaptureServiceEnabledForOutOfProcess();
CONTENT_EXPORT bool IsVideoCaptureServiceEnabledForBrowserProcess();
@@ -1662,7 +1657,7 @@ new file mode 100755
diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
--- a/media/base/media_switches.cc
+++ b/media/base/media_switches.cc
@@ -1909,5 +1909,5 @@ uint32_t GetPassthroughAudioFormats() {
@@ -1924,5 +1924,5 @@ uint32_t GetPassthroughAudioFormats() {
return 0;
#endif // BUILDFLAG(ENABLE_PASSTHROUGH_AUDIO_CODECS)
}
@@ -1672,7 +1667,7 @@ diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
diff --git a/media/base/media_switches.h b/media/base/media_switches.h
--- a/media/base/media_switches.h
+++ b/media/base/media_switches.h
@@ -557,5 +557,5 @@ MEDIA_EXPORT OOPVDMode GetOutOfProcessVideoDecodingMode();
@@ -561,5 +561,5 @@ MEDIA_EXPORT OOPVDMode GetOutOfProcessVideoDecodingMode();
MEDIA_EXPORT uint32_t GetPassthroughAudioFormats();
} // namespace media
@@ -1682,18 +1677,18 @@ diff --git a/media/base/media_switches.h b/media/base/media_switches.h
diff --git a/net/base/features.cc b/net/base/features.cc
--- a/net/base/features.cc
+++ b/net/base/features.cc
@@ -535,4 +535,5 @@ BASE_FEATURE(kReduceIPAddressChangeNotification,
base::FEATURE_ENABLED_BY_DEFAULT);
#endif // BUILDFLAG(IS_MAC)
@@ -561,4 +561,5 @@ BASE_FEATURE(kDeviceBoundSessions,
"DeviceBoundSessions",
base::FEATURE_DISABLED_BY_DEFAULT);
+#include "cromite_flags/net_base_features_cc.inc"
} // namespace net::features
diff --git a/net/base/features.h b/net/base/features.h
--- a/net/base/features.h
+++ b/net/base/features.h
@@ -521,6 +521,7 @@ NET_EXPORT BASE_DECLARE_FEATURE(kTruncateBodyToContentLength);
NET_EXPORT BASE_DECLARE_FEATURE(kReduceIPAddressChangeNotification);
#endif // BUILDFLAG(IS_MAC)
@@ -549,6 +549,7 @@ NET_EXPORT BASE_DECLARE_FEATURE(kReduceIPAddressChangeNotification);
// the server assert sessions (and cookies) are bound to a specific device.
NET_EXPORT BASE_DECLARE_FEATURE(kDeviceBoundSessions);
+#include "cromite_flags/net_base_features_h.inc"
} // namespace net::features
@@ -1702,18 +1697,18 @@ diff --git a/net/base/features.h b/net/base/features.h
diff --git a/services/network/public/cpp/features.cc b/services/network/public/cpp/features.cc
--- a/services/network/public/cpp/features.cc
+++ b/services/network/public/cpp/features.cc
@@ -475,4 +475,5 @@ const base::FeatureParam<bool> kSkipTpcdMitigationsForAdsTopLevelTrial{
/*name=*/"SkipTpcdMitigationsForAdsTopLevelTrial",
/*default_value=*/false};
@@ -492,4 +492,5 @@ BASE_FEATURE(kDocumentIsolationPolicy,
"DocumentIsolationPolicy",
base::FEATURE_DISABLED_BY_DEFAULT);
+#include "cromite_flags/services_network_public_cpp_features_cc.inc"
} // namespace network::features
diff --git a/services/network/public/cpp/features.h b/services/network/public/cpp/features.h
--- a/services/network/public/cpp/features.h
+++ b/services/network/public/cpp/features.h
@@ -193,6 +193,7 @@ extern const base::FeatureParam<bool> kSkipTpcdMitigationsForAdsTrial;
COMPONENT_EXPORT(NETWORK_CPP)
extern const base::FeatureParam<bool> kSkipTpcdMitigationsForAdsTopLevelTrial;
@@ -200,6 +200,7 @@ BASE_DECLARE_FEATURE(kAvoidResourceRequestCopies);
COMPONENT_EXPORT(NETWORK_CPP) BASE_DECLARE_FEATURE(kDocumentIsolationPolicy);
+#include "cromite_flags/services_network_public_cpp_features_h.inc"
} // namespace features
@@ -1722,7 +1717,7 @@ diff --git a/services/network/public/cpp/features.h b/services/network/public/cp
diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/features.cc
--- a/third_party/blink/common/features.cc
+++ b/third_party/blink/common/features.cc
@@ -2601,5 +2601,6 @@ BASE_FEATURE(kNoThrottlingVisibleAgent,
@@ -2674,5 +2674,6 @@ BASE_FEATURE(kNoThrottlingVisibleAgent,
"NoThrottlingVisibleAgent",
base::FEATURE_DISABLED_BY_DEFAULT);
@@ -1732,7 +1727,7 @@ diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/fea
diff --git a/third_party/blink/public/common/features.h b/third_party/blink/public/common/features.h
--- a/third_party/blink/public/common/features.h
+++ b/third_party/blink/public/common/features.h
@@ -1682,6 +1682,7 @@ BLINK_COMMON_EXPORT BASE_DECLARE_FEATURE(
@@ -1710,6 +1710,7 @@ BLINK_COMMON_EXPORT BASE_DECLARE_FEATURE(
// Don't throttle frames that are same-agent with with a visible frame.
BLINK_COMMON_EXPORT BASE_DECLARE_FEATURE(kNoThrottlingVisibleAgent);
@@ -46,7 +46,7 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java b/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java
@@ -53,6 +53,9 @@ import java.lang.annotation.Retention;
@@ -52,6 +52,9 @@ import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.util.Set;
@@ -56,7 +56,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDis
/**
* Dispatches incoming intents to the appropriate activity based on the current configuration and
* Intent fired.
@@ -242,6 +245,9 @@ public class LaunchIntentDispatcher {
@@ -239,6 +242,9 @@ public class LaunchIntentDispatcher {
*/
public static boolean isCustomTabIntent(Intent intent) {
if (intent == null) return false;
@@ -66,7 +66,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDis
Log.w(
TAG,
"CustomTabsIntent#shouldAlwaysUseBrowserUI() = "
@@ -263,6 +269,10 @@ public class LaunchIntentDispatcher {
@@ -260,6 +266,10 @@ public class LaunchIntentDispatcher {
newIntent.setData(uri);
newIntent.setClassName(context, CustomTabActivity.class.getName());
@@ -77,7 +77,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDis
// Since configureIntentForResizableCustomTab() might change the componenet/class
// associated with the passed intent, it needs to be called after #setClassName(context,
// CustomTabActivity.class.getName());
@@ -411,6 +421,17 @@ public class LaunchIntentDispatcher {
@@ -407,6 +417,17 @@ public class LaunchIntentDispatcher {
if (Intent.ACTION_VIEW.equals(newIntent.getAction())
&& !IntentHandler.wasIntentSenderChrome(newIntent)) {
@@ -98,7 +98,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDis
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabsConnection.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabsConnection.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabsConnection.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabsConnection.java
@@ -853,6 +853,7 @@ public class CustomTabsConnection {
@@ -854,6 +854,7 @@ public class CustomTabsConnection {
PostTask.postTask(
TaskTraits.UI_DEFAULT,
() -> {
@@ -142,7 +142,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
getActivity().setTitle(R.string.prefs_privacy_security);
@@ -297,6 +300,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
@@ -298,6 +301,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
new SpanApplier.SpanInfo("<link2>", "</link2>", servicesLink));
}
@@ -152,7 +152,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
String key = preference.getKey();
@@ -313,6 +319,14 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
@@ -314,6 +320,14 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
} else if (PREF_SEARCH_SUGGESTIONS.equals(key)) {
UserPrefs.get(getProfile())
.setBoolean(Pref.SEARCH_SUGGEST_ENABLED, (boolean) newValue);
@@ -167,7 +167,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
}
return true;
}
@@ -335,6 +349,16 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
@@ -336,6 +350,16 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
UserPrefs.get(getProfile()).getBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED));
}
@@ -203,7 +203,7 @@ diff --git a/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/TabAsso
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -5204,6 +5204,20 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>clear the Chrome da
@@ -5217,6 +5217,20 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>clear the Chrome da
<message name="IDS_NEAR_OOM_INTERVENTION_DECLINE" desc="The text of the button letting the user decline the browser's intervention, so that the page can resume what it was doing.">
Resume
</message>
+4 -4
View File
@@ -67,7 +67,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
/**
* This is the main activity for ChromeMobile when not running in document mode. All the tabs are
* accessible via a chrome specific tab switching UI.
@@ -2958,6 +2960,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -2935,6 +2937,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
} else if (id == R.id.close_tab) {
getCurrentTabModel().closeTab(currentTab, true, false, true);
RecordUserAction.record("MobileTabClosed");
@@ -79,7 +79,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
@@ -63,6 +63,7 @@ import org.chromium.chrome.R;
@@ -62,6 +62,7 @@ import org.chromium.chrome.R;
import org.chromium.chrome.browser.ActivityTabProvider;
import org.chromium.chrome.browser.ActivityUtils;
import org.chromium.chrome.browser.AppHooks;
@@ -87,7 +87,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
import org.chromium.chrome.browser.ChromeActivitySessionTracker;
import org.chromium.chrome.browser.ChromeApplicationImpl;
import org.chromium.chrome.browser.ChromeKeyboardVisibilityDelegate;
@@ -2578,6 +2579,11 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -2571,6 +2572,11 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
return true;
}
@@ -102,7 +102,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -3797,6 +3797,9 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>clear the Chrome da
@@ -3846,6 +3846,9 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>clear the Chrome da
<message name="IDS_MENU_AUTO_DARK_WEB_CONTENTS" desc="Menu item in Chrome's overflow/options menu. When Chrome's browser UI is set to dark theme and this option is checked, sites will have a dark theme automatically applied as well. [CHAR_LIMIT=24]">
Dark theme
</message>
@@ -26,7 +26,7 @@ diff --git a/components/omnibox/browser/autocomplete_controller.cc b/components/
#include "base/feature_list.h"
#include "base/format_macros.h"
#include "base/functional/bind.h"
@@ -407,6 +408,15 @@ AutocompleteController::AutocompleteController(
@@ -417,6 +418,15 @@ AutocompleteController::AutocompleteController(
provider_client_->GetOmniboxTriggeredFeatureService()),
steady_state_omnibox_position_(
metrics::OmniboxEventProto::UNKNOWN_POSITION) {
@@ -66,7 +66,7 @@ diff --git a/components/omnibox/browser/search_provider.cc b/components/omnibox/
#include "base/functional/callback.h"
#include "base/i18n/break_iterator.h"
#include "base/i18n/case_conversion.h"
@@ -644,6 +645,9 @@ void SearchProvider::Run(bool query_is_private) {
@@ -647,6 +648,9 @@ void SearchProvider::Run(bool query_is_private) {
}
void SearchProvider::DoHistoryQuery(bool minimal_changes) {
@@ -45,7 +45,7 @@ new file mode 100644
diff --git a/net/BUILD.gn b/net/BUILD.gn
--- a/net/BUILD.gn
+++ b/net/BUILD.gn
@@ -1037,6 +1037,7 @@ component("net") {
@@ -1045,6 +1045,7 @@ component("net") {
"//build:chromeos_buildflags",
"//components/miracle_parameter/common",
"//net/http:transport_security_state_generated_files",
@@ -56,7 +56,7 @@ diff --git a/net/BUILD.gn b/net/BUILD.gn
diff --git a/net/dns/host_resolver_manager.cc b/net/dns/host_resolver_manager.cc
--- a/net/dns/host_resolver_manager.cc
+++ b/net/dns/host_resolver_manager.cc
@@ -112,6 +112,7 @@
@@ -113,6 +113,7 @@
#include "net/log/net_log_event_type.h"
#include "net/log/net_log_source.h"
#include "net/log/net_log_source_type.h"
@@ -64,7 +64,7 @@ diff --git a/net/dns/host_resolver_manager.cc b/net/dns/host_resolver_manager.cc
#include "net/log/net_log_with_source.h"
#include "net/socket/client_socket_factory.h"
#include "net/url_request/url_request_context.h"
@@ -1351,6 +1352,13 @@ int HostResolverManager::StartIPv6ReachabilityCheck(
@@ -1388,6 +1389,13 @@ int HostResolverManager::StartIPv6ReachabilityCheck(
return OK;
}
@@ -20,7 +20,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.cc
--- a/content/child/runtime_features.cc
+++ b/content/child/runtime_features.cc
@@ -102,6 +102,7 @@ void SetRuntimeFeatureDefaultsForPlatform(
@@ -103,6 +103,7 @@ void SetRuntimeFeatureDefaultsForPlatform(
if (command_line.HasSwitch(switches::kDisableMediaSessionAPI)) {
WebRuntimeFeatures::EnableMediaSession(false);
}
@@ -104,7 +104,7 @@ diff --git a/third_party/blink/renderer/platform/exported/web_runtime_features.c
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -648,6 +648,10 @@
@@ -660,6 +660,10 @@
status: {"Android": "stable"},
base_feature: "none",
},
@@ -14,7 +14,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
--- a/build/config/compiler/BUILD.gn
+++ b/build/config/compiler/BUILD.gn
@@ -1902,7 +1902,6 @@ config("default_warnings") {
@@ -1926,7 +1926,6 @@ config("default_warnings") {
# TODO(https://crbug.com/1490607): Fix and re-enable.
"-Wno-thread-safety-reference-return",
]
@@ -22,7 +22,7 @@ diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
cflags_cc += [
# TODO(crbug.com/328490295): Fix and re-enable for C flags.
"-Wenum-compare-conditional",
@@ -1914,6 +1913,15 @@ config("default_warnings") {
@@ -1938,6 +1937,15 @@ config("default_warnings") {
"-Wno-c++11-narrowing-const-reference",
]
}
@@ -41,7 +41,7 @@ diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
diff --git a/build_overrides/build.gni b/build_overrides/build.gni
--- a/build_overrides/build.gni
+++ b/build_overrides/build.gni
@@ -64,6 +64,9 @@ declare_args() {
@@ -58,6 +58,9 @@ declare_args() {
# to lack of toolchain support.
gtest_enable_absl_printers = !is_nacl
@@ -228,10 +228,10 @@ diff --git a/chrome/browser/permissions/one_time_permissions_tracker_factory.cc
diff --git a/chrome/browser/ui/views/permissions/embedded_permission_prompt.cc b/chrome/browser/ui/views/permissions/embedded_permission_prompt.cc
--- a/chrome/browser/ui/views/permissions/embedded_permission_prompt.cc
+++ b/chrome/browser/ui/views/permissions/embedded_permission_prompt.cc
@@ -238,7 +238,7 @@ void EmbeddedPermissionPrompt::Allow() {
}
@@ -336,7 +336,7 @@ void EmbeddedPermissionPrompt::Allow() {
void EmbeddedPermissionPrompt::AllowThisTime() {
PrecalculateVariantsForMetrics();
- delegate_->AcceptThisTime();
+ delegate_->AcceptThisTime(content_settings::mojom::LifetimeMode::ONLY_THIS_TIME);
CloseCurrentViewAndMaybeShowNext(/*first_prompt=*/false);
@@ -240,7 +240,7 @@ diff --git a/chrome/browser/ui/views/permissions/embedded_permission_prompt.cc b
diff --git a/chrome/browser/ui/views/permissions/permission_prompt_bubble_base_view.cc b/chrome/browser/ui/views/permissions/permission_prompt_bubble_base_view.cc
--- a/chrome/browser/ui/views/permissions/permission_prompt_bubble_base_view.cc
+++ b/chrome/browser/ui/views/permissions/permission_prompt_bubble_base_view.cc
@@ -264,7 +264,7 @@ void PermissionPromptBubbleBaseView::RunButtonCallback(int button_id) {
@@ -269,7 +269,7 @@ void PermissionPromptBubbleBaseView::RunButtonCallback(int button_id) {
delegate_->Accept();
return;
case PermissionDialogButton::kAcceptOnce:
@@ -263,7 +263,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java
--- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java
@@ -559,6 +559,11 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
@@ -557,6 +557,11 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
}
}
@@ -275,7 +275,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
private void setUpClearDataPreference() {
ClearWebsiteStorage preference = findPreference(PREF_CLEAR_DATA);
long usage = mSite.getTotalUsage();
@@ -1070,6 +1075,10 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
@@ -1083,6 +1088,10 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
if (contentType == mHighlightedPermission) {
switchPreference.setBackgroundColor(mHighlightColor);
}
@@ -301,7 +301,7 @@ diff --git a/components/browser_ui/site_settings/android/website_preference_brid
diff --git a/components/browser_ui/strings/android/browser_ui_strings.grd b/components/browser_ui/strings/android/browser_ui_strings.grd
--- a/components/browser_ui/strings/android/browser_ui_strings.grd
+++ b/components/browser_ui/strings/android/browser_ui_strings.grd
@@ -673,6 +673,11 @@
@@ -661,6 +661,11 @@
<message name="IDS_PAGE_INFO_URL_TRUNCATED" desc="Accessibility announcement when the URL in PageInfo switches from full to truncated display">
URL truncated
</message>
@@ -316,7 +316,7 @@ diff --git a/components/browser_ui/strings/android/browser_ui_strings.grd b/comp
diff --git a/components/content_settings/core/browser/content_settings_utils.cc b/components/content_settings/core/browser/content_settings_utils.cc
--- a/components/content_settings/core/browser/content_settings_utils.cc
+++ b/components/content_settings/core/browser/content_settings_utils.cc
@@ -174,6 +174,42 @@ bool IsConstraintPersistent(const ContentSettingConstraints& constraints) {
@@ -155,6 +155,42 @@ bool IsConstraintPersistent(const ContentSettingConstraints& constraints) {
return constraints.session_model() == mojom::SessionModel::DURABLE;
}
@@ -362,7 +362,7 @@ diff --git a/components/content_settings/core/browser/content_settings_utils.cc
diff --git a/components/content_settings/core/browser/content_settings_utils.h b/components/content_settings/core/browser/content_settings_utils.h
--- a/components/content_settings/core/browser/content_settings_utils.h
+++ b/components/content_settings/core/browser/content_settings_utils.h
@@ -73,6 +73,12 @@ bool IsConstraintPersistent(const ContentSettingConstraints& constraints);
@@ -74,6 +74,12 @@ bool IsConstraintPersistent(const ContentSettingConstraints& constraints);
// Returns whether the given type supports tracking last_visit timestamps.
bool CanTrackLastVisit(ContentSettingsType type);
@@ -378,7 +378,7 @@ diff --git a/components/content_settings/core/browser/content_settings_utils.h b
diff --git a/components/content_settings/core/common/content_settings_enums.mojom b/components/content_settings/core/common/content_settings_enums.mojom
--- a/components/content_settings/core/common/content_settings_enums.mojom
+++ b/components/content_settings/core/common/content_settings_enums.mojom
@@ -39,3 +39,12 @@ enum SessionModel {
@@ -57,3 +57,12 @@ enum SessionModel {
// tab from the origin is closed.
ONE_TIME,
};
@@ -394,7 +394,7 @@ diff --git a/components/content_settings/core/common/content_settings_enums.mojo
diff --git a/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoController.java b/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoController.java
--- a/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoController.java
+++ b/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoController.java
@@ -378,9 +378,9 @@ public class PageInfoController
@@ -393,9 +393,9 @@ public class PageInfoController
String name,
String nameMidSentence,
int type,
@@ -493,7 +493,7 @@ diff --git a/components/page_info/android/page_info_controller_android.cc b/comp
diff --git a/components/page_info/page_info.cc b/components/page_info/page_info.cc
--- a/components/page_info/page_info.cc
+++ b/components/page_info/page_info.cc
@@ -1157,6 +1157,8 @@ void PageInfo::PopulatePermissionInfo(PermissionInfo& permission_info,
@@ -1175,6 +1175,8 @@ void PageInfo::PopulatePermissionInfo(PermissionInfo& permission_info,
permission_info.is_one_time =
(info.metadata.session_model() ==
content_settings::mojom::SessionModel::ONE_TIME);
@@ -505,7 +505,7 @@ diff --git a/components/page_info/page_info.cc b/components/page_info/page_info.
diff --git a/components/page_info/page_info.h b/components/page_info/page_info.h
--- a/components/page_info/page_info.h
+++ b/components/page_info/page_info.h
@@ -151,6 +151,7 @@ class PageInfo : private content_settings::CookieControlsObserver {
@@ -150,6 +150,7 @@ class PageInfo : private content_settings::CookieControlsObserver,
content_settings::SETTING_SOURCE_NONE;
// Whether the permission is a one-time grant.
bool is_one_time = false;
@@ -524,8 +524,8 @@ diff --git a/components/permissions/android/java/src/org/chromium/components/per
import java.util.ArrayList;
import java.util.List;
@@ -57,6 +58,9 @@ public class PermissionDialogDelegate {
/** The {@link ContentSettingsType}s requested in this dialog. */
@@ -60,6 +61,9 @@ public class PermissionDialogDelegate {
/** The {@link ContentSettingsType}s requested in this dialog. */
private int[] mContentSettingsTypes;
+ /** Lifetime option selected by the user. */
@@ -534,7 +534,7 @@ diff --git a/components/permissions/android/java/src/org/chromium/components/per
/**
* Defines a (potentially empty) list of ranges represented as pairs of <startIndex, endIndex>,
* which shall be used by the UI to format the specified ranges as bold text.
@@ -110,6 +114,15 @@ public class PermissionDialogDelegate {
@@ -117,6 +121,15 @@ public class PermissionDialogDelegate {
.acceptThisTime(mNativeDelegatePtr, PermissionDialogDelegate.this);
}
@@ -572,7 +572,7 @@ diff --git a/components/permissions/android/java/src/org/chromium/components/per
/** This class creates the model for the permission dialog. */
class PermissionDialogModelFactory {
public static PropertyModel getModel(
@@ -64,6 +76,74 @@ class PermissionDialogModelFactory {
@@ -72,6 +84,74 @@ class PermissionDialogModelFactory {
ModalDialogProperties.NEGATIVE_BUTTON_TEXT,
delegate.getNegativeButtonText());
}
@@ -651,7 +651,7 @@ diff --git a/components/permissions/android/java/src/org/chromium/components/per
diff --git a/components/permissions/android/permission_prompt/permission_dialog_delegate.cc b/components/permissions/android/permission_prompt/permission_dialog_delegate.cc
--- a/components/permissions/android/permission_prompt/permission_dialog_delegate.cc
+++ b/components/permissions/android/permission_prompt/permission_dialog_delegate.cc
@@ -144,6 +144,11 @@ void PermissionDialogJavaDelegate::DismissDialog() {
@@ -150,6 +150,11 @@ void PermissionDialogJavaDelegate::DismissDialog() {
Java_PermissionDialogDelegate_dismissFromNative(env, j_delegate_);
}
@@ -663,7 +663,7 @@ diff --git a/components/permissions/android/permission_prompt/permission_dialog_
// static
void PermissionDialogDelegate::Create(
content::WebContents* web_contents,
@@ -172,6 +177,13 @@ PermissionDialogDelegate* PermissionDialogDelegate::CreateForTesting(
@@ -178,6 +183,13 @@ PermissionDialogDelegate* PermissionDialogDelegate::CreateForTesting(
void PermissionDialogDelegate::Accept(JNIEnv* env,
const JavaParamRef<jobject>& obj) {
CHECK(permission_prompt_);
@@ -677,7 +677,7 @@ diff --git a/components/permissions/android/permission_prompt/permission_dialog_
permission_prompt_->Accept();
}
@@ -179,12 +191,22 @@ void PermissionDialogDelegate::AcceptThisTime(
@@ -185,12 +197,22 @@ void PermissionDialogDelegate::AcceptThisTime(
JNIEnv* env,
const JavaParamRef<jobject>& obj) {
CHECK(permission_prompt_);
@@ -715,7 +715,7 @@ diff --git a/components/permissions/android/permission_prompt/permission_dialog_
diff --git a/components/permissions/android/permission_prompt/permission_prompt_android.cc b/components/permissions/android/permission_prompt/permission_prompt_android.cc
--- a/components/permissions/android/permission_prompt/permission_prompt_android.cc
+++ b/components/permissions/android/permission_prompt/permission_prompt_android.cc
@@ -53,8 +53,12 @@ void PermissionPromptAndroid::Accept() {
@@ -58,8 +58,12 @@ void PermissionPromptAndroid::Accept() {
delegate_->Accept();
}
@@ -733,7 +733,7 @@ diff --git a/components/permissions/android/permission_prompt/permission_prompt_
diff --git a/components/permissions/android/permission_prompt/permission_prompt_android.h b/components/permissions/android/permission_prompt/permission_prompt_android.h
--- a/components/permissions/android/permission_prompt/permission_prompt_android.h
+++ b/components/permissions/android/permission_prompt/permission_prompt_android.h
@@ -44,8 +44,9 @@ class PermissionPromptAndroid : public PermissionPrompt {
@@ -46,8 +46,9 @@ class PermissionPromptAndroid : public PermissionPrompt {
void Closing();
void Accept();
@@ -1091,7 +1091,7 @@ diff --git a/components/permissions/permission_request.cc b/components/permissio
PermissionRequest::~PermissionRequest() {
DCHECK(delete_callback_.is_null());
}
@@ -355,19 +363,37 @@ bool PermissionRequest::ShouldUseTwoOriginPrompt() const {
@@ -364,19 +372,37 @@ bool PermissionRequest::ShouldUseTwoOriginPrompt() const {
return request_type() == RequestType::kStorageAccess;
}
@@ -1170,7 +1170,7 @@ diff --git a/components/permissions/permission_request.h b/components/permission
// Called when the user has cancelled the permission request. This
// corresponds to a denial, but is segregated in case the context needs to
@@ -219,6 +228,9 @@ class PermissionRequest {
@@ -221,6 +230,9 @@ class PermissionRequest {
// Called once a decision is made about the permission.
PermissionDecidedCallback permission_decided_callback_;
@@ -1192,7 +1192,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
request->RequestFinished();
return;
}
@@ -232,7 +232,7 @@ void PermissionRequestManager::AddRequest(
@@ -233,7 +233,7 @@ void PermissionRequestManager::AddRequest(
if (auto_approval_origin) {
if (url::Origin::Create(request->requesting_origin()) ==
auto_approval_origin.value()) {
@@ -1201,7 +1201,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
}
request->RequestFinished();
return;
@@ -593,7 +593,8 @@ void PermissionRequestManager::Accept() {
@@ -594,7 +594,8 @@ void PermissionRequestManager::Accept() {
(*requests_iter)->request_type(),
PermissionAction::GRANTED);
PermissionGrantedIncludingDuplicates(*requests_iter,
@@ -1211,7 +1211,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
#if !BUILDFLAG(IS_ANDROID)
std::optional<ContentSettingsType> content_settings_type =
@@ -611,7 +612,7 @@ void PermissionRequestManager::Accept() {
@@ -612,7 +613,7 @@ void PermissionRequestManager::Accept() {
CurrentRequestsDecided(PermissionAction::GRANTED);
}
@@ -1220,7 +1220,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
if (ignore_callbacks_from_prompt_)
return;
DCHECK(view_);
@@ -623,7 +624,8 @@ void PermissionRequestManager::AcceptThisTime() {
@@ -624,7 +625,8 @@ void PermissionRequestManager::AcceptThisTime() {
(*requests_iter)->request_type(),
PermissionAction::GRANTED_ONCE);
PermissionGrantedIncludingDuplicates(*requests_iter,
@@ -1230,7 +1230,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
}
NotifyRequestDecided(PermissionAction::GRANTED_ONCE);
@@ -631,6 +633,15 @@ void PermissionRequestManager::AcceptThisTime() {
@@ -632,6 +634,15 @@ void PermissionRequestManager::AcceptThisTime() {
}
void PermissionRequestManager::Deny() {
@@ -1246,7 +1246,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
if (ignore_callbacks_from_prompt_)
return;
DCHECK(view_);
@@ -654,7 +665,7 @@ void PermissionRequestManager::Deny() {
@@ -655,7 +666,7 @@ void PermissionRequestManager::Deny() {
StorePermissionActionForUMA((*requests_iter)->requesting_origin(),
(*requests_iter)->request_type(),
PermissionAction::DENIED);
@@ -1255,7 +1255,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
}
NotifyRequestDecided(PermissionAction::DENIED);
@@ -1213,32 +1224,32 @@ PermissionRequestManager::VisitDuplicateRequests(
@@ -1218,32 +1229,32 @@ PermissionRequestManager::VisitDuplicateRequests(
void PermissionRequestManager::PermissionGrantedIncludingDuplicates(
PermissionRequest* request,
@@ -1298,7 +1298,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
request);
}
@@ -1495,7 +1506,7 @@ void PermissionRequestManager::DoAutoResponseForTesting() {
@@ -1500,7 +1511,7 @@ void PermissionRequestManager::DoAutoResponseForTesting() {
}
switch (auto_response_for_test_) {
case ACCEPT_ONCE:
@@ -7,7 +7,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
chrome/android/java/res/menu/main_menu.xml | 7 ++
.../chrome/browser/ChromeTabbedActivity.java | 24 +++++++
.../browser/bookmarks/BookmarkBridge.java | 67 +++++++++++++++++++
.../bookmarks/android/bookmark_bridge.cc | 42 ++++++++++++
.../bookmarks/android/bookmark_bridge.cc | 44 +++++++++++-
.../bookmarks/android/bookmark_bridge.h | 8 +++
.../browser/bookmarks/bookmark_html_writer.cc | 11 ++-
.../dialogs/DownloadLocationCustomView.java | 4 +-
@@ -26,7 +26,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
components/bookmarks/browser/bookmark_uuids.h | 1 +
components/bookmarks/browser/model_loader.cc | 8 ++-
.../bookmark_specifics_conversions.cc | 1 +
22 files changed, 240 insertions(+), 14 deletions(-)
22 files changed, 241 insertions(+), 15 deletions(-)
diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/res/menu/main_menu.xml
--- a/chrome/android/java/res/menu/main_menu.xml
@@ -63,7 +63,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
import org.chromium.chrome.browser.compositor.layouts.Layout;
import org.chromium.chrome.browser.compositor.layouts.LayoutManagerChrome;
import org.chromium.chrome.browser.compositor.layouts.LayoutManagerChromePhone;
@@ -2983,6 +2984,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -2960,6 +2961,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
getTabModelSelectorSupplier().get(),
() -> getTabModelSelector().closeAllTabs());
RecordUserAction.record("MobileMenuCloseAllTabs");
@@ -72,7 +72,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
} else if (id == R.id.close_all_incognito_tabs_menu_id) {
// Close only incognito tabs
CloseAllTabsDialog.show(
@@ -3054,6 +3057,27 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -3031,6 +3034,27 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
getTabModalLifetimeHandler().onOmniboxFocusChanged(hasFocus);
}
@@ -103,7 +103,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkBridge.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkBridge.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkBridge.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkBridge.java
@@ -18,11 +18,17 @@ import org.jni_zero.NativeMethods;
@@ -19,11 +19,17 @@ import org.jni_zero.NativeMethods;
import org.chromium.base.Callback;
import org.chromium.base.ContextUtils;
@@ -121,7 +121,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
import org.chromium.components.bookmarks.BookmarkId;
import org.chromium.components.bookmarks.BookmarkItem;
import org.chromium.components.bookmarks.BookmarkType;
@@ -82,6 +88,8 @@ import org.chromium.ui.modaldialog.DialogDismissalCause;
@@ -83,6 +89,8 @@ import org.chromium.ui.modaldialog.DialogDismissalCause;
class BookmarkBridge {
private final ObserverList<BookmarkModelObserver> mObservers = new ObserverList<>();
@@ -130,7 +130,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
private long mNativeBookmarkBridge;
private boolean mIsDestroyed;
private boolean mIsDoingExtensiveChanges;
@@ -423,6 +431,16 @@ class BookmarkBridge {
@@ -424,6 +432,16 @@ class BookmarkBridge {
return mMobileFolderId;
}
@@ -147,7 +147,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
/** Returns Id representing the special "other" folder from bookmark model. */
public BookmarkId getOtherFolderId() {
ThreadUtils.assertOnUiThread();
@@ -1113,6 +1131,50 @@ class BookmarkBridge {
@@ -1114,6 +1132,50 @@ class BookmarkBridge {
.addToReadingList(mNativeBookmarkBridge, parentId, title, url);
}
@@ -198,9 +198,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
/**
* Helper method to mark an item as read.
*
@@ -1366,6 +1428,9 @@ class BookmarkBridge {
BookmarkId getMostRecentlyAddedUserBookmarkIdForUrl(long nativeBookmarkBridge, GURL url);
@@ -1368,6 +1430,9 @@ class BookmarkBridge {
BookmarkId getMostRecentlyAddedUserBookmarkIdForUrl(
long nativeBookmarkBridge, @JniType("GURL") GURL url);
+ BookmarkId getBookmarkIdForTabsCollection(
+ long nativeBookmarkBridge, GURL url);
@@ -208,7 +208,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
BookmarkItem getBookmarkById(long nativeBookmarkBridge, long id, int type);
void getTopLevelFolderIds(
@@ -1387,6 +1452,8 @@ class BookmarkBridge {
@@ -1389,6 +1454,8 @@ class BookmarkBridge {
BookmarkId getRootFolderId(long nativeBookmarkBridge);
@@ -220,7 +220,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browser/bookmarks/android/bookmark_bridge.cc
--- a/chrome/browser/bookmarks/android/bookmark_bridge.cc
+++ b/chrome/browser/bookmarks/android/bookmark_bridge.cc
@@ -399,6 +399,33 @@ void BookmarkBridge::GetImageUrlForBookmarkImpl(
@@ -180,7 +180,7 @@ class FileBookmarksExportObserver: public BookmarksExportObserver {
JNIEnv* env = AttachCurrentThread();
Java_BookmarkBridge_bookmarksExported(env, obj_, window_->GetJavaObject(),
- ConvertUTF8ToJavaString(env, export_path_),
+ base::android::ConvertUTF8ToJavaString(env, export_path_),
result == Result::kSuccess);
delete this;
}
@@ -396,6 +396,33 @@ void BookmarkBridge::GetImageUrlForBookmarkImpl(
std::move(callback).Run(GURL());
}
@@ -230,7 +239,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse
+ const JavaParamRef<jobject>& url) {
+ DCHECK_CURRENTLY_ON(BrowserThread::UI);
+
+ GURL gurl = *url::GURLAndroid::ToNativeGURL(env, url);
+ GURL gurl = url::GURLAndroid::ToNativeGURL(env, url);
+
+ bookmarks::BookmarkModel* model =
+ BookmarkModelFactory::GetForBrowserContext(profile_);
@@ -252,9 +261,9 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse
+}
+
base::android::ScopedJavaLocalRef<jobject>
BookmarkBridge::GetMostRecentlyAddedUserBookmarkIdForUrl(
JNIEnv* env,
@@ -514,6 +541,7 @@ void BookmarkBridge::GetAllFoldersWithDepths(
BookmarkBridge::GetMostRecentlyAddedUserBookmarkIdForUrl(JNIEnv* env,
const GURL& url) {
@@ -508,6 +535,7 @@ void BookmarkBridge::GetAllFoldersWithDepths(
// Vector to temporarily contain all child bookmarks at same level for sorting
std::vector<const BookmarkNode*> bookmarks = {
bookmark_model_->mobile_node(),
@@ -262,7 +271,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse
bookmark_model_->bookmark_bar_node(),
bookmark_model_->other_node(),
};
@@ -607,6 +635,9 @@ std::vector<const BookmarkNode*> BookmarkBridge::GetTopLevelFolderIdsImpl(
@@ -601,6 +629,9 @@ std::vector<const BookmarkNode*> BookmarkBridge::GetTopLevelFolderIdsImpl(
top_level_folders.push_back(other_node);
}
@@ -272,7 +281,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse
const BookmarkNode* reading_list_node =
local_or_syncable_reading_list_manager_->GetRoot();
if (IsPermanentFolderVisible(ignore_visibility, reading_list_node)) {
@@ -1326,6 +1357,17 @@ void BookmarkBridge::GetBookmarksOfType(
@@ -1313,6 +1344,17 @@ void BookmarkBridge::GetBookmarksOfType(
AddBookmarkNodesToBookmarkIdList(env, j_list, results);
}
@@ -302,9 +311,9 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.h b/chrome/browser
+ const base::android::JavaParamRef<jobject>& url);
+
base::android::ScopedJavaLocalRef<jobject>
GetMostRecentlyAddedUserBookmarkIdForUrl(
JNIEnv* env,
@@ -245,6 +249,10 @@ class BookmarkBridge : public ProfileObserver,
GetMostRecentlyAddedUserBookmarkIdForUrl(JNIEnv* env, const GURL& url);
const bookmarks::BookmarkNode* GetMostRecentlyAddedUserBookmarkIdForUrlImpl(
@@ -237,6 +241,10 @@ class BookmarkBridge : public ProfileObserver,
const base::android::JavaParamRef<jobject>& j_list,
jint type);
@@ -382,7 +391,7 @@ diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browse
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -3930,6 +3930,9 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>clear the Chrome da
@@ -3979,6 +3979,9 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>clear the Chrome da
<message name="IDS_MENU_SELECT_TABS" desc="Menu item for bulk editing tabs. [CHAR_LIMIT=27]">
Select tabs
</message>
@@ -42,7 +42,7 @@ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/re
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
@@ -3009,6 +3009,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -2986,6 +2986,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
NewTabPageUma.recordAction(NewTabPageUma.ACTION_OPENED_DOWNLOADS_MANAGER);
}
RecordUserAction.record("MobileMenuDownloadManager");
@@ -54,7 +54,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
@@ -2729,6 +2729,11 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -2722,6 +2722,11 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
return doOpenWebApk(currentTab);
}
@@ -69,15 +69,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java
@@ -575,6 +575,7 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
isChromeScheme, isFileScheme, isContentScheme, isIncognito, url));
@@ -576,6 +576,7 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
isNativePage, isFileScheme, isContentScheme, isIncognito, url));
updateRequestDesktopSiteMenuItem(menu, currentTab, true /* can show */, isChromeScheme);
updateRequestDesktopSiteMenuItem(menu, currentTab, true /* can show */, isNativePage);
+ updateViewSourceMenuItem(menu, currentTab);
updateAutoDarkMenuItem(menu, currentTab, isChromeScheme);
updateAutoDarkMenuItem(menu, currentTab, isNativePage);
@@ -1285,6 +1286,23 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
@@ -1286,6 +1287,23 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
}
}
@@ -104,10 +104,10 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java
@@ -293,6 +293,7 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat
@@ -294,6 +294,7 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat
updateRequestDesktopSiteMenuItem(
menu, currentTab, requestDesktopSiteVisible, isChromeScheme);
menu, currentTab, requestDesktopSiteVisible, isNativePage);
+ updateViewSourceMenuItem(menu, currentTab);
prepareAddToHomescreenMenuItem(menu, currentTab, addToHomeScreenVisible);
}
@@ -115,7 +115,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -314,6 +314,10 @@ CHAR_LIMIT guidelines:
@@ -319,6 +319,10 @@ CHAR_LIMIT guidelines:
USB
</message>
@@ -8,15 +8,15 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
.../tasks/tab_management/TabProperties.java | 5 +++
.../java/res/xml/privacy_preferences.xml | 5 +++
.../chrome/browser/app/ChromeActivity.java | 3 +-
.../layouts/content/TabContentManager.java | 7 +++-
.../privacy/settings/PrivacySettings.java | 42 ++++++++++++++++++-
.../browser/tab_ui/TabContentManager.java | 6 ++-
.../strings/android_chrome_strings.grd | 8 ++++
7 files changed, 73 insertions(+), 7 deletions(-)
7 files changed, 72 insertions(+), 7 deletions(-)
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridViewBinder.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridViewBinder.java
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridViewBinder.java
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridViewBinder.java
@@ -327,9 +327,12 @@ class TabGridViewBinder {
@@ -330,9 +330,12 @@ class TabGridViewBinder {
// Adjust bitmap to thumbnail.
TabUtils.setBitmapAndUpdateImageMatrix(thumbnail, result, thumbnailSize);
} else if (isMostRecentRequest) {
@@ -32,7 +32,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
}
};
if (sThumbnailFetcherForTesting != null) {
@@ -368,6 +371,7 @@ class TabGridViewBinder {
@@ -371,6 +374,7 @@ class TabGridViewBinder {
ViewLookupCachingFrameLayout rootView,
PropertyModel model,
TabListFaviconProvider.TabFavicon favicon) {
@@ -43,7 +43,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabProperties.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabProperties.java
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabProperties.java
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabProperties.java
@@ -63,6 +63,9 @@ public class TabProperties {
@@ -64,6 +64,9 @@ public class TabProperties {
public static final WritableBooleanPropertyKey FAVICON_FETCHED =
new WritableBooleanPropertyKey();
@@ -53,7 +53,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
/** Property for lazily fetching favicons when required by an item in a UI. */
public static final WritableObjectPropertyKey<TabListFaviconProvider.TabFaviconFetcher>
FAVICON_FETCHER = new WritableObjectPropertyKey<>();
@@ -164,6 +167,7 @@ public class TabProperties {
@@ -165,6 +168,7 @@ public class TabProperties {
CARD_TYPE,
CONTENT_DESCRIPTION_STRING,
CLOSE_BUTTON_DESCRIPTION_STRING,
@@ -61,7 +61,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
SHOPPING_PERSISTED_TAB_DATA_FETCHER,
SHOULD_SHOW_PRICE_DROP_TOOLTIP,
QUICK_DELETE_ANIMATION_STATUS,
@@ -177,6 +181,7 @@ public class TabProperties {
@@ -178,6 +182,7 @@ public class TabProperties {
TAB_CLOSED_LISTENER,
FAVICON_FETCHED,
FAVICON_FETCHER,
@@ -87,15 +87,15 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
@@ -146,6 +146,7 @@ import org.chromium.chrome.browser.preferences.ChromePreferenceKeys;
@@ -144,6 +144,7 @@ import org.chromium.chrome.browser.preferences.ChromePreferenceKeys;
import org.chromium.chrome.browser.preferences.ChromeSharedPreferences;
import org.chromium.chrome.browser.preferences.Pref;
import org.chromium.chrome.browser.printing.TabPrinter;
+import org.chromium.chrome.browser.privacy.settings.PrivacySettings;
import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.profiles.ProfileProvider;
import org.chromium.chrome.browser.readaloud.ReadAloudController;
import org.chromium.chrome.browser.selection.SelectionPopupBackPressHandler;
@@ -702,7 +703,7 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -730,7 +731,7 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
new TabContentManager(
this,
mBrowserControlsManagerSupplier.get(),
@@ -104,26 +104,6 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
tabModelSelector != null ? tabModelSelector::getTabById : null));
getBrowserControlsManager()
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/content/TabContentManager.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/content/TabContentManager.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/content/TabContentManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/content/TabContentManager.java
@@ -325,11 +325,14 @@ public class TabContentManager {
*/
public void getTabThumbnailWithCallback(
@NonNull int tabId,
- @NonNull Size thumbnailSize,
+ @NonNull Size thumbnailSize, //
@NonNull Callback<Bitmap> callback,
boolean forceUpdate,
boolean writeBack) {
- if (!mSnapshotsEnabled) return;
+ if (!mSnapshotsEnabled) {
+ callback.onResult(null);
+ return;
+ }
// TODO(crbug/1444782): Remove forceUpdate and writeBack params once the following features
// launch:
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
@@ -176,7 +156,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
Preference privacyGuidePreference = findPreference(PREF_PRIVACY_GUIDE);
// Record the launch of PG from the S&P link-row entry point
privacyGuidePreference.setOnPreferenceClickListener(
@@ -344,6 +372,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
@@ -345,6 +373,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
public static final String PREF_ALLOW_CUSTOM_TAB_INTENTS = "allow_custom_tab_intents";
public static final String PREF_OPEN_EXTERNAL_LINKS_INCOGNITO = "open_external_links_incognito";
@@ -184,7 +164,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
@@ -369,6 +398,13 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
@@ -370,6 +399,13 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
SharedPreferences.Editor sharedPreferencesEditor = ContextUtils.getAppSharedPreferences().edit();
sharedPreferencesEditor.putBoolean(PREF_OPEN_EXTERNAL_LINKS_INCOGNITO, (boolean)newValue);
sharedPreferencesEditor.apply();
@@ -198,7 +178,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
}
return true;
}
@@ -417,6 +453,10 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
@@ -418,6 +454,10 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
: R.string.text_off);
}
@@ -209,10 +189,26 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
Preference refererPolicyPref = findPreference(PREF_REFERER_POLICY);
refererPolicyPref.setSummary(
RefererSettingsFragment.getRefererSummaryString(getContext()));
diff --git a/chrome/browser/tab_ui/android/java/src/org/chromium/chrome/browser/tab_ui/TabContentManager.java b/chrome/browser/tab_ui/android/java/src/org/chromium/chrome/browser/tab_ui/TabContentManager.java
--- a/chrome/browser/tab_ui/android/java/src/org/chromium/chrome/browser/tab_ui/TabContentManager.java
+++ b/chrome/browser/tab_ui/android/java/src/org/chromium/chrome/browser/tab_ui/TabContentManager.java
@@ -328,8 +328,10 @@ public class TabContentManager {
@NonNull Callback<Bitmap> callback,
boolean forceUpdate,
boolean writeBack) {
- if (!mSnapshotsEnabled) return;
-
+ if (!mSnapshotsEnabled) {
+ callback.onResult(null);
+ return;
+ }
// TODO(crbug/1444782): Remove forceUpdate and writeBack params once the following features
// launch:
// * GridTabSwitcherAndroidAnimations
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -5423,6 +5423,14 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>clear the Chrome da
@@ -5436,6 +5436,14 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>clear the Chrome da
Your <ph name="FQDN">%1$s<ex>www.amazon.com</ex></ph> timer ran out. It'll start again tomorrow.
</message>
@@ -5,43 +5,44 @@ Subject: Add option to force tablet UI
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
.../start_surface/StartSurfaceMediator.java | 5 +++-
.../tasks/SingleTabSwitcherOnNtpMediator.java | 3 +-
.../layout/custom_tabs_control_container.xml | 2 +-
.../java/res/layout/recent_tabs_page.xml | 2 +-
.../java/res/values-sw600dp/dimens.xml | 6 ++--
chrome/android/java/res/values/dimens.xml | 5 ++--
.../java/res/values-sw600dp/dimens.xml | 4 +--
chrome/android/java/res/values/dimens.xml | 6 +++-
.../chrome/browser/ChromeTabbedActivity.java | 4 ++-
.../chrome/browser/WarmupManager.java | 5 +++-
.../settings/AccessibilitySettings.java | 13 +++++++++
.../ChromeAccessibilitySettingsDelegate.java | 19 +++++++++++++
.../chrome/browser/app/ChromeActivity.java | 4 ++-
.../overlays/strip/StripLayoutHelper.java | 10 +++++--
.../strip/StripLayoutHelperManager.java | 6 +++-
.../strip/StripLayoutHelperManager.java | 7 ++++-
.../browser/tasks/ReturnToChromeUtil.java | 4 ++-
.../chrome/browser/ui/RootUiCoordinator.java | 5 +++-
chrome/browser/preferences/BUILD.gn | 1 +
.../preferences/ChromePreferenceKeys.java | 1 +
.../preferences/ChromeSharedPreferences.java | 8 ++++++
.../LegacyChromePreferenceKeys.java | 1 +
.../SingleTabSwitcherOnNtpMediator.java | 3 +-
.../omnibox/LocationBarCoordinator.java | 2 +-
.../strings/android_chrome_strings.grd | 7 +++++
.../java/res/layout/control_container.xml | 12 ++++----
.../java/res/layout/toolbar_tablet.xml | 2 +-
.../java/res/values-sw600dp/dimens.xml | 3 +-
.../toolbar/java/res/values/dimens.xml | 3 +-
.../java/res/values-sw600dp/dimens.xml | 5 ++--
.../toolbar/java/res/values/dimens.xml | 5 ++--
.../browser/toolbar/ControlContainer.java | 2 +-
.../top/TabStripTransitionCoordinator.java | 2 +-
.../toolbar/top/ToolbarControlContainer.java | 28 ++++++++++++++++++-
.../browser/toolbar/top/ToolbarLayout.java | 5 +++-
components/BUILD.gn | 6 ++--
.../res/xml/accessibility_preferences.xml | 5 ++++
.../AccessibilitySettingsDelegate.java | 11 ++++++++
.../chromium/ui/base/DeviceFormFactor.java | 9 ++++++
32 files changed, 165 insertions(+), 34 deletions(-)
33 files changed, 171 insertions(+), 34 deletions(-)
diff --git a/chrome/android/features/start_surface/java/src/org/chromium/chrome/features/start_surface/StartSurfaceMediator.java b/chrome/android/features/start_surface/java/src/org/chromium/chrome/features/start_surface/StartSurfaceMediator.java
--- a/chrome/android/features/start_surface/java/src/org/chromium/chrome/features/start_surface/StartSurfaceMediator.java
+++ b/chrome/android/features/start_surface/java/src/org/chromium/chrome/features/start_surface/StartSurfaceMediator.java
@@ -102,6 +102,7 @@ import org.chromium.components.browser_ui.widget.gesture.BackPressHandler;
@@ -100,6 +100,7 @@ import org.chromium.components.browser_ui.widget.gesture.BackPressHandler;
import org.chromium.components.embedder_support.util.UrlUtilities;
import org.chromium.components.prefs.PrefService;
import org.chromium.content_public.browser.LoadUrlParams;
@@ -49,7 +50,7 @@ diff --git a/chrome/android/features/start_surface/java/src/org/chromium/chrome/
import org.chromium.ui.modelutil.PropertyModel;
import org.chromium.ui.text.EmptyTextWatcher;
import org.chromium.ui.util.ColorUtils;
@@ -1208,7 +1209,9 @@ class StartSurfaceMediator
@@ -1134,7 +1135,9 @@ class StartSurfaceMediator
int getTopToolbarPlaceholderHeight() {
// If logo is visible in Start surface instead of in the toolbar, we don't need to show the
// top margin of the fake search box.
@@ -60,26 +61,6 @@ diff --git a/chrome/android/features/start_surface/java/src/org/chromium/chrome/
+ (isLogoVisible()
? 0
: getPixelSize(R.dimen.start_surface_fake_search_box_top_margin));
diff --git a/chrome/android/features/start_surface/java/src/org/chromium/chrome/features/tasks/SingleTabSwitcherOnNtpMediator.java b/chrome/android/features/start_surface/java/src/org/chromium/chrome/features/tasks/SingleTabSwitcherOnNtpMediator.java
--- a/chrome/android/features/start_surface/java/src/org/chromium/chrome/features/tasks/SingleTabSwitcherOnNtpMediator.java
+++ b/chrome/android/features/start_surface/java/src/org/chromium/chrome/features/tasks/SingleTabSwitcherOnNtpMediator.java
@@ -41,6 +41,7 @@ import org.chromium.components.browser_ui.widget.displaystyle.HorizontalDisplayS
import org.chromium.components.browser_ui.widget.displaystyle.UiConfig;
import org.chromium.components.browser_ui.widget.displaystyle.UiConfig.DisplayStyle;
import org.chromium.components.embedder_support.util.UrlUtilities;
+import org.chromium.ui.base.DeviceFormFactor;
import org.chromium.ui.modelutil.PropertyModel;
import org.chromium.url.GURL;
@@ -91,7 +92,7 @@ public class SingleTabSwitcherOnNtpMediator implements ConfigurationChangedObser
mSingleTabCardClickedCallback = singleTabCardClickedCallback;
mIsSurfacePolishEnabled = tabContentManager != null;
mUiConfig = uiConfig;
- mIsTablet = isTablet;
+ mIsTablet = isTablet && !DeviceFormFactor.isForceTabletUI();
mModuleDelegate = moduleDelegate;
mMarginNarrowWindowOnTablet =
diff --git a/chrome/android/java/res/layout/custom_tabs_control_container.xml b/chrome/android/java/res/layout/custom_tabs_control_container.xml
--- a/chrome/android/java/res/layout/custom_tabs_control_container.xml
+++ b/chrome/android/java/res/layout/custom_tabs_control_container.xml
@@ -107,25 +88,21 @@ diff --git a/chrome/android/java/res/layout/recent_tabs_page.xml b/chrome/androi
diff --git a/chrome/android/java/res/values-sw600dp/dimens.xml b/chrome/android/java/res/values-sw600dp/dimens.xml
--- a/chrome/android/java/res/values-sw600dp/dimens.xml
+++ b/chrome/android/java/res/values-sw600dp/dimens.xml
@@ -14,12 +14,10 @@ found in the LICENSE file.
@@ -14,8 +14,8 @@ found in the LICENSE file.
<dimen name="compositor_tab_title_text_size">14sp</dimen>
<!-- Full Screen Dimensions -->
- <dimen name="control_container_height">96dp</dimen>
- <dimen name="custom_tabs_control_container_height">64dp</dimen>
+ <dimen name="control_container_height_cromite">96dp</dimen>
+ <dimen name="control_container_height_tabletui">96dp</dimen>
<dimen name="custom_tabs_control_container_height">64dp</dimen>
- <!-- The combined height of the tab strip and toolbar. -->
- <dimen name="tab_strip_and_toolbar_height">96dp</dimen>
-
<!-- NTP dimensions -->
<dimen name="ntp_search_box_transition_length">60dp</dimen>
<dimen name="ntp_wide_card_lateral_margins">48dp</dimen>
diff --git a/chrome/android/java/res/values/dimens.xml b/chrome/android/java/res/values/dimens.xml
--- a/chrome/android/java/res/values/dimens.xml
+++ b/chrome/android/java/res/values/dimens.xml
@@ -121,11 +121,12 @@ found in the LICENSE file.
@@ -123,9 +123,13 @@ found in the LICENSE file.
<dimen name="tab_modal_scrim_vertical_margin">16dp</dimen>
<!-- Should match toolbar_height_no_shadow -->
@@ -134,16 +111,16 @@ diff --git a/chrome/android/java/res/values/dimens.xml b/chrome/android/java/res
+ <dimen name="control_container_height_tabletui">96dp</dimen>
<dimen name="custom_tabs_control_container_height">56dp</dimen>
<!-- The combined height of the tab strip and toolbar. -->
- <dimen name="tab_strip_and_toolbar_height">56dp</dimen>
+ <!-- The combined height of the tab strip and toolbar. -->
+ <dimen name="tab_strip_and_toolbar_height_cromite">56dp</dimen>
+
<!-- Find in Page dimensions -->
<dimen name="find_in_page_popup_width">375dp</dimen>
<dimen name="find_in_page_popup_height">60dp</dimen>
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
@@ -2247,7 +2247,9 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -2265,7 +2265,9 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@Override
public int getControlContainerHeightResource() {
@@ -157,7 +134,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/WarmupManager.java b/chrome/android/java/src/org/chromium/chrome/browser/WarmupManager.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/WarmupManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/WarmupManager.java
@@ -50,6 +50,7 @@ import org.chromium.components.embedder_support.util.UrlConstants;
@@ -51,6 +51,7 @@ import org.chromium.components.embedder_support.util.UrlConstants;
import org.chromium.content_public.browser.WebContents;
import org.chromium.content_public.browser.WebContentsObserver;
import org.chromium.ui.LayoutInflaterUtils;
@@ -165,7 +142,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/WarmupManager.j
import org.chromium.ui.base.WindowAndroid;
import org.chromium.ui.display.DisplayUtil;
@@ -383,7 +384,9 @@ public class WarmupManager {
@@ -384,7 +385,9 @@ public class WarmupManager {
(ControlContainer) mainView.findViewById(R.id.control_container);
if (toolbarId != ActivityUtils.NO_RESOURCE_ID && controlContainer != null) {
@@ -252,21 +229,21 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/s
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
@@ -847,7 +847,9 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
// Inflate the correct toolbar layout for the device.
int toolbarLayoutId = getToolbarLayoutId();
if (toolbarLayoutId != ActivityUtils.NO_RESOURCE_ID && controlContainer != null) {
- controlContainer.initWithToolbar(toolbarLayoutId);
+ controlContainer.initWithToolbar(toolbarLayoutId,
@@ -874,7 +874,9 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
// Inflate the correct toolbar layout for the device.
int toolbarLayoutId = getToolbarLayoutId();
if (toolbarLayoutId != ActivityUtils.NO_RESOURCE_ID && controlContainer != null) {
- controlContainer.initWithToolbar(toolbarLayoutId);
+ controlContainer.initWithToolbar(toolbarLayoutId,
+ DeviceFormFactor.isForceTabletUI()
+ ? R.dimen.control_container_height_tabletui : 0);
}
}
onInitialLayoutInflationComplete();
}
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelper.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelper.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelper.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelper.java
@@ -66,6 +66,7 @@ import org.chromium.chrome.browser.tasks.tab_management.TabUiThemeUtil;
@@ -69,6 +69,7 @@ import org.chromium.chrome.browser.tasks.tab_management.TabUiThemeUtil;
import org.chromium.components.browser_ui.styles.ChromeColors;
import org.chromium.components.browser_ui.styles.SemanticColorUtils;
import org.chromium.components.tab_groups.TabGroupColorId;
@@ -274,7 +251,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over
import org.chromium.ui.base.LocalizationUtils;
import org.chromium.ui.base.WindowAndroid;
import org.chromium.ui.interpolators.Interpolators;
@@ -3806,8 +3807,13 @@ public class StripLayoutHelper
@@ -4576,8 +4577,13 @@ public class StripLayoutHelper implements StripLayoutTab.StripLayoutTabDelegate
mTabMenu.setAnchorView(tabView);
// 3. Set the vertical offset to align the tab menu with bottom of the tab strip
int tabHeight = mManagerHost.getHeight();
@@ -293,7 +270,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelperManager.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelperManager.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelperManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelperManager.java
@@ -72,6 +72,7 @@ import org.chromium.chrome.browser.ui.system.StatusBarColorController;
@@ -77,6 +77,7 @@ import org.chromium.chrome.browser.ui.system.StatusBarColorController;
import org.chromium.components.browser_ui.styles.SemanticColorUtils;
import org.chromium.components.browser_ui.widget.scrim.ScrimProperties;
import org.chromium.content_public.browser.LoadUrlParams;
@@ -301,24 +278,29 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over
import org.chromium.ui.base.LocalizationUtils;
import org.chromium.ui.base.PageTransition;
import org.chromium.ui.base.WindowAndroid;
@@ -444,7 +445,10 @@ public class StripLayoutHelperManager
mModelSelectorButton.setClickSlop(MODEL_SELECTOR_BUTTON_CLICK_SLOP_DP);
@@ -396,11 +397,15 @@ public class StripLayoutHelperManager
Resources res = context.getResources();
- mHeight = res.getDimension(R.dimen.tab_strip_height) / mDensity;
+ int tab_strip_height = (int) res.getDimension(R.dimen.tab_strip_height_cromite);
+ if (DeviceFormFactor.isForceTabletUI())
+ tab_strip_height = (int) res.getDimension(R.dimen.tab_strip_height_tabletui);
+ mHeight = tab_strip_height / mDensity;
mModelSelectorButton.setAccessibilityDescription(
res.getString(R.string.accessibility_tabstrip_btn_incognito_toggle_standard),
res.getString(R.string.accessibility_tabstrip_btn_incognito_toggle_incognito));
mIsLayoutOptimizationsEnabled =
ToolbarFeatures.isTabStripWindowLayoutOptimizationEnabled(true);
- mScrollableStripHeight = res.getDimension(R.dimen.tab_strip_height) / mDensity;
+ mScrollableStripHeight =
+ (DeviceFormFactor.isForceTabletUI()
+ ? res.getDimension(R.dimen.tab_strip_height_tabletui)
+ : res.getDimension(R.dimen.tab_strip_height_cromite)) / mDensity;
mHeight =
mIsLayoutOptimizationsEnabled
? toolbarManager.getTabStripHeightSupplier().get() / mDensity
: mScrollableStripHeight;
+
mTopPadding = mHeight - mScrollableStripHeight;
CompositorOnClickHandler selectorClickHandler = time -> handleModelSelectorButtonClick();
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tasks/ReturnToChromeUtil.java b/chrome/android/java/src/org/chromium/chrome/browser/tasks/ReturnToChromeUtil.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tasks/ReturnToChromeUtil.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tasks/ReturnToChromeUtil.java
@@ -974,7 +974,9 @@ public final class ReturnToChromeUtil {
public static boolean isScrollableMvtEnabled(Context context) {
@@ -933,7 +933,9 @@ public final class ReturnToChromeUtil {
// TODO(b/331667743): Clean up the flag for scrollable mvt while cleaning up surface polish
// code.
boolean isSurfacePolishEnabled = ChromeFeatureList.sSurfacePolish.isEnabled();
- if (!DeviceFormFactor.isNonMultiDisplayContextOnTablet(context)) {
+ if (!DeviceFormFactor.isNonMultiDisplayContextOnTablet(context) ||
@@ -338,7 +320,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordi
import org.chromium.chrome.browser.price_tracking.PriceTrackingButtonController;
import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.profiles.ProfileManager;
@@ -1593,7 +1594,9 @@ public class RootUiCoordinator
@@ -1630,7 +1631,9 @@ public class RootUiCoordinator
if (!mSupportsFindInPageSupplier.getAsBoolean()) return;
int stubId = R.id.find_toolbar_stub;
@@ -363,7 +345,7 @@ diff --git a/chrome/browser/preferences/BUILD.gn b/chrome/browser/preferences/BU
diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
--- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
+++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
@@ -270,6 +270,7 @@ public final class ChromePreferenceKeys {
@@ -264,6 +264,7 @@ public final class ChromePreferenceKeys {
AccessibilityConstants.FONT_USER_SET_FORCE_ENABLE_ZOOM;
public static final String HISTORY_SHOW_HISTORY_INFO = "history_home_show_info";
@@ -374,16 +356,16 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro
diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromeSharedPreferences.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromeSharedPreferences.java
--- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromeSharedPreferences.java
+++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromeSharedPreferences.java
@@ -11,6 +11,8 @@ import org.chromium.base.shared_preferences.PreferenceKeyRegistry;
import org.chromium.base.shared_preferences.SharedPreferencesManager;
@@ -12,6 +12,8 @@ import org.chromium.base.shared_preferences.SharedPreferencesManager;
import org.chromium.build.BuildConfig;
import org.chromium.build.annotations.AssumeNonNull;
+import org.chromium.ui.base.DeviceFormFactor;
+
@JNINamespace("android::shared_preferences")
public class ChromeSharedPreferences {
public static final PreferenceKeyRegistry REGISTRY =
@@ -22,6 +24,12 @@ public class ChromeSharedPreferences {
@@ -23,6 +25,12 @@ public class ChromeSharedPreferences {
LegacyChromePreferenceKeys.getPrefixesInUse())
: null);
@@ -407,6 +389,26 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro
ChromePreferenceKeys.FONT_USER_SET_FORCE_ENABLE_ZOOM,
ChromePreferenceKeys.HISTORY_SHOW_HISTORY_INFO,
ChromePreferenceKeys.HOMEPAGE_ENABLED,
diff --git a/chrome/browser/single_tab/android/java/src/org/chromium/chrome/browser/single_tab/SingleTabSwitcherOnNtpMediator.java b/chrome/browser/single_tab/android/java/src/org/chromium/chrome/browser/single_tab/SingleTabSwitcherOnNtpMediator.java
--- a/chrome/browser/single_tab/android/java/src/org/chromium/chrome/browser/single_tab/SingleTabSwitcherOnNtpMediator.java
+++ b/chrome/browser/single_tab/android/java/src/org/chromium/chrome/browser/single_tab/SingleTabSwitcherOnNtpMediator.java
@@ -40,6 +40,7 @@ import org.chromium.components.browser_ui.widget.displaystyle.HorizontalDisplayS
import org.chromium.components.browser_ui.widget.displaystyle.UiConfig;
import org.chromium.components.browser_ui.widget.displaystyle.UiConfig.DisplayStyle;
import org.chromium.components.embedder_support.util.UrlUtilities;
+import org.chromium.ui.base.DeviceFormFactor;
import org.chromium.ui.modelutil.PropertyModel;
import org.chromium.url.GURL;
@@ -90,7 +91,7 @@ public class SingleTabSwitcherOnNtpMediator implements ConfigurationChangedObser
mSingleTabCardClickedCallback = singleTabCardClickedCallback;
mIsSurfacePolishEnabled = tabContentManager != null;
mUiConfig = uiConfig;
- mIsTablet = isTablet;
+ mIsTablet = isTablet && !DeviceFormFactor.isForceTabletUI();
mModuleDelegate = moduleDelegate;
mMarginNarrowWindowOnTablet =
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java
@@ -422,7 +424,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -1604,6 +1604,13 @@ Your Google account may have other forms of browsing history like searches and a
@@ -1618,6 +1618,13 @@ Your Google account may have other forms of browsing history like searches and a
Hide your IP address
</message>
@@ -461,8 +463,8 @@ diff --git a/chrome/browser/ui/android/toolbar/java/res/layout/control_container
android:src="@drawable/toolbar_hairline"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:layout_marginTop="@dimen/tab_strip_and_toolbar_height"
+ android:layout_marginTop="@dimen/tab_strip_and_toolbar_height_cromite"
- android:layout_marginTop="@dimen/control_container_height"
+ android:layout_marginTop="@dimen/control_container_height_cromite"
android:scaleType="fitXY"
android:importantForAccessibility="no" />
@@ -507,24 +509,28 @@ diff --git a/chrome/browser/ui/android/toolbar/java/res/layout/toolbar_tablet.xm
diff --git a/chrome/browser/ui/android/toolbar/java/res/values-sw600dp/dimens.xml b/chrome/browser/ui/android/toolbar/java/res/values-sw600dp/dimens.xml
--- a/chrome/browser/ui/android/toolbar/java/res/values-sw600dp/dimens.xml
+++ b/chrome/browser/ui/android/toolbar/java/res/values-sw600dp/dimens.xml
@@ -7,5 +7,6 @@ found in the LICENSE file.
@@ -7,6 +7,7 @@ found in the LICENSE file.
<resources>
<!-- Tab Strip Dimensions -->
- <dimen name="tab_strip_height">40dp</dimen>
- <dimen name="tab_strip_reserved_top_padding">2dp</dimen>
+ <dimen name="tab_strip_height_cromite">40dp</dimen>
+ <dimen name="tab_strip_height_tabletui">40dp</dimen>
+ <dimen name="tab_strip_reserved_top_padding_cromite">2dp</dimen>
</resources>
diff --git a/chrome/browser/ui/android/toolbar/java/res/values/dimens.xml b/chrome/browser/ui/android/toolbar/java/res/values/dimens.xml
--- a/chrome/browser/ui/android/toolbar/java/res/values/dimens.xml
+++ b/chrome/browser/ui/android/toolbar/java/res/values/dimens.xml
@@ -10,7 +10,8 @@ found in the LICENSE file.
@@ -10,8 +10,9 @@ found in the LICENSE file.
<dimen name="toolbar_tab_count_text_size_2_digit">10dp</dimen>
<!-- Tab Strip Dimensions -->
- <dimen name="tab_strip_height">0dp</dimen>
- <dimen name="tab_strip_reserved_top_padding">0dp</dimen>
+ <dimen name="tab_strip_height_cromite">0dp</dimen>
+ <dimen name="tab_strip_height_tabletui">40dp</dimen>
+ <dimen name="tab_strip_reserved_top_padding_cromite">0dp</dimen>
<!-- Negative vertical inset added to the search box bounds when modern is enabled. 4dp is added
to both the top and bottom bounds to bring the 48dp modern_toolbar_background_size to 56dp
@@ -540,6 +546,18 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow
/**
* @return The {@link ViewResourceAdapter} that exposes this {@link View} as a CC resource.
diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/TabStripTransitionCoordinator.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/TabStripTransitionCoordinator.java
--- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/TabStripTransitionCoordinator.java
+++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/TabStripTransitionCoordinator.java
@@ -144,7 +144,7 @@ public class TabStripTransitionCoordinator implements ComponentCallbacks {
mTabStripReservedTopPadding =
controlContainerView()
.getResources()
- .getDimensionPixelSize(R.dimen.tab_strip_reserved_top_padding);
+ .getDimensionPixelSize(R.dimen.tab_strip_reserved_top_padding_cromite);
mOnLayoutChangedListener =
(view, left, top, right, bottom, oldLeft, oldTop, oldRight, oldBottom) -> {
diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarControlContainer.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarControlContainer.java
--- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarControlContainer.java
+++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarControlContainer.java
@@ -551,7 +569,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow
import android.graphics.Canvas;
import android.graphics.PorterDuff;
import android.graphics.Rect;
@@ -113,8 +114,33 @@ public class ToolbarControlContainer extends OptimizedFrameLayout implements Con
@@ -112,8 +113,33 @@ public class ToolbarControlContainer extends OptimizedFrameLayout implements Con
}
@Override
@@ -597,7 +615,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow
import org.chromium.ui.util.TokenHolder;
import org.chromium.url.GURL;
@@ -584,7 +585,9 @@ public abstract class ToolbarLayout extends FrameLayout
@@ -588,7 +589,9 @@ public abstract class ToolbarLayout extends FrameLayout
* not have a tab strip.
*/
protected int getTabStripHeightFromResource() {
@@ -620,7 +638,7 @@ diff --git a/components/BUILD.gn b/components/BUILD.gn
disallowed_extension_deps_ = [
# Components should largely not depend on //extensions. Since // extensions
# is not a component target and is linked with //chrome, depending on most
@@ -832,7 +832,7 @@ test("components_unittests") {
@@ -839,7 +839,7 @@ test("components_unittests") {
# On other platforms, no components should depend on Chrome.
# Since //chrome depends on //extensions, we also only assert_no_deps on
# extensions targets for non-lacros builds.
@@ -629,7 +647,7 @@ diff --git a/components/BUILD.gn b/components/BUILD.gn
assert_no_deps = [ "//chrome/*" ]
assert_no_deps += disallowed_extension_deps_
}
@@ -1113,7 +1113,7 @@ if (use_blink) {
@@ -1124,7 +1124,7 @@ if (use_blink) {
# dependency. On other platforms, no components should depend on Chrome.
# Since //chrome depends on //extensions, we also only assert_no_deps on
# extensions targets for non-lacros builds.
@@ -36,7 +36,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
import org.chromium.base.IntentUtils;
import org.chromium.base.Log;
import org.chromium.base.MemoryPressureListener;
@@ -1630,8 +1631,10 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -1614,8 +1615,10 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
boolean hadCipherData =
CipherFactory.getInstance().restoreFromBundle(getSavedInstanceState());
@@ -77,7 +77,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
private ManagedPreferenceDelegate mManagedPreferenceDelegate;
private static final String PREF_IP_PROTECTION = "ip_protection";
@VisibleForTesting static final String PREF_CLEAR_BROWSING_DATA = "clear_browsing_data";
@@ -294,7 +299,11 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
@@ -295,7 +300,11 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
String key = preference.getKey();
@@ -90,8 +90,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
UserPrefs.get(getProfile())
.setBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED, (boolean) newValue);
} else if (PREF_HTTPS_FIRST_MODE.equals(key)) {
@@ -347,6 +356,11 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
PreloadPagesSettingsFragment.getPreloadPagesSummaryString(getContext()));
@@ -349,6 +358,11 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
getContext(), getProfile()));
}
+ ChromeSwitchPreference closeTabsOnExitPref =
@@ -105,7 +105,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -4860,6 +4860,12 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>clear the Chrome da
@@ -4918,6 +4918,12 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>clear the Chrome da
<message name="IDS_CONTEXTMENU_IMAGE_TITLE" desc="The title of a context menu tab when the item pressed contains more than one type. This indicates that all the actions are related to the image.">
IMAGE
</message>
@@ -23,15 +23,15 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridDialogMediator.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridDialogMediator.java
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridDialogMediator.java
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridDialogMediator.java
@@ -25,6 +25,7 @@ import org.chromium.base.task.PostTask;
import org.chromium.base.task.TaskTraits;
@@ -26,6 +26,7 @@ import org.chromium.base.task.TaskTraits;
import org.chromium.chrome.browser.data_sharing.DataSharingNotificationManager;
import org.chromium.chrome.browser.data_sharing.SharedImageTilesCoordinator;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
+import org.chromium.chrome.browser.homepage.HomepageManager;
import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.tab.TabCreationState;
import org.chromium.chrome.browser.tab.TabLaunchType;
@@ -55,6 +56,7 @@ import org.chromium.ui.KeyboardVisibilityDelegate;
@@ -58,6 +59,7 @@ import org.chromium.ui.KeyboardVisibilityDelegate;
import org.chromium.ui.base.DeviceFormFactor;
import org.chromium.ui.modelutil.PropertyModel;
import org.chromium.ui.text.EmptyTextWatcher;
@@ -39,7 +39,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
import java.util.ArrayList;
import java.util.List;
@@ -688,11 +690,16 @@ public class TabGridDialogMediator
@@ -697,11 +699,16 @@ public class TabGridDialogMediator
assert relatedTabs.size() > 0;
@@ -165,7 +165,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/settin
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/metrics/LaunchMetrics.java b/chrome/android/java/src/org/chromium/chrome/browser/metrics/LaunchMetrics.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/metrics/LaunchMetrics.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/metrics/LaunchMetrics.java
@@ -112,7 +112,6 @@ public class LaunchMetrics {
@@ -111,7 +111,6 @@ public class LaunchMetrics {
public static void recordHomePageLaunchMetrics(
boolean showHomeButton, boolean homepageIsNtp, GURL homepageGurl) {
if (homepageGurl.isEmpty()) {
@@ -184,7 +184,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
import org.chromium.chrome.browser.ntp.NewTabPageLaunchOrigin;
import org.chromium.chrome.browser.ntp.NewTabPageUtils;
import org.chromium.chrome.browser.prefetch.settings.PreloadPagesSettingsBridge;
@@ -484,6 +485,13 @@ public class ChromeTabCreator extends TabCreator {
@@ -485,6 +486,13 @@ public class ChromeTabCreator extends TabCreator {
* @return the created tab.
*/
public Tab launchUrl(String url, @TabLaunchType int type, Intent intent, long intentTimestamp) {
@@ -201,7 +201,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
--- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
+++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
@@ -283,6 +283,7 @@ public final class ChromePreferenceKeys {
@@ -277,6 +277,7 @@ public final class ChromePreferenceKeys {
public static final String HOMEPAGE_USE_CHROME_NTP = "Chrome.Homepage.UseNTP";
public static final String HOMEPAGE_USE_DEFAULT_URI = "homepage_partner_enabled";
@@ -223,7 +223,7 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -1369,6 +1369,9 @@ Your Google account may have other forms of browsing history like searches and a
@@ -1377,6 +1377,9 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_CLEAR_BROWSING_DATA_TAB_PERIOD_HOUR" desc="The option to delete browsing data from the last hour.">
Last hour
</message>
@@ -236,10 +236,10 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
diff --git a/chrome/browser/ui/browser_ui_prefs.cc b/chrome/browser/ui/browser_ui_prefs.cc
--- a/chrome/browser/ui/browser_ui_prefs.cc
+++ b/chrome/browser/ui/browser_ui_prefs.cc
@@ -78,6 +78,8 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistrySyncable* registry) {
GetHomeButtonAndHomePageIsNewTabPageFlags());
registry->RegisterBooleanPref(prefs::kShowHomeButton, false,
GetHomeButtonAndHomePageIsNewTabPageFlags());
@@ -85,6 +85,8 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistrySyncable* registry) {
registry->RegisterBooleanPref(
prefs::kShowForwardButton, true,
GetHomeAndForwardButtonAndHomePageIsNewTabPageFlags());
+ registry->RegisterBooleanPref(prefs::kNewTabPageIsHomePage, false,
+ PrefRegistry::NO_REGISTRATION_FLAGS);
@@ -248,9 +248,9 @@ diff --git a/chrome/browser/ui/browser_ui_prefs.cc b/chrome/browser/ui/browser_u
diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h
--- a/chrome/common/pref_names.h
+++ b/chrome/common/pref_names.h
@@ -1269,6 +1269,10 @@ inline constexpr char kUsedPolicyCertificates[] =
// visible on the toolbar.
inline constexpr char kShowHomeButton[] = "browser.show_home_button";
@@ -1280,6 +1280,10 @@ inline constexpr char kShowHomeButton[] = "browser.show_home_button";
// toolbar.
inline constexpr char kShowForwardButton[] = "browser.show_forward_button";
+// A boolean specifying whether opening a new tab should open the Home page
+// instead of the New Tab page.
+45 -4
View File
@@ -8,11 +8,52 @@ Add DuckDuckGo Lite
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
.../search_engines/prepopulated_engines.json | 31 +++++++++++++++++++
.../search_engine_countries-inc.cc | 3 ++
.../search_engines/search_engine_type.h | 5 +++
3 files changed, 39 insertions(+)
.../search_engine_choice/default_favicon.png | Bin 0 -> 903 bytes
...search_engine_choice_scaled_resources.grdp | 1 +
.../search_engines/prepopulated_engines.json | 31 ++++++++++++++++++
.../search_engine_countries-inc.cc | 3 ++
.../search_engines/search_engine_type.h | 5 +++
5 files changed, 40 insertions(+)
create mode 100644 components/resources/default_100_percent/search_engine_choice/default_favicon.png
diff --git a/components/resources/default_100_percent/search_engine_choice/default_favicon.png b/components/resources/default_100_percent/search_engine_choice/default_favicon.png
new file mode 100644
index 0000000000000000000000000000000000000000..6533419f2d6b40f7735054dec62c51ddf1ee1201
GIT binary patch
literal 903
zcmV;219<$2P)<h;3K|Lk000e1NJLTq001xm001xu1^@s6R|5Hm0009{Nkl<Zc-rk*
zHI&>u5dJaD%uTpU6K1Ny)MmAo?2~ki?Li;rI(@haGcz+YGo$8ZtH|rstmUBf-W*z<
z`LqMyjQ;vbR=naxn4FxTa$SOo%Y^Yq3CiCp`IM5k@HhA$JOj`EJVrBqK*>90<Y$Z!
zD&E1~9|C4N=Y0}PoKKzZ=aBLV-UaWB-0*4BX4X}1up41G3JAO#bVTDWd3iku6Hh={
zlma?HmsR5(hfh(b^FD*}4@!0sS4zV2hPiHTHz{QUr=p@EW3ne<xuXf?=gfeJ_n_0B
z@lJY|QARx>G)Ly==Qj#^Pm*zg`6NIm=nm~RX-}Ss_k_usva+)JncnmH^XI=4jNih$
zlz0y|WF4^Se4bG8m@v`L_#mWg6DB6I3T(&-X<X(aWBDC2?f1MT|2uB(BxS%X1$a%k
z;1;{ldEPHo!pWN$|21g&X`3k)RVSdZ`1-to+dxbxpx11tSFj1eY4p>FfHecpOCzcg
zpNwb+@DsmO2`6iI0DN;)MGkB;0q{--kR#0r9={VIfOiJ&qgPlcQV0O=qNN%EZUkK2
zXVWfZ`h5{40I)Gg`DG2UD<uwqtRPHQ`3e=w!vhePgFgO88URJiY>`5mlRG3V0I)IO
z^!VFvHvp@&1;F!4TUc<Tw?P23{124aYG2{<#pZ1%U*J~{i~%4NJtI_HQU19p>56LN
z%3gt$n(-Z(idK@zIi#qli66~IxloAGzuNPP+NSLfTs{_pT7f^J06kI9KUZ>A$&#d(
z+ZUd3gy@cNAuWhQ3vePzWtVK-4H5_<h_y6oOLkRNRsEA)yhw>iqgo-eCg3jF08o2(
zV+xr@B`n6nQmpYnUx3CSsDwu5Yyvoe1poxnZ<>do)Aj_?EW-9wQ^cQO=(N_*SpEcF
zA!n{N_=ZMrDQ)uj`{u@re$c++TFQW?-c&%T<H_NEl62(&6TL7nfTD(I>Jej=5G2dk
zc*-y0$13Q-mVE%=HZZcm54P~5#qa<$Vkc|B{qUnj<Z#y}04P$B=OI-_I^4yL*CEaE
zjS0pJfK7T{VJFY4st5f9G(|wnQru>jUSTzPpE5qa;Lv>bM_w_-mwYy_S=Aoxnl--Y
d#;<tA>kFnu^?NN9uE_uZ002ovPDHLkV1m60sc!%P
literal 0
HcmV?d00001
diff --git a/components/resources/search_engine_choice_scaled_resources.grdp b/components/resources/search_engine_choice_scaled_resources.grdp
--- a/components/resources/search_engine_choice_scaled_resources.grdp
+++ b/components/resources/search_engine_choice_scaled_resources.grdp
@@ -5,6 +5,7 @@
<if expr="_google_chrome">
<structure type="chrome_scaled_image" name="IDR_GOOGLE_COM_PNG" file="google_chrome/google_search_logo.png" />
</if>
+ <structure type="chrome_scaled_image" name="IDR_GOOGLEEN_PNG" file="search_engine_choice/default_favicon.png" />
<structure type="chrome_scaled_image" name="IDR_AR_YAHOO_COM_PNG" file="search_engine_choice/yahoo_com.png" />
<structure type="chrome_scaled_image" name="IDR_AT_YAHOO_COM_PNG" file="search_engine_choice/yahoo_com.png" />
<structure type="chrome_scaled_image" name="IDR_AU_YAHOO_COM_PNG" file="search_engine_choice/yahoo_com.png" />
diff --git a/components/search_engines/prepopulated_engines.json b/components/search_engines/prepopulated_engines.json
--- a/components/search_engines/prepopulated_engines.json
+++ b/components/search_engines/prepopulated_engines.json
@@ -47,7 +47,7 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
@@ -170,6 +170,7 @@ import org.chromium.chrome.browser.profiles.ProfileProvider;
@@ -172,6 +172,7 @@ import org.chromium.chrome.browser.profiles.ProfileProvider;
import org.chromium.chrome.browser.quick_delete.QuickDeleteController;
import org.chromium.chrome.browser.quick_delete.QuickDeleteDelegateImpl;
import org.chromium.chrome.browser.quick_delete.QuickDeleteMetricsDelegate;
@@ -55,7 +55,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
import org.chromium.chrome.browser.read_later.ReadingListBackPressHandler;
import org.chromium.chrome.browser.reengagement.ReengagementNotificationController;
import org.chromium.chrome.browser.search_engines.SearchEngineChoiceNotification;
@@ -1630,7 +1631,11 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -1614,7 +1615,11 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
Intent intent = getIntent();
boolean hadCipherData =
@@ -211,7 +211,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/browsing_data/C
diff --git a/chrome/app/settings_strings.grdp b/chrome/app/settings_strings.grdp
--- a/chrome/app/settings_strings.grdp
+++ b/chrome/app/settings_strings.grdp
@@ -2235,6 +2235,16 @@
@@ -2280,6 +2280,16 @@
<message name="IDS_SETTINGS_CLEAR_BROWSING_DATA" desc="Text for clear browsing data button in Privacy options">
Clear browsing data
</message>
@@ -231,7 +231,7 @@ diff --git a/chrome/app/settings_strings.grdp b/chrome/app/settings_strings.grdp
diff --git a/chrome/browser/android/browsing_data/browsing_data_bridge.cc b/chrome/browser/android/browsing_data/browsing_data_bridge.cc
--- a/chrome/browser/android/browsing_data/browsing_data_bridge.cc
+++ b/chrome/browser/android/browsing_data/browsing_data_bridge.cc
@@ -353,7 +353,7 @@ static void JNI_BrowsingDataBridge_SetLastClearBrowsingDataTab(
@@ -339,7 +339,7 @@ static void JNI_BrowsingDataBridge_SetLastClearBrowsingDataTab(
const JavaParamRef<jobject>& jprofile,
jint tab_index) {
DCHECK_GE(tab_index, 0);
@@ -282,7 +282,7 @@ diff --git a/chrome/browser/browsing_data/chrome_browsing_data_lifetime_manager.
diff --git a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.cc b/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.cc
--- a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.cc
+++ b/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.cc
@@ -438,6 +438,9 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData(
@@ -440,6 +440,9 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData(
CreateTaskCompletionClosure(TracingDataType::kHistory),
&history_task_tracker_);
}
@@ -292,7 +292,7 @@ diff --git a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.
if (ClipboardRecentContent::GetInstance())
ClipboardRecentContent::GetInstance()->SuppressClipboardContent();
@@ -488,7 +491,9 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData(
@@ -490,7 +493,9 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData(
prerender::NoStatePrefetchManager::CLEAR_PRERENDER_CONTENTS |
prerender::NoStatePrefetchManager::CLEAR_PRERENDER_HISTORY);
}
@@ -302,7 +302,7 @@ diff --git a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.
// The saved Autofill profiles and credit cards can include the origin from
// which these profiles and credit cards were learned. These are a form of
// history, so clear them as well.
@@ -509,7 +514,9 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData(
@@ -511,7 +516,9 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData(
if (data_manager)
data_manager->Refresh();
}
@@ -312,7 +312,7 @@ diff --git a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.
base::ThreadPool::PostTaskAndReply(
FROM_HERE, {base::TaskPriority::USER_VISIBLE, base::MayBlock()},
base::BindOnce(
@@ -584,9 +591,13 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData(
@@ -586,9 +593,13 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData(
}
device_event_log::Clear(delete_begin_, delete_end_);
@@ -326,7 +326,7 @@ diff --git a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.
content::BackgroundTracingManager::GetInstance().DeleteTracesInDateRange(
delete_begin_, delete_end_);
@@ -1233,6 +1244,8 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData(
@@ -1245,6 +1256,8 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData(
if (should_clear_zero_suggest_and_session_token && template_url_service)
template_url_service->ClearSessionToken();
@@ -338,7 +338,7 @@ diff --git a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.
diff --git a/chrome/browser/extensions/api/settings_private/prefs_util.cc b/chrome/browser/extensions/api/settings_private/prefs_util.cc
--- a/chrome/browser/extensions/api/settings_private/prefs_util.cc
+++ b/chrome/browser/extensions/api/settings_private/prefs_util.cc
@@ -514,6 +514,23 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlistedKeys() {
@@ -518,6 +518,23 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlistedKeys() {
(*s_allowlist)[browsing_data::prefs::kLastClearBrowsingDataTab] =
settings_api::PrefType::kNumber;
@@ -396,7 +396,7 @@ diff --git a/chrome/browser/profiles/android/profile_manager_utils.cc b/chrome/b
diff --git a/chrome/browser/profiles/profile_manager.cc b/chrome/browser/profiles/profile_manager.cc
--- a/chrome/browser/profiles/profile_manager.cc
+++ b/chrome/browser/profiles/profile_manager.cc
@@ -1483,6 +1483,19 @@ void ProfileManager::DoFinalInit(ProfileInfo* profile_info,
@@ -1481,6 +1481,19 @@ void ProfileManager::DoFinalInit(ProfileInfo* profile_info,
}
}
@@ -416,7 +416,7 @@ diff --git a/chrome/browser/profiles/profile_manager.cc b/chrome/browser/profile
void ProfileManager::DoFinalInitForServices(Profile* profile,
bool go_off_the_record) {
if (!do_final_services_init_ ||
@@ -2149,7 +2162,7 @@ void ProfileManager::OnBrowserClosed(Browser* browser) {
@@ -2141,7 +2154,7 @@ void ProfileManager::OnBrowserClosed(Browser* browser) {
Profile* original_profile = profile->GetOriginalProfile();
// Do nothing if the closed window is not the last window of the same profile.
for (Browser* browser_iter : *BrowserList::GetInstance()) {
@@ -440,7 +440,7 @@ diff --git a/chrome/browser/profiles/profile_manager.h b/chrome/browser/profiles
diff --git a/chrome/browser/resources/settings/clear_browsing_data_dialog/clear_browsing_data_dialog.html b/chrome/browser/resources/settings/clear_browsing_data_dialog/clear_browsing_data_dialog.html
--- a/chrome/browser/resources/settings/clear_browsing_data_dialog/clear_browsing_data_dialog.html
+++ b/chrome/browser/resources/settings/clear_browsing_data_dialog/clear_browsing_data_dialog.html
@@ -306,6 +306,50 @@
@@ -317,6 +317,50 @@
disabled="[[clearingInProgress_]]" no-set-pref>
</settings-checkbox>
</div>
@@ -513,9 +513,9 @@ diff --git a/chrome/browser/resources/settings/clear_browsing_data_dialog/clear_
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -1467,6 +1467,9 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_CLEAR_BROWSING_DATA_BASIC_TAB_TITLE" desc="The title of the tab showing the basic clear browsing data options.">
Basic
@@ -1481,6 +1481,9 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_ANDROID_APP_HISTORY_OPEN_FULL_OTHER_FORMS" desc="The informational message at the top of the history page letting users know that app-specific history may be missing some entries, followed by the info on the other forms of browing history.">
Some of your web history might not show up here. If needed, tap Open full Chrome history. Also, Your Google Account may have other forms of browsing history at <ph name="BEGIN_LINK">&lt;link&gt;</ph>myactivity.google.com<ph name="END_LINK">&lt;/link&gt;</ph>.
</message>
+ <message name="IDS_CLEAR_BROWSING_DATA_ATSTART_TAB_TITLE" desc="The title of the tab showing the at start clear browsing data options.">
+ At Startup
@@ -526,7 +526,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
diff --git a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc
--- a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc
+++ b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc
@@ -1675,6 +1675,7 @@ void AddPrivacyStrings(content::WebUIDataSource* html_source,
@@ -1689,6 +1689,7 @@ void AddPrivacyStrings(content::WebUIDataSource* html_source,
{"clearedData", IDS_SETTINGS_CLEARED_DATA},
{"clearBrowsingData", IDS_SETTINGS_CLEAR_BROWSING_DATA},
{"clearBrowsingDataDescription", IDS_SETTINGS_CLEAR_DATA_DESCRIPTION},
@@ -537,7 +537,7 @@ diff --git a/chrome/browser/ui/webui/settings/settings_localized_strings_provide
diff --git a/components/browsing_data/core/browsing_data_policies_utils.cc b/components/browsing_data/core/browsing_data_policies_utils.cc
--- a/components/browsing_data/core/browsing_data_policies_utils.cc
+++ b/components/browsing_data/core/browsing_data_policies_utils.cc
@@ -17,21 +17,21 @@
@@ -16,21 +16,21 @@
namespace browsing_data {
@@ -646,7 +646,7 @@ diff --git a/components/browsing_data/core/clear_browsing_data_tab.h b/component
diff --git a/components/browsing_data/core/pref_names.cc b/components/browsing_data/core/pref_names.cc
--- a/components/browsing_data/core/pref_names.cc
+++ b/components/browsing_data/core/pref_names.cc
@@ -47,6 +47,23 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistrySyncable* registry) {
@@ -29,6 +29,23 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistrySyncable* registry) {
registry->RegisterIntegerPref(
kClearBrowsingDataHistoryNoticeShownTimes, 0);
@@ -668,8 +668,8 @@ diff --git a/components/browsing_data/core/pref_names.cc b/components/browsing_d
+ kDeleteSiteSettingsAtStart, false);
+
#if !BUILDFLAG(IS_IOS)
registry->RegisterBooleanPref(
kDeleteDownloadHistory, true,
registry->RegisterBooleanPref(kDeleteDownloadHistory, true);
registry->RegisterBooleanPref(kDeleteHostedAppsData, false);
diff --git a/components/browsing_data/core/pref_names.h b/components/browsing_data/core/pref_names.h
--- a/components/browsing_data/core/pref_names.h
+++ b/components/browsing_data/core/pref_names.h
@@ -693,7 +693,7 @@ diff --git a/components/browsing_data/core/pref_names.h b/components/browsing_da
diff --git a/components/search_engines/template_url_service.cc b/components/search_engines/template_url_service.cc
--- a/components/search_engines/template_url_service.cc
+++ b/components/search_engines/template_url_service.cc
@@ -757,6 +757,7 @@ void TemplateURLService::RemoveAutoGeneratedForUrlsBetween(
@@ -764,6 +764,7 @@ void TemplateURLService::RemoveAutoGeneratedForUrlsBetween(
if (turl->date_created() >= created_after &&
(created_before.is_null() || turl->date_created() < created_before) &&
turl->safe_for_autoreplace() && turl->prepopulate_id() == 0 &&
@@ -704,7 +704,7 @@ diff --git a/components/search_engines/template_url_service.cc b/components/sear
diff --git a/content/browser/storage_partition_impl.cc b/content/browser/storage_partition_impl.cc
--- a/content/browser/storage_partition_impl.cc
+++ b/content/browser/storage_partition_impl.cc
@@ -1496,6 +1496,7 @@ void StoragePartitionImpl::Initialize(
@@ -1497,6 +1497,7 @@ void StoragePartitionImpl::Initialize(
.AppendASCII("Code Cache");
}
DCHECK_GE(settings.size_in_bytes(), 0);
@@ -24,12 +24,12 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
...Add-setting-to-invert-tap-and-long-tap.inc | 3 ++
...Add-setting-to-invert-tap-and-long-tap.inc | 1 +
.../renderer/core/html/html_anchor_element.cc | 36 +++++++++++++++----
.../renderer/core/html/html_anchor_element.h | 9 +++--
.../renderer/core/html/html_anchor_element.h | 7 +++-
.../renderer/core/html/html_image_element.cc | 17 +++++++++
.../renderer/core/html/html_image_element.h | 2 ++
.../core/page/context_menu_controller.cc | 32 ++++++++++++-----
.../core/page/context_menu_controller.cc | 33 ++++++++++++-----
.../core/page/context_menu_controller.h | 5 +--
21 files changed, 165 insertions(+), 21 deletions(-)
21 files changed, 165 insertions(+), 20 deletions(-)
create mode 100644 cromite_flags/chrome/browser/about_flags_cc/Add-setting-to-invert-tap-and-long-tap.inc
create mode 100644 cromite_flags/third_party/blink/common/features_cc/Add-setting-to-invert-tap-and-long-tap.inc
create mode 100644 cromite_flags/third_party/blink/common/features_h/Add-setting-to-invert-tap-and-long-tap.inc
@@ -194,8 +194,8 @@ diff --git a/chrome/browser/contextmenu/java/src/org/chromium/chrome/browser/con
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc
--- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -283,6 +283,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
&kTabGroupParityAndroid,
@@ -287,6 +287,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
&kTabIdMapAndroid,
&kTabletTabSwitcherLongPressMenu,
&kTabletToolbarIncognitoStatus,
+ &blink::features::kShowAlwaysContextMenuOnLinks,
@@ -205,7 +205,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
--- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
@@ -342,6 +342,8 @@ public abstract class ChromeFeatureList {
@@ -348,6 +348,8 @@ public abstract class ChromeFeatureList {
"DisableToolbarSwipeUp";
public static final String MOVE_TOP_TOOLBAR_TO_BOTTOM =
"MoveTopToolbarToBottom";
@@ -214,7 +214,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
public static final String NOTIFICATION_PERMISSION_VARIANT = "NotificationPermissionVariant";
public static final String NOTIFICATION_PERMISSION_BOTTOM_SHEET =
"NotificationPermissionBottomSheet";
@@ -628,6 +630,8 @@ public abstract class ChromeFeatureList {
@@ -630,6 +632,8 @@ public abstract class ChromeFeatureList {
newCachedFlag(DISABLE_TOOLBAR_SWIPE_UP, false);
public static final CachedFlag sMoveTopToolbarToBottom =
newCachedFlag(MOVE_TOP_TOOLBAR_TO_BOTTOM, false);
@@ -223,9 +223,9 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
public static final CachedFlag sOmniboxModernizeVisualUpdate =
newCachedFlag(OMNIBOX_MODERNIZE_VISUAL_UPDATE, true);
public static final CachedFlag sOptimizationGuidePushNotifications =
@@ -785,6 +789,7 @@ public abstract class ChromeFeatureList {
@@ -786,6 +790,7 @@ public abstract class ChromeFeatureList {
sTabWindowManagerIndexReassignmentActivityNotInAppTasks,
sTabWindowManagerReportIndicesMismatch,
sToolbarUseHardwareBitmapDraw,
sUseChimeAndroidSdk,
+ sShowAlwaysContextMenuOnLinks,
sUseLibunwindstackNativeUnwinderAndroid,
@@ -234,7 +234,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -1678,6 +1678,12 @@ Your Google account may have other forms of browsing history like searches and a
@@ -1692,6 +1692,12 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_DISABLE_TOOLBAR_SWIPE_UP" desc="Summary of the preference that allows the user to disable toolbar swipeup.">
Disable toolbar swipe up
</message>
@@ -247,7 +247,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
<!-- Safety check -->
<message name="IDS_PREFS_SAFETY_CHECK" desc="Title of the Safety check element in settings, allowing the user to check multiple areas of browser safety. [CHAR_LIMIT=32]">
@@ -2834,6 +2840,9 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>clear the Chrome da
@@ -2871,6 +2877,9 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>clear the Chrome da
<message name="IDS_CONTEXTMENU_OPEN_IN_NEW_CHROME_TAB" desc="Context sensitive menu item to open the selected link in a new Chrome tab from Chrome Custom Tab. [CHAR_LIMIT=30]">
Open in new Chrome tab
</message>
@@ -314,7 +314,7 @@ new file mode 100644
diff --git a/third_party/blink/renderer/core/html/html_anchor_element.cc b/third_party/blink/renderer/core/html/html_anchor_element.cc
--- a/third_party/blink/renderer/core/html/html_anchor_element.cc
+++ b/third_party/blink/renderer/core/html/html_anchor_element.cc
@@ -62,6 +62,7 @@
@@ -63,6 +63,7 @@
#include "third_party/blink/renderer/core/loader/render_blocking_resource_manager.h"
#include "third_party/blink/renderer/core/navigation_api/navigation_api.h"
#include "third_party/blink/renderer/core/page/chrome_client.h"
@@ -322,7 +322,7 @@ diff --git a/third_party/blink/renderer/core/html/html_anchor_element.cc b/third
#include "third_party/blink/renderer/core/page/page.h"
#include "third_party/blink/renderer/core/speculation_rules/document_speculation_rules.h"
#include "third_party/blink/renderer/platform/heap/garbage_collected.h"
@@ -516,6 +517,17 @@ void HTMLAnchorElement::NavigateToHyperlink(ResourceRequest request,
@@ -518,6 +519,17 @@ void HTMLAnchorElement::NavigateToHyperlink(ResourceRequest request,
bool is_trusted,
base::TimeTicks platform_time_stamp,
KURL completed_url) {
@@ -340,7 +340,7 @@ diff --git a/third_party/blink/renderer/core/html/html_anchor_element.cc b/third
LocalDOMWindow* window = GetDocument().domWindow();
if (!window) {
return;
@@ -576,6 +588,15 @@ void HTMLAnchorElement::NavigateToHyperlink(ResourceRequest request,
@@ -578,6 +590,15 @@ void HTMLAnchorElement::NavigateToHyperlink(ResourceRequest request,
/*element=*/this, request.HasUserGesture()));
}
@@ -356,16 +356,16 @@ diff --git a/third_party/blink/renderer/core/html/html_anchor_element.cc b/third
Frame* target_frame =
frame->Tree().FindOrCreateFrameForNavigation(frame_request, target).frame;
@@ -629,7 +650,7 @@ AtomicString HTMLAnchorElement::interestAction() const {
@@ -631,7 +652,7 @@ AtomicString HTMLAnchorElement::interestAction() const {
return g_empty_atom;
}
-void HTMLAnchorElement::HandleClick(Event& event) {
+void HTMLAnchorElement::HandleClick(Event& event, bool do_not_show_context_menu) {
-void HTMLAnchorElement::HandleClick(MouseEvent& event) {
+void HTMLAnchorElement::HandleClick(MouseEvent& event, bool do_not_show_context_menu) {
event.SetDefaultHandled();
LocalDOMWindow* window = GetDocument().domWindow();
@@ -726,13 +747,12 @@ void HTMLAnchorElement::HandleClick(Event& event) {
@@ -727,13 +748,12 @@ void HTMLAnchorElement::HandleClick(MouseEvent& event) {
return;
}
@@ -383,7 +383,7 @@ diff --git a/third_party/blink/renderer/core/html/html_anchor_element.cc b/third
// We distinguish single/double click with some modifiers.
// See the comment of `EventHandler.delayed_navigation_task_handle_`.
auto task_handle = PostDelayedCancellableTask(
@@ -742,7 +762,9 @@ void HTMLAnchorElement::HandleClick(Event& event) {
@@ -743,7 +763,9 @@ void HTMLAnchorElement::HandleClick(MouseEvent& event) {
frame->GetEventHandler().SetDelayedNavigationTaskHandle(
std::move(task_handle));
} else {
@@ -397,30 +397,24 @@ diff --git a/third_party/blink/renderer/core/html/html_anchor_element.cc b/third
diff --git a/third_party/blink/renderer/core/html/html_anchor_element.h b/third_party/blink/renderer/core/html/html_anchor_element.h
--- a/third_party/blink/renderer/core/html/html_anchor_element.h
+++ b/third_party/blink/renderer/core/html/html_anchor_element.h
@@ -110,6 +110,7 @@ class CORE_EXPORT HTMLAnchorElement : public HTMLElement, public DOMURLUtils {
AtomicString interestAction() const;
@@ -112,6 +112,7 @@ class CORE_EXPORT HTMLAnchorElement : public HTMLElement, public DOMURLUtils {
AtomicString interestAction() const override;
void Trace(Visitor*) const override;
+ void HandleClick(Event&, bool do_not_show_context_menu = false);
+ void HandleClick(MouseEvent&, bool do_not_show_context_menu = false);
protected:
void ParseAttribute(const AttributeModificationParams&) override;
@@ -136,12 +137,16 @@ class CORE_EXPORT HTMLAnchorElement : public HTMLElement, public DOMURLUtils {
bool IsInteractiveContent() const final;
InsertionNotificationRequest InsertedInto(ContainerNode&) override;
void RemovedFrom(ContainerNode&) override;
+ void NavigateToHyperlink2(ResourceRequest,
@@ -143,7 +144,11 @@ class CORE_EXPORT HTMLAnchorElement : public HTMLElement, public DOMURLUtils {
bool is_trusted,
base::TimeTicks platform_time_stamp,
KURL);
- void HandleClick(MouseEvent&);
+ void NavigateToHyperlink2(ResourceRequest,
+ NavigationPolicy,
+ bool is_trusted,
+ base::TimeTicks platform_time_stamp,
+ KURL, Event&, bool do_not_show_context_menu);
void NavigateToHyperlink(ResourceRequest,
NavigationPolicy,
bool is_trusted,
base::TimeTicks platform_time_stamp,
- KURL);
- void HandleClick(Event&);
+ KURL completed_url);
unsigned link_relations_ : 31;
mutable LinkHash cached_visited_link_hash_;
@@ -510,14 +504,15 @@ diff --git a/third_party/blink/renderer/core/page/context_menu_controller.cc b/t
// Displaying the context menu in this function is a big hack as we don't
// have context, i.e. whether this is being invoked via a script or in
// response to user input (Mouse event WM_RBUTTONDOWN,
@@ -476,6 +479,15 @@ bool ContextMenuController::ShowContextMenu(LocalFrame* frame,
@@ -476,6 +479,16 @@ bool ContextMenuController::ShowContextMenu(LocalFrame* frame,
if (!result.InnerNodeOrImageMapImage())
return false;
+ if (!do_not_show_context_menu &&
+ base::FeatureList::IsEnabled(features::kShowAlwaysContextMenuOnLinks)) {
+ if (auto* anchor_element = DynamicTo<HTMLAnchorElement>(result.URLElement())) {
+ Event event;
+ MouseEvent event;
+ event.SetTarget(mouse_event->target());
+ anchor_element->HandleClick(event, /*do_not_show_context_menu*/true);
+ return true;
+ }
@@ -526,7 +521,7 @@ diff --git a/third_party/blink/renderer/core/page/context_menu_controller.cc b/t
// Clear any previously set cached results if we are resetting the hit test
// result.
image_selection_cached_result_ = nullptr;
@@ -830,11 +842,13 @@ bool ContextMenuController::ShowContextMenu(LocalFrame* frame,
@@ -830,11 +843,13 @@ bool ContextMenuController::ShowContextMenu(LocalFrame* frame,
SetAutofillData(result.InnerNode(), data);
SetPasswordManagerData(result.InnerElement(), data);
+7 -7
View File
@@ -24,7 +24,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -154,6 +154,7 @@
@@ -155,6 +155,7 @@
#include "components/send_tab_to_self/features.h"
#include "components/services/heap_profiling/public/cpp/switches.h"
#include "components/services/storage/public/cpp/buckets/bucket_info.h"
@@ -35,7 +35,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
diff --git a/chrome/browser/engagement/important_sites_util.cc b/chrome/browser/engagement/important_sites_util.cc
--- a/chrome/browser/engagement/important_sites_util.cc
+++ b/chrome/browser/engagement/important_sites_util.cc
@@ -32,6 +32,7 @@
@@ -33,6 +33,7 @@
#include "components/prefs/scoped_user_pref_update.h"
#include "components/site_engagement/content/site_engagement_score.h"
#include "components/site_engagement/content/site_engagement_service.h"
@@ -43,7 +43,7 @@ diff --git a/chrome/browser/engagement/important_sites_util.cc b/chrome/browser/
#include "components/site_engagement/core/mojom/site_engagement_details.mojom.h"
#include "components/webapps/browser/banners/app_banner_settings_helper.h"
#include "net/base/registry_controlled_domains/registry_controlled_domain.h"
@@ -387,6 +388,10 @@ void ImportantSitesUtil::RegisterProfilePrefs(
@@ -388,6 +389,10 @@ void ImportantSitesUtil::RegisterProfilePrefs(
// static
std::set<std::string> ImportantSitesUtil::GetInstalledRegisterableDomains(
Profile* profile) {
@@ -54,7 +54,7 @@ diff --git a/chrome/browser/engagement/important_sites_util.cc b/chrome/browser/
std::set<GURL> installed_origins = GetOriginsWithInstalledWebApps(profile);
std::set<std::string> registerable_domains;
@@ -401,6 +406,10 @@ std::vector<ImportantDomainInfo>
@@ -402,6 +407,10 @@ std::vector<ImportantDomainInfo>
ImportantSitesUtil::GetImportantRegisterableDomains(Profile* profile,
size_t max_results) {
SCOPED_UMA_HISTOGRAM_TIMER("Storage.ImportantSites.GenerationTime");
@@ -68,15 +68,15 @@ diff --git a/chrome/browser/engagement/important_sites_util.cc b/chrome/browser/
diff --git a/components/feature_engagement/internal/tracker_impl.cc b/components/feature_engagement/internal/tracker_impl.cc
--- a/components/feature_engagement/internal/tracker_impl.cc
+++ b/components/feature_engagement/internal/tracker_impl.cc
@@ -23,6 +23,7 @@
#include "base/task/single_thread_task_runner.h"
@@ -24,6 +24,7 @@
#include "base/time/clock.h"
#include "build/build_config.h"
#include "build/chromeos_buildflags.h"
+#include "components/site_engagement/core/features.h"
#include "components/feature_engagement/internal/availability_model_impl.h"
#include "components/feature_engagement/internal/blocked_iph_features.h"
#include "components/feature_engagement/internal/chrome_variations_configuration.h"
@@ -211,6 +212,8 @@ TrackerImpl::TrackerImpl(
@@ -212,6 +213,8 @@ TrackerImpl::TrackerImpl(
TrackerImpl::~TrackerImpl() = default;
void TrackerImpl::NotifyEvent(const std::string& event) {
+15 -14
View File
@@ -36,7 +36,7 @@ Enabled by default
.../platform/graphics/bitmap_image_metrics.h | 4 +-
.../renderer/platform/image-decoders/BUILD.gn | 9 +
.../platform/image-decoders/image_decoder.cc | 23 +
.../image-decoders/jxl/jxl_image_decoder.cc | 684 ++++++++++++++++++
.../image-decoders/jxl/jxl_image_decoder.cc | 685 ++++++++++++++++++
.../image-decoders/jxl/jxl_image_decoder.h | 123 ++++
.../jxl/jxl_image_decoder_test.cc | 626 ++++++++++++++++
.../blink/tools/commit_stats/git-dirs.txt | 1 +
@@ -58,7 +58,7 @@ Enabled by default
.../libjxl/gen_headers/jxl/jxl_export.h | 11 +
tools/metrics/histograms/enums.xml | 1 +
.../histograms/metadata/blink/enums.xml | 2 +-
53 files changed, 1996 insertions(+), 17 deletions(-)
53 files changed, 1997 insertions(+), 17 deletions(-)
create mode 100644 build/linux/unbundle/libjxl.gn
create mode 100644 cromite_flags/chrome/browser/about_flags_cc/Add-support-to-jxl.inc
create mode 100644 cromite_flags/third_party/blink/common/features_cc/Add-support-to-jxl.inc
@@ -147,7 +147,7 @@ new file mode 100644
diff --git a/build/linux/unbundle/replace_gn_files.py b/build/linux/unbundle/replace_gn_files.py
--- a/build/linux/unbundle/replace_gn_files.py
+++ b/build/linux/unbundle/replace_gn_files.py
@@ -55,6 +55,7 @@ REPLACEMENTS = {
@@ -56,6 +56,7 @@ REPLACEMENTS = {
'libdrm': 'third_party/libdrm/BUILD.gn',
'libevent': 'third_party/libevent/BUILD.gn',
'libjpeg': 'third_party/libjpeg.gni',
@@ -467,7 +467,7 @@ diff --git a/third_party/blink/common/mime_util/mime_util_unittest.cc b/third_pa
diff --git a/third_party/blink/public/devtools_protocol/browser_protocol.pdl b/third_party/blink/public/devtools_protocol/browser_protocol.pdl
--- a/third_party/blink/public/devtools_protocol/browser_protocol.pdl
+++ b/third_party/blink/public/devtools_protocol/browser_protocol.pdl
@@ -4323,6 +4323,7 @@ domain Emulation
@@ -4346,6 +4346,7 @@ domain Emulation
experimental type DisabledImageType extends string
enum
avif
@@ -478,7 +478,7 @@ diff --git a/third_party/blink/public/devtools_protocol/browser_protocol.pdl b/t
diff --git a/third_party/blink/renderer/core/inspector/inspector_emulation_agent.cc b/third_party/blink/renderer/core/inspector/inspector_emulation_agent.cc
--- a/third_party/blink/renderer/core/inspector/inspector_emulation_agent.cc
+++ b/third_party/blink/renderer/core/inspector/inspector_emulation_agent.cc
@@ -501,10 +501,10 @@ AtomicString InspectorEmulationAgent::OverrideAcceptImageHeader(
@@ -500,10 +500,10 @@ AtomicString InspectorEmulationAgent::OverrideAcceptImageHeader(
String header(network_utils::ImageAcceptHeader());
for (String type : *disabled_image_types) {
// The header string is expected to be like
@@ -492,7 +492,7 @@ diff --git a/third_party/blink/renderer/core/inspector/inspector_emulation_agent
header.Replace(String(type + ","), "");
}
return AtomicString(header);
@@ -849,6 +849,7 @@ protocol::Response InspectorEmulationAgent::setDisabledImageTypes(
@@ -848,6 +848,7 @@ protocol::Response InspectorEmulationAgent::setDisabledImageTypes(
namespace DisabledImageTypeEnum = protocol::Emulation::DisabledImageTypeEnum;
for (protocol::Emulation::DisabledImageType type : *disabled_types) {
if (DisabledImageTypeEnum::Avif == type ||
@@ -608,7 +608,7 @@ diff --git a/third_party/blink/renderer/modules/webcodecs/image_decoder_fuzzer.c
diff --git a/third_party/blink/renderer/platform/BUILD.gn b/third_party/blink/renderer/platform/BUILD.gn
--- a/third_party/blink/renderer/platform/BUILD.gn
+++ b/third_party/blink/renderer/platform/BUILD.gn
@@ -2289,6 +2289,10 @@ source_set("blink_platform_unittests_sources") {
@@ -2327,6 +2327,10 @@ source_set("blink_platform_unittests_sources") {
sources += [ "text/locale_icu_test.cc" ]
}
@@ -619,7 +619,7 @@ diff --git a/third_party/blink/renderer/platform/BUILD.gn b/third_party/blink/re
sources += [ "testing/run_all_tests.cc" ]
configs += [
@@ -2331,6 +2335,7 @@ source_set("blink_platform_unittests_sources") {
@@ -2369,6 +2373,7 @@ source_set("blink_platform_unittests_sources") {
"//third_party/blink/renderer/platform/network:unit_tests",
"//third_party/blink/renderer/platform/scheduler:unit_tests",
"//third_party/blink/renderer/platform/wtf",
@@ -701,8 +701,8 @@ diff --git a/third_party/blink/renderer/platform/image-decoders/image_decoder.cc
#include "base/containers/heap_array.h"
#include "base/logging.h"
+#include "base/feature_list.h"
#include "base/numerics/byte_conversions.h"
#include "base/numerics/safe_conversions.h"
#include "base/sys_byteorder.h"
#include "base/trace_event/trace_event.h"
@@ -31,6 +32,7 @@
#include "media/media_buildflags.h"
@@ -765,7 +765,7 @@ diff --git a/third_party/blink/renderer/platform/image-decoders/jxl/jxl_image_de
new file mode 100644
--- /dev/null
+++ b/third_party/blink/renderer/platform/image-decoders/jxl/jxl_image_decoder.cc
@@ -0,0 +1,684 @@
@@ -0,0 +1,685 @@
+// Copyright 2021 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
@@ -1145,7 +1145,8 @@ new file mode 100644
+ JXL_COLOR_PROFILE_TARGET_DATA,
+ icc_profile.data(), icc_profile.size())) {
+ profile =
+ ColorProfile::Create(icc_profile.data(), icc_profile.size());
+ ColorProfile::Create(
+ base::span(icc_profile.data(), icc_profile.size()));
+ have_data_profile = true;
+
+ // Detect whether the ICC profile approximately equals PQ or HLG,
@@ -2223,7 +2224,7 @@ diff --git a/third_party/blink/tools/commit_stats/git-dirs.txt b/third_party/bli
diff --git a/third_party/blink/web_tests/TestExpectations b/third_party/blink/web_tests/TestExpectations
--- a/third_party/blink/web_tests/TestExpectations
+++ b/third_party/blink/web_tests/TestExpectations
@@ -4636,6 +4636,12 @@ crbug.com/1199522 http/tests/devtools/layers/layers-3d-view-hit-testing.js [ Fai
@@ -4717,6 +4717,12 @@ crbug.com/1199522 http/tests/devtools/layers/layers-3d-view-hit-testing.js [ Fai
# Started failing after rolling new version of check-layout-th.js
css3/flexbox/perpendicular-writing-modes-inside-flex-item.html [ Failure ]
@@ -2239,7 +2240,7 @@ diff --git a/third_party/blink/web_tests/TestExpectations b/third_party/blink/we
diff --git a/third_party/blink/web_tests/VirtualTestSuites b/third_party/blink/web_tests/VirtualTestSuites
--- a/third_party/blink/web_tests/VirtualTestSuites
+++ b/third_party/blink/web_tests/VirtualTestSuites
@@ -102,6 +102,15 @@
@@ -103,6 +103,15 @@
"--disable-threaded-compositing", "--disable-threaded-animation"],
"expires": "Jul 1, 2023"
},
@@ -2654,7 +2655,7 @@ new file mode 100644
diff --git a/tools/metrics/histograms/enums.xml b/tools/metrics/histograms/enums.xml
--- a/tools/metrics/histograms/enums.xml
+++ b/tools/metrics/histograms/enums.xml
@@ -21300,6 +21300,7 @@ from previous Chrome versions.
@@ -21593,6 +21593,7 @@ from previous Chrome versions.
<int value="188610022" label="NewMessageListView:enabled"/>
<int value="189728101" label="FasterLocationReload:disabled"/>
<int value="189777537" label="DisableInitialMostVisitedFadeIn:enabled"/>
+1 -1
View File
@@ -274,7 +274,7 @@ diff --git a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_ba
diff --git a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.h b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.h
--- a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.h
+++ b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.h
@@ -1963,6 +1963,8 @@ class MODULES_EXPORT WebGLRenderingContextBase : public CanvasRenderingContext,
@@ -1978,6 +1978,8 @@ class MODULES_EXPORT WebGLRenderingContextBase : public CanvasRenderingContext,
DOMArrayBufferView* pixels,
int64_t offset);
+2 -2
View File
@@ -219,7 +219,7 @@ diff --git a/third_party/blink/renderer/modules/peerconnection/rtc_rtp_receiver.
#include "third_party/blink/renderer/bindings/core/v8/script_promise_resolver.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_rtc_insertable_streams.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_rtc_rtcp_parameters.h"
@@ -313,6 +315,14 @@ RTCRtpCapabilities* RTCRtpReceiver::getCapabilities(ScriptState* state,
@@ -312,6 +314,14 @@ RTCRtpCapabilities* RTCRtpReceiver::getCapabilities(ScriptState* state,
if (kind != "audio" && kind != "video")
return nullptr;
@@ -246,7 +246,7 @@ diff --git a/third_party/blink/renderer/modules/peerconnection/rtc_rtp_sender.cc
#include "third_party/blink/renderer/bindings/core/v8/script_promise_resolver.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_rtc_encoding_options.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_rtc_insertable_streams.h"
@@ -1073,6 +1075,14 @@ RTCRtpCapabilities* RTCRtpSender::getCapabilities(ScriptState* state,
@@ -1070,6 +1072,14 @@ RTCRtpCapabilities* RTCRtpSender::getCapabilities(ScriptState* state,
if (kind != "audio" && kind != "video")
return nullptr;
@@ -41,7 +41,7 @@ diff --git a/chrome/browser/net/chrome_report_sender.cc b/chrome/browser/net/chr
diff --git a/content/browser/devtools/protocol/network_handler.cc b/content/browser/devtools/protocol/network_handler.cc
--- a/content/browser/devtools/protocol/network_handler.cc
+++ b/content/browser/devtools/protocol/network_handler.cc
@@ -1410,6 +1410,7 @@ String BuildReportStatus(const net::ReportingReport::Status status) {
@@ -1417,6 +1417,7 @@ String BuildReportStatus(const net::ReportingReport::Status status) {
}
}
@@ -49,7 +49,7 @@ diff --git a/content/browser/devtools/protocol/network_handler.cc b/content/brow
std::vector<GURL> ComputeReportingURLs(RenderFrameHostImpl* frame_host) {
std::vector<GURL> urls;
frame_host->ForEachRenderFrameHostWithAction(
@@ -1423,6 +1424,7 @@ std::vector<GURL> ComputeReportingURLs(RenderFrameHostImpl* frame_host) {
@@ -1430,6 +1431,7 @@ std::vector<GURL> ComputeReportingURLs(RenderFrameHostImpl* frame_host) {
});
return urls;
}
@@ -65,19 +65,19 @@ diff --git a/content/browser/network/cross_origin_embedder_policy_reporter.cc b/
#include "content/browser/network/cross_origin_embedder_policy_reporter.h"
+#include "net/base/features.h"
#include "base/strings/string_piece.h"
#include <string_view>
#include "base/values.h"
#include "content/public/browser/storage_partition.h"
@@ -95,8 +96,6 @@ void CrossOriginEmbedderPolicyReporter::Clone(
@@ -96,8 +97,6 @@ void CrossOriginEmbedderPolicyReporter::Clone(
void CrossOriginEmbedderPolicyReporter::QueueAndNotify(
std::initializer_list<std::pair<base::StringPiece, base::StringPiece>> body,
std::initializer_list<std::pair<std::string_view, std::string_view>> body,
bool report_only) {
- const std::optional<std::string>& endpoint =
- report_only ? report_only_endpoint_ : endpoint_;
const char* const disposition = report_only ? "reporting" : "enforce";
if (observer_) {
std::vector<blink::mojom::ReportBodyElementPtr> list;
@@ -111,6 +110,9 @@ void CrossOriginEmbedderPolicyReporter::QueueAndNotify(
@@ -112,6 +111,9 @@ void CrossOriginEmbedderPolicyReporter::QueueAndNotify(
observer_->Notify(blink::mojom::Report::New(
kType, context_url_, blink::mojom::ReportBody::New(std::move(list))));
}
@@ -87,7 +87,7 @@ diff --git a/content/browser/network/cross_origin_embedder_policy_reporter.cc b/
if (endpoint) {
base::Value::Dict body_to_pass;
for (const auto& pair : body) {
@@ -125,6 +127,7 @@ void CrossOriginEmbedderPolicyReporter::QueueAndNotify(
@@ -126,6 +128,7 @@ void CrossOriginEmbedderPolicyReporter::QueueAndNotify(
/*user_agent=*/std::nullopt, std::move(body_to_pass));
}
}
@@ -201,16 +201,16 @@ diff --git a/content/browser/network/reporting_service_proxy.cc b/content/browse
diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc
--- a/content/browser/renderer_host/render_frame_host_impl.cc
+++ b/content/browser/renderer_host/render_frame_host_impl.cc
@@ -13972,12 +13972,6 @@ void RenderFrameHostImpl::MaybeGenerateCrashReport(
base::Value::Dict body;
if (!reason.empty())
body.Set("reason", reason);
@@ -14056,12 +14056,6 @@ void RenderFrameHostImpl::MaybeGenerateCrashReport(
}
}
}
-
- // Send the crash report to the Reporting API.
- GetProcess()->GetStoragePartition()->GetNetworkContext()->QueueReport(
- /*type=*/"crash", /*group=*/"default", last_committed_url_,
- GetReportingSource(), isolation_info_.network_anonymization_key(),
- std::nullopt /* user_agent */, std::move(body));
- /*user_agent=*/std::nullopt, std::move(body));
}
void RenderFrameHostImpl::SendCommitNavigation(
@@ -254,7 +254,7 @@ new file mode 100644
diff --git a/net/base/features.cc b/net/base/features.cc
--- a/net/base/features.cc
+++ b/net/base/features.cc
@@ -218,6 +218,7 @@ extern const base::FeatureParam<base::TimeDelta> kTimeoutTcpConnectAttemptMax(
@@ -222,6 +222,7 @@ extern const base::FeatureParam<base::TimeDelta> kTimeoutTcpConnectAttemptMax(
base::Seconds(30));
#if BUILDFLAG(ENABLE_REPORTING)
@@ -297,7 +297,7 @@ diff --git a/services/network/network_context.h b/services/network/network_conte
diff --git a/services/network/public/mojom/BUILD.gn b/services/network/public/mojom/BUILD.gn
--- a/services/network/public/mojom/BUILD.gn
+++ b/services/network/public/mojom/BUILD.gn
@@ -1453,7 +1453,6 @@ mojom("mojom") {
@@ -1467,7 +1467,6 @@ mojom("mojom") {
export_define_blink = "BLINK_PLATFORM_IMPLEMENTATION=1"
export_header_blink = "third_party/blink/public/platform/web_common.h"
if (enable_reporting) {
@@ -308,7 +308,7 @@ diff --git a/services/network/public/mojom/BUILD.gn b/services/network/public/mo
diff --git a/services/network/public/mojom/network_context.mojom b/services/network/public/mojom/network_context.mojom
--- a/services/network/public/mojom/network_context.mojom
+++ b/services/network/public/mojom/network_context.mojom
@@ -1209,6 +1209,7 @@ interface NetworkContext {
@@ -1221,6 +1221,7 @@ interface NetworkContext {
// provided |network_isolation_key|.
//
// Spec: https://w3c.github.io/reporting/#concept-reports
@@ -316,7 +316,7 @@ diff --git a/services/network/public/mojom/network_context.mojom b/services/netw
QueueReport(string type,
string group,
url.mojom.Url url,
@@ -1222,6 +1223,7 @@ interface NetworkContext {
@@ -1234,6 +1235,7 @@ interface NetworkContext {
// Note that this queued report will never be delivered if no reporting
// endpoint matching is registered for with the provided
// |network_isolation_key|.
@@ -335,7 +335,7 @@ diff --git a/third_party/blink/renderer/core/frame/csp/content_security_policy.c
#include "base/containers/contains.h"
#include "base/debug/dump_without_crashing.h"
#include "base/ranges/algorithm.h"
@@ -1167,6 +1168,7 @@ void ContentSecurityPolicy::ReportViolation(
@@ -1215,6 +1216,7 @@ void ContentSecurityPolicy::ReportViolation(
return;
}
@@ -343,7 +343,7 @@ diff --git a/third_party/blink/renderer/core/frame/csp/content_security_policy.c
PostViolationReport(violation_data, context_frame, report_endpoints,
use_reporting_api);
@@ -1174,6 +1176,7 @@ void ContentSecurityPolicy::ReportViolation(
@@ -1222,6 +1224,7 @@ void ContentSecurityPolicy::ReportViolation(
// `context_frame` (i.e. we're not processing 'frame-ancestors').
if (delegate_ && !context_frame)
delegate_->DispatchViolationEvent(*violation_data, element);
@@ -362,7 +362,7 @@ diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/
#include "services/network/public/cpp/features.h"
#include "services/network/public/mojom/content_security_policy.mojom-blink.h"
#include "services/network/public/mojom/source_location.mojom-blink.h"
@@ -2650,9 +2651,11 @@ void LocalFrame::MainFrameFirstMeaningfulPaint() {
@@ -2656,9 +2657,11 @@ void LocalFrame::MainFrameFirstMeaningfulPaint() {
v8_local_compile_hints_producer_->GenerateData(kIsFinalData);
}
@@ -4,50 +4,37 @@ Subject: Allow building without supervised users
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
chrome/android/BUILD.gn | 1 -
chrome/android/chrome_java_sources.gni | 1 -
.../chrome/browser/feed/FeedSurfaceCoordinator.java | 5 +----
chrome/browser/BUILD.gn | 6 ------
chrome/browser/about_flags.cc | 2 ++
.../browser/extensions/api/settings_private/prefs_util.cc | 2 ++
chrome/browser/profiles/profile_impl.cc | 4 ++++
chrome/browser/profiles/profile_manager.cc | 4 ++++
chrome/browser/ui/webui/managed_ui_handler.cc | 2 ++
chrome/browser/ui/webui/management/management_ui_handler.cc | 2 ++
components/supervised_user/buildflags.gni | 6 +-----
.../core/browser/supervised_user_pref_store.cc | 1 +
.../core/browser/supervised_user_preferences.cc | 2 +-
.../supervised_user/core/browser/supervised_user_utils.cc | 4 ++++
components/supervised_user/core/common/pref_names.h | 4 ++++
.../core/common/supervised_user_constants.cc | 2 ++
16 files changed, 30 insertions(+), 18 deletions(-)
chrome/android/BUILD.gn | 1 -
.../browser/feed/FeedSurfaceCoordinator.java | 5 +----
chrome/browser/BUILD.gn | 2 --
.../prefs/chrome_pref_service_factory.cc | 2 +-
.../profiles/profile_attributes_entry.cc | 2 +-
chrome/browser/profiles/profile_impl.cc | 5 +----
chrome/browser/profiles/profile_manager.cc | 20 -------------------
chrome/browser/ui/webui/managed_ui_handler.cc | 4 ----
.../webui/management/management_ui_handler.cc | 5 -----
.../browser/supervised_user_pref_store.cc | 1 +
.../browser/supervised_user_preferences.cc | 6 +++++-
.../core/browser/supervised_user_service.cc | 1 +
.../core/browser/supervised_user_utils.cc | 1 +
.../supervised_user/core/common/features.cc | 6 ++++++
14 files changed, 18 insertions(+), 43 deletions(-)
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
--- a/chrome/android/BUILD.gn
+++ b/chrome/android/BUILD.gn
@@ -3726,7 +3726,6 @@ generate_jni("chrome_jni_headers") {
"java/src/org/chromium/chrome/browser/status_indicator/StatusIndicatorSceneLayer.java",
"java/src/org/chromium/chrome/browser/suggestions/mostvisited/MostVisitedSites.java",
"java/src/org/chromium/chrome/browser/suggestions/mostvisited/MostVisitedSitesBridge.java",
- "java/src/org/chromium/chrome/browser/supervised_user/ChildAccountService.java",
"java/src/org/chromium/chrome/browser/sync/TrustedVaultClient.java",
"java/src/org/chromium/chrome/browser/tab/TabBrowserControlsConstraintsHelper.java",
"java/src/org/chromium/chrome/browser/tab/TabFavicon.java",
diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni
--- a/chrome/android/chrome_java_sources.gni
+++ b/chrome/android/chrome_java_sources.gni
@@ -1087,7 +1087,6 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/suggestions/tile/TileGroupDelegateImpl.java",
"java/src/org/chromium/chrome/browser/suggestions/tile/TileRenderer.java",
"java/src/org/chromium/chrome/browser/suggestions/tile/TopSitesTileView.java",
- "java/src/org/chromium/chrome/browser/supervised_user/ChildAccountService.java",
"java/src/org/chromium/chrome/browser/survey/ChromeSurveyController.java",
"java/src/org/chromium/chrome/browser/sync/SyncErrorNotifier.java",
"java/src/org/chromium/chrome/browser/sync/TrustedVaultClient.java",
@@ -749,7 +749,6 @@ if (current_toolchain == default_toolchain) {
"//components/dom_distiller/core:distiller_type_java",
"//components/ntp_tiles:ntp_tiles_enums_java",
"//components/offline_pages/core:offline_page_model_enums_java",
- "//components/supervised_user/core/browser:supervised_user_utils_enum_javagen",
"//net:effective_connection_type_java",
]
diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/FeedSurfaceCoordinator.java b/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/FeedSurfaceCoordinator.java
--- a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/FeedSurfaceCoordinator.java
+++ b/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/FeedSurfaceCoordinator.java
@@ -67,7 +67,6 @@ import org.chromium.components.browser_ui.widget.displaystyle.UiConfig;
@@ -68,7 +68,6 @@ import org.chromium.components.browser_ui.widget.displaystyle.UiConfig;
import org.chromium.components.feature_engagement.EventConstants;
import org.chromium.components.feature_engagement.Tracker;
import org.chromium.components.prefs.PrefService;
@@ -55,7 +42,7 @@ diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/
import org.chromium.components.user_prefs.UserPrefs;
import org.chromium.third_party.android.swiperefresh.SwipeRefreshLayout;
import org.chromium.ui.base.DeviceFormFactor;
@@ -759,9 +758,7 @@ public class FeedSurfaceCoordinator
@@ -753,9 +752,7 @@ public class FeedSurfaceCoordinator
* Returns true if the supervised user feed should be displayed.
*/
public boolean shouldDisplaySupervisedFeed() {
@@ -69,7 +56,7 @@ diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -3166,8 +3166,6 @@ static_library("browser") {
@@ -3237,8 +3237,6 @@ static_library("browser") {
"feed/android/refresh_task_scheduler_impl.cc",
"feed/android/refresh_task_scheduler_impl.h",
"feed/android/web_feed_bridge.cc",
@@ -78,156 +65,118 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
"file_select_helper_contacts_android.cc",
"file_select_helper_contacts_android.h",
"first_run/android/first_run_prefs.cc",
@@ -3372,10 +3370,6 @@ static_library("browser") {
"ssl/chrome_security_state_model_delegate.h",
"ssl/known_interception_disclosure_infobar.cc",
"ssl/known_interception_disclosure_infobar.h",
- "supervised_user/android/favicon_fetcher.cc",
- "supervised_user/android/favicon_fetcher.h",
- "supervised_user/android/supervised_user_web_content_handler_impl.cc",
- "supervised_user/android/supervised_user_web_content_handler_impl.h",
"sync/glue/synced_tab_delegate_android.cc",
"sync/glue/synced_tab_delegate_android.h",
"sync/glue/synced_window_delegate_android.cc",
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -7864,6 +7864,7 @@ const FeatureEntry kFeatureEntries[] = {
#endif
diff --git a/chrome/browser/prefs/chrome_pref_service_factory.cc b/chrome/browser/prefs/chrome_pref_service_factory.cc
--- a/chrome/browser/prefs/chrome_pref_service_factory.cc
+++ b/chrome/browser/prefs/chrome_pref_service_factory.cc
@@ -317,7 +317,7 @@ void PrepareFactory(
policy::BrowserPolicyConnector* policy_connector) {
factory->SetManagedPolicies(policy_service, policy_connector);
factory->SetRecommendedPolicies(policy_service, policy_connector);
- if (supervised_user_settings) {
+ if (((false)) && supervised_user_settings) {
scoped_refptr<PrefStore> supervised_user_prefs =
base::MakeRefCounted<SupervisedUserPrefStore>(supervised_user_settings);
DCHECK(async || supervised_user_prefs->IsInitializationComplete());
diff --git a/chrome/browser/profiles/profile_attributes_entry.cc b/chrome/browser/profiles/profile_attributes_entry.cc
--- a/chrome/browser/profiles/profile_attributes_entry.cc
+++ b/chrome/browser/profiles/profile_attributes_entry.cc
@@ -422,7 +422,7 @@ bool ProfileAttributesEntry::IsSigninRequired() const {
}
#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN)
+#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
{"enable-family-link-extensions-permissions",
flag_descriptions::
kEnableExtensionsPermissionsForSupervisedUsersOnDesktopName,
@@ -7873,6 +7874,7 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(
supervised_user::
kEnableExtensionsPermissionsForSupervisedUsersOnDesktop)},
+#endif
#endif
std::string ProfileAttributesEntry::GetSupervisedUserId() const {
- return GetString(kSupervisedUserId);
+ return "";
}
{"notification-scheduler", flag_descriptions::kNotificationSchedulerName,
diff --git a/chrome/browser/extensions/api/settings_private/prefs_util.cc b/chrome/browser/extensions/api/settings_private/prefs_util.cc
--- a/chrome/browser/extensions/api/settings_private/prefs_util.cc
+++ b/chrome/browser/extensions/api/settings_private/prefs_util.cc
@@ -1047,9 +1047,11 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlistedKeys() {
settings_api::PrefType::kBoolean;
#endif
+#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
// Supervised Users. This setting is queried in our Tast tests (b/241943380).
(*s_allowlist)[::prefs::kSupervisedUserExtensionsMayRequestPermissions] =
settings_api::PrefType::kBoolean;
+#endif
#if BUILDFLAG(IS_CHROMEOS_LACROS)
(*s_allowlist)[::prefs::kUseAshProxy] = settings_api::PrefType::kBoolean;
bool ProfileAttributesEntry::IsEphemeral() const {
diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/profile_impl.cc
--- a/chrome/browser/profiles/profile_impl.cc
+++ b/chrome/browser/profiles/profile_impl.cc
@@ -693,10 +693,12 @@ void ProfileImpl::DoFinalInit(CreateMode create_mode) {
@@ -690,10 +690,6 @@ void ProfileImpl::DoFinalInit(CreateMode create_mode) {
prefs->SetTime(prefs::kProfileCreationTime, path_creation_time_);
pref_change_registrar_.Init(prefs);
+#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
pref_change_registrar_.Add(
prefs::kSupervisedUserId,
base::BindRepeating(&ProfileImpl::UpdateSupervisedUserIdInStorage,
base::Unretained(this)));
+#endif
- pref_change_registrar_.Add(
- prefs::kSupervisedUserId,
- base::BindRepeating(&ProfileImpl::UpdateSupervisedUserIdInStorage,
- base::Unretained(this)));
// Changes in the profile avatar.
pref_change_registrar_.Add(
@@ -1638,11 +1640,13 @@ GURL ProfileImpl::GetHomePage() {
@@ -1631,6 +1627,7 @@ GURL ProfileImpl::GetHomePage() {
}
void ProfileImpl::UpdateSupervisedUserIdInStorage() {
+#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
+ if ((true)) return;
ProfileManager* profile_manager = g_browser_process->profile_manager();
ProfileAttributesEntry* entry = profile_manager->GetProfileAttributesStorage()
.GetProfileAttributesWithPath(GetPath());
if (entry)
entry->SetSupervisedUserId(GetPrefs()->GetString(prefs::kSupervisedUserId));
+#endif
}
void ProfileImpl::UpdateNameInStorage() {
diff --git a/chrome/browser/profiles/profile_manager.cc b/chrome/browser/profiles/profile_manager.cc
--- a/chrome/browser/profiles/profile_manager.cc
+++ b/chrome/browser/profiles/profile_manager.cc
@@ -1214,6 +1214,7 @@ void ProfileManager::InitProfileUserPrefs(Profile* profile) {
@@ -1214,23 +1214,6 @@ void ProfileManager::InitProfileUserPrefs(Profile* profile) {
profile->GetPrefs()->SetString(prefs::kProfileName, profile_name);
}
+#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
base::CommandLine* command_line = base::CommandLine::ForCurrentProcess();
bool force_supervised_user_id =
#if BUILDFLAG(IS_CHROMEOS_ASH)
@@ -1231,6 +1232,7 @@ void ProfileManager::InitProfileUserPrefs(Profile* profile) {
profile->GetPrefs()->SetString(prefs::kSupervisedUserId,
supervised_user_id);
}
+#endif
- base::CommandLine* command_line = base::CommandLine::ForCurrentProcess();
- bool force_supervised_user_id =
-#if BUILDFLAG(IS_CHROMEOS_ASH)
- !ash::IsSigninBrowserContext(profile) &&
- !ash::IsLockScreenAppBrowserContext(profile) &&
-#endif
- command_line->HasSwitch(switches::kSupervisedUserId);
-
- if (force_supervised_user_id) {
- supervised_user_id =
- command_line->GetSwitchValueASCII(switches::kSupervisedUserId);
- }
- if (force_supervised_user_id ||
- !profile->GetPrefs()->HasPrefPath(prefs::kSupervisedUserId)) {
- profile->GetPrefs()->SetString(prefs::kSupervisedUserId,
- supervised_user_id);
- }
#if !BUILDFLAG(IS_ANDROID)
if (profile->IsNewProfile()) {
profile->GetPrefs()->SetBoolean(prefs::kHasSeenWelcomePage, false);
@@ -2029,8 +2031,10 @@ void ProfileManager::AddProfileToStorage(Profile* profile) {
@@ -2038,9 +2021,6 @@ void ProfileManager::AddProfileToStorage(Profile* profile) {
init_params.icon_index =
profile->GetPrefs()->GetInteger(prefs::kProfileAvatarIndex);
+#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
init_params.supervised_user_id =
profile->GetPrefs()->GetString(prefs::kSupervisedUserId);
+#endif
- init_params.supervised_user_id =
- profile->GetPrefs()->GetString(prefs::kSupervisedUserId);
-
#if BUILDFLAG(IS_CHROMEOS_ASH)
user_manager::User* user =
ash::ProfileHelper::Get()->GetUserByProfile(profile);
diff --git a/chrome/browser/ui/webui/managed_ui_handler.cc b/chrome/browser/ui/webui/managed_ui_handler.cc
--- a/chrome/browser/ui/webui/managed_ui_handler.cc
+++ b/chrome/browser/ui/webui/managed_ui_handler.cc
@@ -90,9 +90,11 @@ void ManagedUIHandler::AddObservers() {
@@ -89,10 +89,6 @@ void ManagedUIHandler::AddObservers() {
auto domain = static_cast<policy::PolicyDomain>(i);
policy_service->AddObserver(domain, this);
}
+#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
pref_registrar_.Add(prefs::kSupervisedUserId,
base::BindRepeating(&ManagedUIHandler::NotifyIfChanged,
base::Unretained(this)));
+#endif
-
- pref_registrar_.Add(prefs::kSupervisedUserId,
- base::BindRepeating(&ManagedUIHandler::NotifyIfChanged,
- base::Unretained(this)));
}
void ManagedUIHandler::RemoveObservers() {
diff --git a/chrome/browser/ui/webui/management/management_ui_handler.cc b/chrome/browser/ui/webui/management/management_ui_handler.cc
--- a/chrome/browser/ui/webui/management/management_ui_handler.cc
+++ b/chrome/browser/ui/webui/management/management_ui_handler.cc
@@ -1507,10 +1507,12 @@ void ManagementUIHandler::AddObservers() {
@@ -1496,11 +1496,6 @@ void ManagementUIHandler::AddObservers() {
pref_registrar_.Init(profile->GetPrefs());
+#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
pref_registrar_.Add(
prefs::kSupervisedUserId,
base::BindRepeating(&ManagementUIHandler::UpdateManagedState,
base::Unretained(this)));
+#endif
- pref_registrar_.Add(
- prefs::kSupervisedUserId,
- base::BindRepeating(&ManagementUIHandler::UpdateManagedState,
- base::Unretained(this)));
-
#if BUILDFLAG(IS_CHROMEOS_ASH)
pref_registrar_.Add(
diff --git a/components/supervised_user/buildflags.gni b/components/supervised_user/buildflags.gni
--- a/components/supervised_user/buildflags.gni
+++ b/components/supervised_user/buildflags.gni
@@ -4,9 +4,5 @@
declare_args() {
# Enables supervision for Family Link users.
- enable_supervised_users =
- # Platforms which fully support supervision features:
- is_android || is_chromeos ||
- # Platforms for which support is currently in development:
- is_ios || is_linux || is_mac || is_win
+ enable_supervised_users = false
}
plugin_vm::prefs::kPluginVmDataCollectionAllowed,
diff --git a/components/supervised_user/core/browser/supervised_user_pref_store.cc b/components/supervised_user/core/browser/supervised_user_pref_store.cc
--- a/components/supervised_user/core/browser/supervised_user_pref_store.cc
+++ b/components/supervised_user/core/browser/supervised_user_pref_store.cc
@@ -242,7 +191,18 @@ diff --git a/components/supervised_user/core/browser/supervised_user_pref_store.
diff --git a/components/supervised_user/core/browser/supervised_user_preferences.cc b/components/supervised_user/core/browser/supervised_user_preferences.cc
--- a/components/supervised_user/core/browser/supervised_user_preferences.cc
+++ b/components/supervised_user/core/browser/supervised_user_preferences.cc
@@ -187,7 +187,7 @@ bool IsSafeSitesEnabled(const PrefService& pref_service) {
@@ -162,6 +162,10 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) {
}
void EnableParentalControls(PrefService& pref_service) {
+ if ((true)) {
+ DisableParentalControls(pref_service);
+ return;
+ }
pref_service.SetString(prefs::kSupervisedUserId,
supervised_user::kChildAccountSUID);
SetIsChildAccountStatusKnown(pref_service);
@@ -184,7 +188,7 @@ bool IsSafeSitesEnabled(const PrefService& pref_service) {
}
bool IsSubjectToParentalControls(const PrefService& pref_service) {
@@ -251,63 +211,40 @@ diff --git a/components/supervised_user/core/browser/supervised_user_preferences
}
bool AreExtensionsPermissionsEnabled(const PrefService& pref_service) {
diff --git a/components/supervised_user/core/browser/supervised_user_service.cc b/components/supervised_user/core/browser/supervised_user_service.cc
--- a/components/supervised_user/core/browser/supervised_user_service.cc
+++ b/components/supervised_user/core/browser/supervised_user_service.cc
@@ -189,6 +189,7 @@ FirstTimeInterstitialBannerState SupervisedUserService::GetUpdatedBannerState(
}
void SupervisedUserService::SetActive(bool active) {
+ active = false;
if (active_ == active) {
return;
}
diff --git a/components/supervised_user/core/browser/supervised_user_utils.cc b/components/supervised_user/core/browser/supervised_user_utils.cc
--- a/components/supervised_user/core/browser/supervised_user_utils.cc
+++ b/components/supervised_user/core/browser/supervised_user_utils.cc
@@ -97,11 +97,15 @@ GURL NormalizeUrl(const GURL& url) {
@@ -99,6 +99,7 @@ GURL NormalizeUrl(const GURL& url) {
}
bool AreWebFilterPrefsDefault(const PrefService& pref_service) {
+#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
+ if ((true)) return true;
return pref_service
.FindPreference(prefs::kDefaultSupervisedUserFilteringBehavior)
->IsDefaultValue() ||
pref_service.FindPreference(prefs::kSupervisedUserSafeSites)
->IsDefaultValue();
+#else
+ return true;
+#endif
diff --git a/components/supervised_user/core/common/features.cc b/components/supervised_user/core/common/features.cc
--- a/components/supervised_user/core/common/features.cc
+++ b/components/supervised_user/core/common/features.cc
@@ -122,4 +122,10 @@ bool IsShadowKidsApiWithSafeSitesEnabled() {
return base::FeatureList::IsEnabled(kShadowKidsApiWithSafeSites);
}
bool EmitLogRecordHistograms(
diff --git a/components/supervised_user/core/common/pref_names.h b/components/supervised_user/core/common/pref_names.h
--- a/components/supervised_user/core/common/pref_names.h
+++ b/components/supervised_user/core/common/pref_names.h
@@ -5,8 +5,10 @@
#ifndef COMPONENTS_SUPERVISED_USER_CORE_COMMON_PREF_NAMES_H_
#define COMPONENTS_SUPERVISED_USER_CORE_COMMON_PREF_NAMES_H_
+#include "components/supervised_user/core/common/buildflags.h"
#include "extensions/buildflags/buildflags.h"
+#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
namespace prefs {
// A bool pref that keeps whether the child status for this profile was already
@@ -151,4 +153,6 @@ inline constexpr char kSupervisedUserLocallyParentApprovedExtensions[] =
} // namespace prefs
+#endif // BUILDFLAG(ENABLE_SUPERVISED_USERS)
+
#endif // COMPONENTS_SUPERVISED_USER_CORE_COMMON_PREF_NAMES_H_
diff --git a/components/supervised_user/core/common/supervised_user_constants.cc b/components/supervised_user/core/common/supervised_user_constants.cc
--- a/components/supervised_user/core/common/supervised_user_constants.cc
+++ b/components/supervised_user/core/common/supervised_user_constants.cc
@@ -69,6 +69,7 @@ const char kChromeOSAvatarIndex[] = "chromeos-avatar-index";
const char kChromeOSPasswordData[] = "chromeos-password-data";
+#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
const char* const kCustodianInfoPrefs[] = {
prefs::kSupervisedUserCustodianName,
prefs::kSupervisedUserCustodianEmail,
@@ -81,6 +82,7 @@ const char* const kCustodianInfoPrefs[] = {
prefs::kSupervisedUserSecondCustodianProfileURL,
prefs::kSupervisedUserSecondCustodianProfileImageURL,
};
+SET_CROMITE_FEATURE_DISABLED(kKidFriendlyContentFeed);
+SET_CROMITE_FEATURE_DISABLED(kLocalWebApprovals);
+#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN)
+SET_CROMITE_FEATURE_DISABLED(kEnableExtensionsPermissionsForSupervisedUsersOnDesktop);
+#endif
const base::FilePath::CharType kSupervisedUserSettingsFilename[] =
FILE_PATH_LITERAL("Managed Mode Settings");
+
} // namespace supervised_user
--
@@ -95,7 +95,7 @@ diff --git a/third_party/blink/renderer/modules/webaudio/audio_context.cc b/thir
#include "third_party/blink/public/platform/modules/webrtc/webrtc_logging.h"
#include "third_party/blink/public/platform/web_audio_latency_hint.h"
#include "third_party/blink/renderer/bindings/core/v8/script_promise_resolver.h"
@@ -587,7 +588,9 @@ double AudioContext::baseLatency() const {
@@ -582,7 +583,9 @@ double AudioContext::baseLatency() const {
DCHECK(IsMainThread());
DCHECK(destination());
@@ -117,7 +117,7 @@ diff --git a/third_party/blink/renderer/modules/webaudio/base_audio_context.cc b
#include "third_party/blink/public/mojom/devtools/console_message.mojom-blink.h"
#include "third_party/blink/public/mojom/frame/lifecycle.mojom-shared.h"
#include "third_party/blink/public/platform/platform.h"
@@ -722,6 +723,17 @@ LocalDOMWindow* BaseAudioContext::GetWindow() const {
@@ -721,6 +722,17 @@ LocalDOMWindow* BaseAudioContext::GetWindow() const {
return To<LocalDOMWindow>(GetExecutionContext());
}
@@ -150,7 +150,7 @@ diff --git a/third_party/blink/renderer/modules/webaudio/base_audio_context.h b/
diff --git a/third_party/blink/renderer/modules/webaudio/offline_audio_context.cc b/third_party/blink/renderer/modules/webaudio/offline_audio_context.cc
--- a/third_party/blink/renderer/modules/webaudio/offline_audio_context.cc
+++ b/third_party/blink/renderer/modules/webaudio/offline_audio_context.cc
@@ -369,6 +369,7 @@ void OfflineAudioContext::FireCompletionEvent() {
@@ -368,6 +368,7 @@ void OfflineAudioContext::FireCompletionEvent() {
if (!rendered_buffer) {
return;
}
@@ -12,7 +12,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/third_party/blink/renderer/modules/battery/battery_manager.cc b/third_party/blink/renderer/modules/battery/battery_manager.cc
--- a/third_party/blink/renderer/modules/battery/battery_manager.cc
+++ b/third_party/blink/renderer/modules/battery/battery_manager.cc
@@ -80,46 +80,28 @@ ScriptPromiseTyped<BatteryManager> BatteryManager::StartRequest(
@@ -80,46 +80,28 @@ ScriptPromise<BatteryManager> BatteryManager::StartRequest(
}
bool BatteryManager::charging() {
@@ -72,7 +72,7 @@ diff --git a/third_party/blink/renderer/core/loader/base_fetch_context.h b/third
diff --git a/third_party/blink/renderer/core/loader/frame_fetch_context.cc b/third_party/blink/renderer/core/loader/frame_fetch_context.cc
--- a/third_party/blink/renderer/core/loader/frame_fetch_context.cc
+++ b/third_party/blink/renderer/core/loader/frame_fetch_context.cc
@@ -589,6 +589,26 @@ bool FrameFetchContext::ShouldBlockRequestByInspector(const KURL& url) const {
@@ -590,6 +590,26 @@ bool FrameFetchContext::ShouldBlockRequestByInspector(const KURL& url) const {
return should_block_request;
}
@@ -208,7 +208,7 @@ diff --git a/third_party/blink/renderer/modules/background_fetch/background_fetc
scoped_refptr<BlobDataHandle> ExtractBlobHandle(
Request* request,
ExceptionState& exception_state) {
@@ -189,6 +213,13 @@ ScriptPromiseTyped<BackgroundFetchRegistration> BackgroundFetchManager::fetch(
@@ -189,6 +213,13 @@ ScriptPromise<BackgroundFetchRegistration> BackgroundFetchManager::fetch(
exception_state);
}
@@ -240,7 +240,7 @@ diff --git a/third_party/blink/renderer/modules/websockets/websocket_channel_imp
diff --git a/third_party/blink/renderer/modules/websockets/websocket_common.cc b/third_party/blink/renderer/modules/websockets/websocket_common.cc
--- a/third_party/blink/renderer/modules/websockets/websocket_common.cc
+++ b/third_party/blink/renderer/modules/websockets/websocket_common.cc
@@ -125,9 +125,39 @@ WebSocketCommon::ConnectResult WebSocketCommon::Connect(
@@ -136,9 +136,39 @@ WebSocketCommon::ConnectResult WebSocketCommon::Connect(
return ConnectResult::kException;
}
@@ -18,17 +18,16 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
net/url_request/trk_protocol_handler.h | 30 +++++++++++++++++++
net/url_request/url_request.cc | 8 +++++
.../url_request_context_builder.cc | 3 ++
url/url_constants.cc | 1 +
url/url_constants.h | 1 +
url/url_util.cc | 2 ++
14 files changed, 91 insertions(+), 1 deletion(-)
13 files changed, 90 insertions(+), 1 deletion(-)
create mode 100644 net/url_request/trk_protocol_handler.cc
create mode 100644 net/url_request/trk_protocol_handler.h
diff --git a/chrome/browser/autocomplete/chrome_autocomplete_scheme_classifier.cc b/chrome/browser/autocomplete/chrome_autocomplete_scheme_classifier.cc
--- a/chrome/browser/autocomplete/chrome_autocomplete_scheme_classifier.cc
+++ b/chrome/browser/autocomplete/chrome_autocomplete_scheme_classifier.cc
@@ -58,6 +58,7 @@ ChromeAutocompleteSchemeClassifier::GetInputTypeForScheme(
@@ -56,6 +56,7 @@ ChromeAutocompleteSchemeClassifier::GetInputTypeForScheme(
if (base::IsStringASCII(scheme) &&
(ProfileIOData::IsHandledProtocol(scheme) ||
base::EqualsCaseInsensitiveASCII(scheme, content::kViewSourceScheme) ||
@@ -108,7 +107,7 @@ diff --git a/components/url_formatter/url_fixer.cc b/components/url_formatter/ur
diff --git a/content/browser/child_process_security_policy_impl.cc b/content/browser/child_process_security_policy_impl.cc
--- a/content/browser/child_process_security_policy_impl.cc
+++ b/content/browser/child_process_security_policy_impl.cc
@@ -848,6 +848,7 @@ ChildProcessSecurityPolicyImpl::ChildProcessSecurityPolicyImpl()
@@ -837,6 +837,7 @@ ChildProcessSecurityPolicyImpl::ChildProcessSecurityPolicyImpl()
RegisterPseudoScheme(url::kJavaScriptScheme);
RegisterPseudoScheme(kViewSourceScheme);
RegisterPseudoScheme(kGoogleChromeScheme);
@@ -119,7 +118,7 @@ diff --git a/content/browser/child_process_security_policy_impl.cc b/content/bro
diff --git a/net/BUILD.gn b/net/BUILD.gn
--- a/net/BUILD.gn
+++ b/net/BUILD.gn
@@ -1004,6 +1004,8 @@ component("net") {
@@ -1012,6 +1012,8 @@ component("net") {
"url_request/url_request_http_job.cc",
"url_request/url_request_http_job.h",
"url_request/url_request_interceptor.cc",
@@ -236,7 +235,7 @@ diff --git a/net/url_request/url_request_context_builder.cc b/net/url_request/ur
#include "net/url_request/url_request_context.h"
#include "net/url_request/url_request_job_factory.h"
#include "url/url_constants.h"
@@ -559,6 +560,8 @@ std::unique_ptr<URLRequestContext> URLRequestContextBuilder::Build() {
@@ -575,6 +576,8 @@ std::unique_ptr<URLRequestContext> URLRequestContextBuilder::Build() {
job_factory->SetProtocolHandler(scheme_handler.first,
std::move(scheme_handler.second));
}
@@ -245,17 +244,6 @@ diff --git a/net/url_request/url_request_context_builder.cc b/net/url_request/ur
protocol_handlers_.clear();
context->set_job_factory(std::move(job_factory));
diff --git a/url/url_constants.cc b/url/url_constants.cc
--- a/url/url_constants.cc
+++ b/url/url_constants.cc
@@ -29,6 +29,7 @@ const char16_t kDataScheme16[] = u"data";
const char kFileScheme[] = "file";
const char16_t kFileScheme16[] = u"file";
const char kFileSystemScheme[] = "filesystem";
+const char kTraceScheme[] = "trk";
const char16_t kFileSystemScheme16[] = u"filesystem";
const char kFtpScheme[] = "ftp";
const char16_t kFtpScheme16[] = u"ftp";
diff --git a/url/url_constants.h b/url/url_constants.h
--- a/url/url_constants.h
+++ b/url/url_constants.h
@@ -93,7 +93,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -248,6 +248,9 @@ CHAR_LIMIT guidelines:
@@ -253,6 +253,9 @@ CHAR_LIMIT guidelines:
<message name="IDS_NOTIFICATION_CATEGORY_SITES" desc="Label for notifications from websites, within a list of notification categories. [CHAR_LIMIT=32]">
Sites
</message>
+58 -145
View File
@@ -21,12 +21,12 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../inline/BromiteInlineUpdateController.java | 273 ++++++++++++++++++
.../omaha/inline/InlineUpdateController.java | 51 ++++
.../inline/InlineUpdateControllerFactory.java | 21 ++
chrome/browser/BUILD.gn | 2 +
chrome/browser/BUILD.gn | 6 +
chrome/browser/endpoint_fetcher/BUILD.gn | 32 ++
chrome/browser/endpoint_fetcher/DEPS | 3 +
chrome/browser/endpoint_fetcher/OWNERS | 1 +
.../endpoint_fetcher_android.cc | 184 ++++++++++++
.../endpoint_fetcher/EndpointFetcher.java | 165 +++++++++++
.../endpoint_fetcher_android.cc | 149 ++++++++++
.../endpoint_fetcher/EndpointFetcher.java | 116 ++++++++
.../EndpointHeaderResponse.java | 31 ++
.../endpoint_fetcher/EndpointResponse.java | 30 ++
.../flags/android/chrome_feature_list.cc | 1 +
@@ -36,7 +36,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../endpoint_fetcher/endpoint_fetcher.h | 23 +-
.../Bromite-auto-updater.inc | 3 +
.../Bromite-auto-updater.inc | 1 +
28 files changed, 1269 insertions(+), 52 deletions(-)
28 files changed, 1189 insertions(+), 52 deletions(-)
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/BromiteInlineUpdateController.java
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/InlineUpdateController.java
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/InlineUpdateControllerFactory.java
@@ -53,7 +53,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/build/android/java/templates/BuildConfig.template b/build/android/java/templates/BuildConfig.template
--- a/build/android/java/templates/BuildConfig.template
+++ b/build/android/java/templates/BuildConfig.template
@@ -87,6 +87,8 @@ public class BuildConfig {
@@ -94,6 +94,8 @@ public class BuildConfig {
public static MAYBE_FINAL boolean IS_FOR_TEST MAYBE_FALSE;
#endif
@@ -65,7 +65,7 @@ diff --git a/build/android/java/templates/BuildConfig.template b/build/android/j
diff --git a/build/config/android/rules.gni b/build/config/android/rules.gni
--- a/build/config/android/rules.gni
+++ b/build/config/android/rules.gni
@@ -1905,6 +1905,9 @@ if (enable_java_templates && is_android) {
@@ -1901,6 +1901,9 @@ if (is_robolectric) {
sources = [ "//build/android/java/templates/BuildConfig.template" ]
defines = []
@@ -1114,22 +1114,19 @@ new file mode 100644
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -3116,6 +3116,7 @@ static_library("browser") {
"download/android/service/download_task_scheduler.h",
"download/android/string_utils.cc",
"download/download_crx_util_android.cc",
@@ -2761,6 +2761,12 @@ static_library("browser") {
}
if (is_android) {
+ sources += [
+ "endpoint_fetcher/endpoint_fetcher_android.cc",
"enterprise/reporting/browser_report_generator_android.cc",
"enterprise/reporting/browser_report_generator_android.h",
"enterprise/reporting/profile_report_generator_android.cc",
@@ -3451,6 +3452,7 @@ static_library("browser") {
"//chrome/browser/content_extraction/android:jni_headers",
"//chrome/browser/device_reauth/android:jni_headers",
"//chrome/browser/download/internal/android",
+ ]
+ deps += [
+ "//chrome/browser/endpoint_fetcher:jni_headers",
"//chrome/browser/feed/android:jni_headers",
"//chrome/browser/feedback/android",
"//chrome/browser/feedback/android:jni_headers",
+ ]
sources += [
"accessibility/accessibility_prefs/android/accessibility_prefs_controller.cc",
"accessibility/accessibility_prefs/android/accessibility_prefs_controller.h",
diff --git a/chrome/browser/endpoint_fetcher/BUILD.gn b/chrome/browser/endpoint_fetcher/BUILD.gn
new file mode 100644
--- /dev/null
@@ -1185,7 +1182,7 @@ diff --git a/chrome/browser/endpoint_fetcher/endpoint_fetcher_android.cc b/chrom
new file mode 100644
--- /dev/null
+++ b/chrome/browser/endpoint_fetcher/endpoint_fetcher_android.cc
@@ -0,0 +1,184 @@
@@ -0,0 +1,149 @@
+// Copyright 2019 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
@@ -1282,41 +1279,6 @@ new file mode 100644
+ std::move(endpoint_fetcher)));
+}
+
+static void JNI_EndpointFetcher_NativeFetchChromeAPIKey(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& jprofile,
+ const base::android::JavaParamRef<jstring>& jurl,
+ const base::android::JavaParamRef<jstring>& jhttps_method,
+ const base::android::JavaParamRef<jstring>& jcontent_type,
+ const base::android::JavaParamRef<jstring>& jpost_data,
+ jlong jtimeout,
+ const base::android::JavaParamRef<jobjectArray>& jheaders,
+ jint jannotation_hash_code,
+ const base::android::JavaParamRef<jobject>& jcallback) {
+ std::vector<std::string> headers;
+ base::android::AppendJavaStringArrayToStringVector(env, jheaders, &headers);
+ auto endpoint_fetcher = std::make_unique<EndpointFetcher>(
+ ProfileAndroid::FromProfileAndroid(jprofile)
+ ->GetDefaultStoragePartition()
+ ->GetURLLoaderFactoryForBrowserProcess(),
+ GURL(base::android::ConvertJavaStringToUTF8(env, jurl)),
+ base::android::ConvertJavaStringToUTF8(env, jhttps_method),
+ base::android::ConvertJavaStringToUTF8(env, jcontent_type),
+ base::Milliseconds(jtimeout),
+ base::android::ConvertJavaStringToUTF8(env, jpost_data), headers,
+ net::NetworkTrafficAnnotationTag::FromJavaAnnotation(
+ jannotation_hash_code),
+ chrome::GetChannel() == version_info::Channel::STABLE);
+ auto* const endpoint_fetcher_ptr = endpoint_fetcher.get();
+ endpoint_fetcher_ptr->PerformRequest(
+ base::BindOnce(&OnEndpointFetcherComplete,
+ base::android::ScopedJavaGlobalRef<jobject>(jcallback),
+ // unique_ptr endpoint_fetcher is passed until the callback
+ // to ensure its lifetime across the request.
+ std::move(endpoint_fetcher)),
+ nullptr);
+}
+
+static void JNI_EndpointFetcher_NativeFetchWithNoAuth(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& jprofile,
@@ -1374,7 +1336,7 @@ diff --git a/chrome/browser/endpoint_fetcher/java/src/org/chromium/chrome/browse
new file mode 100644
--- /dev/null
+++ b/chrome/browser/endpoint_fetcher/java/src/org/chromium/chrome/browser/endpoint_fetcher/EndpointFetcher.java
@@ -0,0 +1,165 @@
@@ -0,0 +1,116 @@
+// Copyright 2019 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
@@ -1443,44 +1405,6 @@ new file mode 100644
+ callback);
+ }
+
+ /**
+ * Calls an endpoint using Chrome API Key returns the response via a callback
+ * @param callback to pass the response back in
+ * @param profile via which the endpoint is called
+ * @param url endpoint URL called
+ * @param httpsMethod the HTTPS method used e.g. "GET" or "POST"
+ * @param contentType the content type e.g. "application/json"
+ * @param postData data for a "POST" request
+ * @param timeout time after which the request will terminate in the event a response hasn't
+ * been received
+ * @param headers headers for the request. Key/value pairs are stored sequentially in the array.
+ */
+ @MainThread
+ public static void fetchUsingChromeAPIKey(
+ Callback<EndpointResponse> callback,
+ Profile profile,
+ String url,
+ String httpsMethod,
+ String contentType,
+ String postData,
+ long timeout,
+ String[] headers,
+ NetworkTrafficAnnotationTag annotation) {
+ // EndpointFetcher currently does not support incognito mode
+ // assert !profile.isOffTheRecord();
+ EndpointFetcherJni.get()
+ .nativeFetchChromeAPIKey(
+ profile,
+ url,
+ httpsMethod,
+ contentType,
+ postData,
+ timeout,
+ headers,
+ annotation.getHashCode(),
+ callback);
+ }
+
+ @MainThread
+ public static void nativeHeadWithNoAuth(
+ Callback<EndpointHeaderResponse> callback, Profile profile,
@@ -1513,17 +1437,6 @@ new file mode 100644
+ int annotationHashCode,
+ Callback<EndpointResponse> callback);
+
+ void nativeFetchChromeAPIKey(
+ Profile profile,
+ String url,
+ String httpsMethod,
+ String contentType,
+ String postData,
+ long timeout,
+ String[] headers,
+ int annotationHashCode,
+ Callback<EndpointResponse> callback);
+
+ void nativeFetchWithNoAuth(
+ Profile profile,
+ String url,
@@ -1614,7 +1527,7 @@ new file mode 100644
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc
--- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -237,6 +237,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
@@ -241,6 +241,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
&kPreconnectOnTabCreation,
&kPriceChangeModule,
&kPwaRestoreUi,
@@ -1625,10 +1538,10 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
--- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
@@ -311,6 +311,7 @@ public abstract class ChromeFeatureList {
@@ -319,6 +319,7 @@ public abstract class ChromeFeatureList {
public static final String INCOGNITO_REAUTHENTICATION_FOR_ANDROID =
"IncognitoReauthenticationForAndroid";
public static final String INCOGNITO_SCREENSHOT = "IncognitoScreenshot";
public static final String INSTANT_START = "InstantStart";
+ public static final String INLINE_UPDATE_FLOW = "InlineUpdateFlow";
public static final String INTEREST_FEED_V2_HEARTS = "InterestFeedV2Hearts";
public static final String IP_PROTECTION_UX = "IpProtectionUx";
@@ -1636,7 +1549,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -2090,6 +2090,12 @@ Your Google account may have other forms of browsing history like searches and a
@@ -2104,6 +2104,12 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_DEPRECATION_WARNING" desc="Warning about Chrome updates no longer being supported">
Chrome updates are no longer supported for this version of Android
</message>
@@ -1649,7 +1562,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
<!-- Account management UI strings. -->
<message name="IDS_ACCOUNT_MANAGEMENT_TITLE" desc="Header title for the account management screen. [CHAR_LIMIT=32]">
@@ -3784,7 +3790,10 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>clear the Chrome da
@@ -3833,7 +3839,10 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>clear the Chrome da
<!-- Main menu items -->
<message name="IDS_MENU_UPDATE" desc="Menu item for updating chrome. [CHAR_LIMIT=24]">
@@ -1661,7 +1574,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
</message>
<message name="IDS_MENU_UPDATE_SUMMARY_DEFAULT" desc="Summary string for update menu item explaining that a newer version of Chrome is available. [CHAR_LIMIT=30]">
Newer version is available
@@ -3795,6 +3804,18 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>clear the Chrome da
@@ -3844,6 +3853,18 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>clear the Chrome da
<message name="IDS_MENU_UPDATE_UNSUPPORTED_SUMMARY_DEFAULT" desc="Summary string for update menu item explaining that the Android version on the device is unsupported. [CHAR_LIMIT=30]">
Android version is unsupported
</message>
@@ -1695,31 +1608,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.cc b/components/endpoi
namespace {
const char kContentTypeKey[] = "Content-Type";
const char kDeveloperKey[] = "X-Developer-Key";
@@ -65,6 +70,7 @@ EndpointFetcher::EndpointFetcher(
http_method_(http_method),
content_type_(content_type),
timeout_(timeout),
+ intercept_redirect_(false),
post_data_(post_data),
headers_(headers),
annotation_tag_(annotation_tag),
@@ -83,6 +89,7 @@ EndpointFetcher::EndpointFetcher(
http_method_("GET"),
content_type_(std::string()),
timeout_(base::Milliseconds(0)),
+ intercept_redirect_(false),
post_data_(std::string()),
annotation_tag_(annotation_tag),
url_loader_factory_(url_loader_factory),
@@ -108,6 +115,7 @@ EndpointFetcher::EndpointFetcher(
http_method_(http_method),
content_type_(content_type),
timeout_(timeout),
+ intercept_redirect_(false),
post_data_(post_data),
annotation_tag_(annotation_tag),
url_loader_factory_(url_loader_factory),
@@ -135,6 +143,7 @@ EndpointFetcher::EndpointFetcher(
@@ -66,6 +71,7 @@ EndpointFetcher::EndpointFetcher(
http_method_(http_method),
content_type_(content_type),
timeout_(timeout),
@@ -1727,7 +1616,31 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.cc b/components/endpoi
post_data_(post_data),
headers_(headers),
cors_exempt_headers_(cors_exempt_headers),
@@ -147,11 +156,29 @@ EndpointFetcher::EndpointFetcher(
@@ -85,6 +91,7 @@ EndpointFetcher::EndpointFetcher(
http_method_("GET"),
content_type_(std::string()),
timeout_(base::Milliseconds(0)),
+ intercept_redirect_(false),
post_data_(std::string()),
annotation_tag_(annotation_tag),
url_loader_factory_(url_loader_factory),
@@ -110,6 +117,7 @@ EndpointFetcher::EndpointFetcher(
http_method_(http_method),
content_type_(content_type),
timeout_(timeout),
+ intercept_redirect_(false),
post_data_(post_data),
annotation_tag_(annotation_tag),
url_loader_factory_(url_loader_factory),
@@ -137,6 +145,7 @@ EndpointFetcher::EndpointFetcher(
http_method_(http_method),
content_type_(content_type),
timeout_(timeout),
+ intercept_redirect_(false),
post_data_(post_data),
headers_(headers),
cors_exempt_headers_(cors_exempt_headers),
@@ -149,11 +158,29 @@ EndpointFetcher::EndpointFetcher(
EndpointFetcher::EndpointFetcher(
const net::NetworkTrafficAnnotationTag& annotation_tag)
: timeout_(kDefaultTimeOut),
@@ -1757,7 +1670,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.cc b/components/endpoi
EndpointFetcher::~EndpointFetcher() = default;
void EndpointFetcher::Fetch(EndpointFetcherCallback endpoint_fetcher_callback) {
@@ -210,6 +237,8 @@ void EndpointFetcher::PerformRequest(
@@ -212,6 +239,8 @@ void EndpointFetcher::PerformRequest(
resource_request->method = http_method_;
resource_request->url = url_;
resource_request->credentials_mode = network::mojom::CredentialsMode::kOmit;
@@ -1766,7 +1679,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.cc b/components/endpoi
if (base::EqualsCaseInsensitiveASCII(http_method_, "POST")) {
resource_request->headers.SetHeader(kContentTypeKey, content_type_);
}
@@ -240,25 +269,50 @@ void EndpointFetcher::PerformRequest(
@@ -242,25 +271,50 @@ void EndpointFetcher::PerformRequest(
default:
break;
}
@@ -1823,7 +1736,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.cc b/components/endpoi
}
void EndpointFetcher::OnResponseFetched(
@@ -339,3 +393,38 @@ void EndpointFetcher::OnSanitizationResult(
@@ -341,3 +395,38 @@ void EndpointFetcher::OnSanitizationResult(
std::string EndpointFetcher::GetUrlForTesting() {
return url_.spec();
}
@@ -1883,7 +1796,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.h b/components/endpoin
int http_status_code{-1};
std::optional<FetchErrorType> error_type;
};
@@ -96,6 +100,14 @@ class EndpointFetcher {
@@ -99,6 +103,14 @@ class EndpointFetcher {
const GURL& url,
const net::NetworkTrafficAnnotationTag& annotation_tag);
@@ -1898,7 +1811,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.h b/components/endpoin
// Used for tests. Can be used if caller constructs their own
// url_loader_factory and identity_manager.
EndpointFetcher(
@@ -151,6 +163,11 @@ class EndpointFetcher {
@@ -154,6 +166,11 @@ class EndpointFetcher {
void OnSanitizationResult(std::unique_ptr<EndpointResponse> response,
EndpointFetcherCallback endpoint_fetcher_callback,
data_decoder::JsonSanitizer::Result result);
@@ -1910,7 +1823,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.h b/components/endpoin
enum AuthType { CHROME_API_KEY, OAUTH, NO_AUTH };
AuthType auth_type_;
@@ -158,10 +175,11 @@ class EndpointFetcher {
@@ -161,10 +178,11 @@ class EndpointFetcher {
// Members set in constructor to be passed to network::ResourceRequest or
// network::SimpleURLLoader.
const std::string oauth_consumer_name_;
@@ -1923,7 +1836,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.h b/components/endpoin
const std::string post_data_;
const std::vector<std::string> headers_;
const std::vector<std::string> cors_exempt_headers_;
@@ -185,6 +203,9 @@ class EndpointFetcher {
@@ -188,6 +206,9 @@ class EndpointFetcher {
access_token_fetcher_;
std::unique_ptr<network::SimpleURLLoader> simple_url_loader_;
@@ -29,7 +29,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
chrome/browser/browser_process_impl.cc | 21 ++
chrome/browser/browser_process_impl.h | 2 +
chrome/browser/chrome_browser_main.cc | 3 +
chrome/browser/flags/BUILD.gn | 4 +
chrome/browser/flags/BUILD.gn | 3 +
.../flags/android/adblock_native_gateway.cc | 31 ++
.../browser/flags/AdBlockNativeGateway.java | 30 ++
.../net/system_network_context_manager.cc | 8 +
@@ -44,15 +44,15 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../component_updater/download_filters_task.h | 129 ++++++++
...ent_subresource_filter_throttle_manager.cc | 15 +
...tent_subresource_filter_throttle_manager.h | 2 +
.../content/browser/ruleset_service.cc | 42 ++-
.../content/browser/ruleset_service.h | 7 +-
.../content/shared/browser/ruleset_service.cc | 46 ++-
.../content/shared/browser/ruleset_service.h | 8 +-
.../unindexed_ruleset_stream_generator.cc | 3 +
.../core/browser/ruleset_version.h | 4 +
.../browser/subresource_filter_features.cc | 116 +-------
.../core/browser/verified_ruleset_dealer.cc | 3 +
.../core/common/indexed_ruleset.cc | 5 +-
.../Bromite-subresource-adblocker.inc | 3 +
40 files changed, 1254 insertions(+), 127 deletions(-)
40 files changed, 1259 insertions(+), 126 deletions(-)
create mode 100644 chrome/android/java/res/layout/adblock_editor.xml
create mode 100644 chrome/android/java/res/xml/adblock_preferences.xml
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/settings/AdBlockEditor.java
@@ -68,7 +68,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
--- a/chrome/android/BUILD.gn
+++ b/chrome/android/BUILD.gn
@@ -334,6 +334,7 @@ if (current_toolchain == default_toolchain) {
@@ -338,6 +338,7 @@ if (current_toolchain == default_toolchain) {
"//chrome/android/modules/cablev2_authenticator/public:java",
"//chrome/android/modules/stack_unwinder/provider:java",
"//chrome/android/webapk/libs/client:client_java",
@@ -79,7 +79,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_java_resources.gni
--- a/chrome/android/chrome_java_resources.gni
+++ b/chrome/android/chrome_java_resources.gni
@@ -431,6 +431,7 @@ chrome_java_resources = [
@@ -427,6 +427,7 @@ chrome_java_resources = [
"java/res/layout/account_chooser_dialog_title.xml",
"java/res/layout/account_divider_preference.xml",
"java/res/layout/account_management_account_row.xml",
@@ -87,7 +87,7 @@ diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_ja
"java/res/layout/auto_sign_in_first_run_dialog.xml",
"java/res/layout/autofill_billing_address_dropdown.xml",
"java/res/layout/autofill_card_name_and_number.xml",
@@ -634,6 +635,7 @@ chrome_java_resources = [
@@ -630,6 +631,7 @@ chrome_java_resources = [
"java/res/xml/about_chrome_preferences.xml",
"java/res/xml/account_management_preferences.xml",
"java/res/xml/ad_services_config.xml",
@@ -210,7 +210,7 @@ diff --git a/chrome/android/java/res/values/styles.xml b/chrome/android/java/res
diff --git a/chrome/android/java/res/values/values.xml b/chrome/android/java/res/values/values.xml
--- a/chrome/android/java/res/values/values.xml
+++ b/chrome/android/java/res/values/values.xml
@@ -25,6 +25,10 @@ found in the LICENSE file.
@@ -19,6 +19,10 @@ found in the LICENSE file.
<!-- Compositor Tab Title Text -->
<bool name="compositor_tab_title_fake_bold_text">true</bool>
@@ -428,7 +428,7 @@ new file mode 100644
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelImpl.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelImpl.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelImpl.java
@@ -839,7 +839,7 @@ public class TabModelImpl extends TabModelJniBridge {
@@ -862,7 +862,7 @@ public class TabModelImpl extends TabModelJniBridge {
protected boolean createTabWithWebContents(
Tab parent, Profile profile, WebContents webContents) {
return getTabCreator(profile.isOffTheRecord())
@@ -440,7 +440,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabMod
diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources.grd
--- a/chrome/app/generated_resources.grd
+++ b/chrome/app/generated_resources.grd
@@ -15085,6 +15085,16 @@ Please help our engineers fix this problem. Tell us what happened right before y
@@ -15173,6 +15173,16 @@ Please help our engineers fix this problem. Tell us what happened right before y
Never show this again.
</message>
@@ -500,7 +500,7 @@ diff --git a/chrome/browser/browser_process.h b/chrome/browser/browser_process.h
namespace extensions {
class EventRouterForwarder;
}
@@ -245,6 +250,7 @@ class BrowserProcess {
@@ -253,6 +258,7 @@ class BrowserProcess {
#endif
virtual component_updater::ComponentUpdateService* component_updater() = 0;
@@ -511,7 +511,7 @@ diff --git a/chrome/browser/browser_process.h b/chrome/browser/browser_process.h
diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_process_impl.cc
--- a/chrome/browser/browser_process_impl.cc
+++ b/chrome/browser/browser_process_impl.cc
@@ -1168,6 +1168,27 @@ BrowserProcessImpl::component_updater() {
@@ -1183,6 +1183,27 @@ BrowserProcessImpl::component_updater() {
return component_updater_.get();
}
@@ -542,7 +542,7 @@ diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_pro
diff --git a/chrome/browser/browser_process_impl.h b/chrome/browser/browser_process_impl.h
--- a/chrome/browser/browser_process_impl.h
+++ b/chrome/browser/browser_process_impl.h
@@ -209,6 +209,7 @@ class BrowserProcessImpl : public BrowserProcess,
@@ -212,6 +212,7 @@ class BrowserProcessImpl : public BrowserProcess,
#endif
component_updater::ComponentUpdateService* component_updater() override;
@@ -550,13 +550,13 @@ diff --git a/chrome/browser/browser_process_impl.h b/chrome/browser/browser_proc
MediaFileSystemRegistry* media_file_system_registry() override;
WebRtcLogUploader* webrtc_log_uploader() override;
network_time::NetworkTimeTracker* network_time_tracker() override;
@@ -405,6 +406,7 @@ class BrowserProcessImpl : public BrowserProcess,
@@ -413,6 +414,7 @@ class BrowserProcessImpl : public BrowserProcess,
// to concerns over integrity of data shared between profiles,
// but some users of component updater only install per-user.
std::unique_ptr<component_updater::ComponentUpdateService> component_updater_;
+ std::unique_ptr<adblock_updater::AdBlockUpdaterService> adblock_updater_;
#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS)
#if !BUILDFLAG(IS_ANDROID)
// Used to create a singleton instance of SodaInstallerImpl, which can be
diff --git a/chrome/browser/chrome_browser_main.cc b/chrome/browser/chrome_browser_main.cc
--- a/chrome/browser/chrome_browser_main.cc
@@ -598,14 +598,6 @@ diff --git a/chrome/browser/flags/BUILD.gn b/chrome/browser/flags/BUILD.gn
deps = [
":jni_headers",
"//base",
@@ -71,6 +74,7 @@ robolectric_library("flags_junit_tests") {
"android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlagsAnnotationUnitTest.java",
"android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureListWithProcessorUnitTest.java",
"android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureListWithoutProcessorUnitTest.java",
+ "android/java/src/org/chromium/chrome/browser/flags/AdBlockNativeGateway.java",
]
deps = [
":java",
diff --git a/chrome/browser/flags/android/adblock_native_gateway.cc b/chrome/browser/flags/android/adblock_native_gateway.cc
new file mode 100755
--- /dev/null
@@ -714,8 +706,8 @@ diff --git a/chrome/browser/sessions/session_restore_android.cc b/chrome/browser
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -220,6 +220,20 @@ CHAR_LIMIT guidelines:
Advanced
@@ -225,6 +225,20 @@ CHAR_LIMIT guidelines:
Control your data &amp; accounts
</message>
+ <!-- AdBlock settings -->
@@ -738,7 +730,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h
--- a/chrome/common/pref_names.h
+++ b/chrome/common/pref_names.h
@@ -2657,6 +2657,11 @@ inline constexpr char kAudioCaptureAllowed[] = "hardware.audio_capture_enabled";
@@ -2688,6 +2688,11 @@ inline constexpr char kAudioCaptureAllowed[] = "hardware.audio_capture_enabled";
inline constexpr char kAudioCaptureAllowedUrls[] =
"hardware.audio_capture_allowed_urls";
@@ -753,7 +745,7 @@ diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h
diff --git a/components/browser_ui/strings/android/site_settings.grdp b/components/browser_ui/strings/android/site_settings.grdp
--- a/components/browser_ui/strings/android/site_settings.grdp
+++ b/components/browser_ui/strings/android/site_settings.grdp
@@ -359,6 +359,9 @@
@@ -368,6 +368,9 @@
<message name="IDS_INTRUSIVE_ADS_INFORMATION" desc="The extra information at the top of the Site Details page when the site tends to show intrusive ads">
This site shows intrusive or misleading ads
</message>
@@ -1111,7 +1103,7 @@ new file mode 100644
+#include "components/component_updater/update_scheduler.h"
+#include "url/gurl.h"
+#include "components/component_updater/download_filters_task.h"
+#include "components/subresource_filter/content/browser/ruleset_service.h"
+#include "components/subresource_filter/content/shared/browser/ruleset_service.h"
+#include "services/network/public/cpp/shared_url_loader_factory.h"
+
+namespace adblock_updater {
@@ -1562,17 +1554,17 @@ new file mode 100644
diff --git a/components/subresource_filter/content/browser/content_subresource_filter_throttle_manager.cc b/components/subresource_filter/content/browser/content_subresource_filter_throttle_manager.cc
--- a/components/subresource_filter/content/browser/content_subresource_filter_throttle_manager.cc
+++ b/components/subresource_filter/content/browser/content_subresource_filter_throttle_manager.cc
@@ -14,6 +14,9 @@
#include "base/metrics/histogram_macros.h"
@@ -15,6 +15,9 @@
#include "base/strings/stringprintf.h"
#include "base/trace_event/trace_event.h"
#include "base/trace_event/traced_value.h"
+#include "components/content_settings/core/common/content_settings_types.h"
+#include "components/subresource_filter/content/browser/subresource_filter_content_settings_manager.h"
+#include "components/subresource_filter/content/browser/subresource_filter_profile_context.h"
#include "components/subresource_filter/content/browser/activation_state_computing_navigation_throttle.h"
#include "components/subresource_filter/content/browser/async_document_subresource_filter.h"
#include "components/subresource_filter/content/browser/ad_tagging_utils.h"
#include "components/subresource_filter/content/browser/content_subresource_filter_web_contents_helper.h"
@@ -148,6 +151,7 @@ ContentSubresourceFilterThrottleManager::
#include "components/subresource_filter/content/browser/page_load_statistics.h"
@@ -151,6 +154,7 @@ ContentSubresourceFilterThrottleManager::
profile_interaction_manager_(
std::make_unique<subresource_filter::ProfileInteractionManager>(
profile_context)),
@@ -1580,7 +1572,7 @@ diff --git a/components/subresource_filter/content/browser/content_subresource_f
web_contents_helper_(web_contents_helper) {}
ContentSubresourceFilterThrottleManager::
@@ -667,6 +671,17 @@ ContentSubresourceFilterThrottleManager::
@@ -675,6 +679,17 @@ ContentSubresourceFilterThrottleManager::
throttle->NotifyPageActivationWithRuleset(EnsureRulesetHandle(),
ad_tagging_state);
}
@@ -1610,10 +1602,10 @@ diff --git a/components/subresource_filter/content/browser/content_subresource_f
// Unowned since the throttle manager cannot outlive the Page that owns it.
// The throttle manager is held as user data first on NavigationHandle, then
// transferred to Page once it is created. Once the Page is created and this
diff --git a/components/subresource_filter/content/browser/ruleset_service.cc b/components/subresource_filter/content/browser/ruleset_service.cc
--- a/components/subresource_filter/content/browser/ruleset_service.cc
+++ b/components/subresource_filter/content/browser/ruleset_service.cc
@@ -46,9 +46,7 @@ namespace {
diff --git a/components/subresource_filter/content/shared/browser/ruleset_service.cc b/components/subresource_filter/content/shared/browser/ruleset_service.cc
--- a/components/subresource_filter/content/shared/browser/ruleset_service.cc
+++ b/components/subresource_filter/content/shared/browser/ruleset_service.cc
@@ -47,9 +47,7 @@ namespace {
void RecordIndexAndWriteRulesetResult(
RulesetService::IndexAndWriteRulesetResult result) {
@@ -1657,11 +1649,15 @@ diff --git a/components/subresource_filter/content/browser/ruleset_service.cc b/
return;
}
@@ -266,6 +270,18 @@ IndexedRulesetVersion RulesetService::GetMostRecentlyIndexedVersion() const {
IndexedRulesetVersion RulesetService::IndexAndWriteRuleset(
@@ -267,6 +271,23 @@ IndexedRulesetVersion RulesetService::IndexAndWriteRuleset(
const RulesetConfig& config,
const base::FilePath& indexed_ruleset_base_dir,
const UnindexedRulesetInfo& unindexed_ruleset_info) {
+ IndexedRulesetVersion version = IndexAndWriteRulesetInternal(indexed_ruleset_base_dir, unindexed_ruleset_info);
+ IndexedRulesetVersion version =
+ IndexAndWriteRulesetInternal(
+ config,
+ indexed_ruleset_base_dir,
+ unindexed_ruleset_info);
+ // cleanup temporary file when done
+ if (unindexed_ruleset_info.delete_ruleset_path) {
+ base::DeleteFile(unindexed_ruleset_info.ruleset_path);
@@ -1671,34 +1667,35 @@ diff --git a/components/subresource_filter/content/browser/ruleset_service.cc b/
+
+// static
+IndexedRulesetVersion RulesetService::IndexAndWriteRulesetInternal(
+ const RulesetConfig& config,
+ const base::FilePath& indexed_ruleset_base_dir,
+ const UnindexedRulesetInfo& unindexed_ruleset_info) {
base::ScopedBlockingCall scoped_blocking_call(FROM_HERE,
base::BlockingType::MAY_BLOCK);
@@ -273,6 +289,7 @@ IndexedRulesetVersion RulesetService::IndexAndWriteRuleset(
@@ -274,6 +295,7 @@ IndexedRulesetVersion RulesetService::IndexAndWriteRuleset(
unindexed_ruleset_info);
if (!unindexed_ruleset_stream_generator.ruleset_stream()) {
+ LOG(WARNING) << "RulesetService: failed to open: " << unindexed_ruleset_info.ruleset_path;
RecordIndexAndWriteRulesetResult(
IndexAndWriteRulesetResult::FAILED_OPENING_UNINDEXED_RULESET);
return IndexedRulesetVersion(kSafeBrowsingFilterTag);
@@ -286,6 +303,7 @@ IndexedRulesetVersion RulesetService::IndexAndWriteRuleset(
return IndexedRulesetVersion(config.filter_tag);
@@ -287,6 +309,7 @@ IndexedRulesetVersion RulesetService::IndexAndWriteRuleset(
indexed_ruleset_base_dir, indexed_version);
if (!base::CreateDirectory(indexed_ruleset_version_dir)) {
+ LOG(WARNING) << "RulesetService: failed to create version dir: " << indexed_ruleset_version_dir;
RecordIndexAndWriteRulesetResult(
IndexAndWriteRulesetResult::FAILED_CREATING_VERSION_DIR);
return IndexedRulesetVersion(kSafeBrowsingFilterTag);
@@ -293,12 +311,11 @@ IndexedRulesetVersion RulesetService::IndexAndWriteRuleset(
return IndexedRulesetVersion(config.filter_tag);
@@ -294,12 +317,11 @@ IndexedRulesetVersion RulesetService::IndexAndWriteRuleset(
SentinelFile sentinel_file(indexed_ruleset_version_dir);
if (sentinel_file.IsPresent()) {
- RecordIndexAndWriteRulesetResult(
- IndexAndWriteRulesetResult::ABORTED_BECAUSE_SENTINEL_FILE_PRESENT);
- return IndexedRulesetVersion(kSafeBrowsingFilterTag);
- return IndexedRulesetVersion(config.filter_tag);
+ LOG(WARNING) << "RulesetService: sentinel file is present in " << indexed_ruleset_version_dir;
}
@@ -1706,30 +1703,30 @@ diff --git a/components/subresource_filter/content/browser/ruleset_service.cc b/
+ LOG(WARNING) << "RulesetService: cannot create sentinel file in " << indexed_ruleset_version_dir;
RecordIndexAndWriteRulesetResult(
IndexAndWriteRulesetResult::FAILED_CREATING_SENTINEL_FILE);
return IndexedRulesetVersion(kSafeBrowsingFilterTag);
@@ -311,6 +328,7 @@ IndexedRulesetVersion RulesetService::IndexAndWriteRuleset(
return IndexedRulesetVersion(config.filter_tag);
@@ -312,6 +334,7 @@ IndexedRulesetVersion RulesetService::IndexAndWriteRuleset(
RulesetIndexer indexer;
if (!(*g_index_ruleset_func)(&unindexed_ruleset_stream_generator, &indexer)) {
+ LOG(WARNING) << "RulesetService: failed parsing.";
RecordIndexAndWriteRulesetResult(
IndexAndWriteRulesetResult::FAILED_PARSING_UNINDEXED_RULESET);
return IndexedRulesetVersion(kSafeBrowsingFilterTag);
@@ -328,8 +346,12 @@ IndexedRulesetVersion RulesetService::IndexAndWriteRuleset(
return IndexedRulesetVersion(config.filter_tag);
@@ -329,8 +352,12 @@ IndexedRulesetVersion RulesetService::IndexAndWriteRuleset(
WriteRuleset(indexed_ruleset_version_dir,
unindexed_ruleset_info.license_path, indexer.data());
RecordIndexAndWriteRulesetResult(result);
- if (result != IndexAndWriteRulesetResult::SUCCESS)
+ if (result != IndexAndWriteRulesetResult::SUCCESS) {
+ LOG(INFO) << "RulesetService: failed to index.";
return IndexedRulesetVersion(kSafeBrowsingFilterTag);
return IndexedRulesetVersion(config.filter_tag);
+ }
+
+ LOG(INFO) << "RulesetService: successful parsing.";
DCHECK(indexed_version.IsValid());
return indexed_version;
@@ -449,6 +471,7 @@ void RulesetService::IndexAndStoreRuleset(
@@ -452,6 +479,7 @@ void RulesetService::IndexAndStoreRuleset(
void RulesetService::OnWrittenRuleset(WriteRulesetCallback result_callback,
const IndexedRulesetVersion& version) {
DCHECK(!result_callback.is_null());
@@ -1737,18 +1734,10 @@ diff --git a/components/subresource_filter/content/browser/ruleset_service.cc b/
if (!version.IsValid())
return;
version.SaveToPrefs(local_state_);
@@ -461,7 +484,6 @@ void RulesetService::OpenAndPublishRuleset(
IndexedRulesetLocator::GetRulesetDataFilePath(
IndexedRulesetLocator::GetSubdirectoryPathForVersion(
indexed_ruleset_base_dir_, version));
-
publisher_->TryOpenAndSetRulesetFile(
file_path, version.checksum,
base::BindOnce(&RulesetService::OnRulesetSet,
diff --git a/components/subresource_filter/content/browser/ruleset_service.h b/components/subresource_filter/content/browser/ruleset_service.h
--- a/components/subresource_filter/content/browser/ruleset_service.h
+++ b/components/subresource_filter/content/browser/ruleset_service.h
@@ -182,7 +182,7 @@ class RulesetService {
diff --git a/components/subresource_filter/content/shared/browser/ruleset_service.h b/components/subresource_filter/content/shared/browser/ruleset_service.h
--- a/components/subresource_filter/content/shared/browser/ruleset_service.h
+++ b/components/subresource_filter/content/shared/browser/ruleset_service.h
@@ -185,7 +185,7 @@ class RulesetService {
//
// Virtual so that it can be mocked out in tests.
virtual void IndexAndStoreAndPublishRulesetIfNeeded(
@@ -1757,21 +1746,22 @@ diff --git a/components/subresource_filter/content/browser/ruleset_service.h b/c
// Get the ruleset version associated with the current local_state_.
IndexedRulesetVersion GetMostRecentlyIndexedVersion() const;
@@ -215,6 +215,11 @@ class RulesetService {
@@ -219,6 +219,12 @@ class RulesetService {
const base::FilePath& indexed_ruleset_base_dir,
const UnindexedRulesetInfo& unindexed_ruleset_info);
+ // internal function used to wrap the temporary file deletion for unindexed rulesets
+ static IndexedRulesetVersion IndexAndWriteRulesetInternal(
+ const RulesetConfig& config,
+ const base::FilePath& indexed_ruleset_base_dir,
+ const UnindexedRulesetInfo& unindexed_ruleset_info);
+
// Reads the rules via the |unindexed_ruleset_stream_generator|, and indexes
// them using |indexer|. Returns whether the entire ruleset could be parsed.
static bool IndexRuleset(
diff --git a/components/subresource_filter/content/browser/unindexed_ruleset_stream_generator.cc b/components/subresource_filter/content/browser/unindexed_ruleset_stream_generator.cc
--- a/components/subresource_filter/content/browser/unindexed_ruleset_stream_generator.cc
+++ b/components/subresource_filter/content/browser/unindexed_ruleset_stream_generator.cc
diff --git a/components/subresource_filter/content/shared/browser/unindexed_ruleset_stream_generator.cc b/components/subresource_filter/content/shared/browser/unindexed_ruleset_stream_generator.cc
--- a/components/subresource_filter/content/shared/browser/unindexed_ruleset_stream_generator.cc
+++ b/components/subresource_filter/content/shared/browser/unindexed_ruleset_stream_generator.cc
@@ -12,6 +12,7 @@
#include "third_party/protobuf/src/google/protobuf/io/zero_copy_stream_impl.h"
#include "third_party/protobuf/src/google/protobuf/io/zero_copy_stream_impl_lite.h"
@@ -1792,7 +1782,7 @@ diff --git a/components/subresource_filter/content/browser/unindexed_ruleset_str
diff --git a/components/subresource_filter/core/browser/ruleset_version.h b/components/subresource_filter/core/browser/ruleset_version.h
--- a/components/subresource_filter/core/browser/ruleset_version.h
+++ b/components/subresource_filter/core/browser/ruleset_version.h
@@ -53,6 +53,10 @@ struct UnindexedRulesetInfo {
@@ -54,6 +54,10 @@ struct UnindexedRulesetInfo {
// can be indicated not only by setting |license_path| to empty, but also by
// setting it to any non existent path.
base::FilePath license_path;
@@ -12,9 +12,9 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
components/blocked_content_strings.grdp | 3 +
.../impl/BromitePopupContentSetting.java | 106 ++++++++++++++++++
.../bromite_content_settings/popups.grdp | 12 ++
.../bromite_content_settings/popups.inc | 7 ++
.../bromite_content_settings/popups.inc | 8 ++
.../core/browser/content_settings_registry.cc | 2 +-
8 files changed, 151 insertions(+), 3 deletions(-)
8 files changed, 152 insertions(+), 3 deletions(-)
create mode 100644 components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/impl/BromitePopupContentSetting.java
create mode 100644 components/browser_ui/strings/bromite_content_settings/popups.grdp
create mode 100644 components/content_settings/core/browser/bromite_content_settings/popups.inc
@@ -239,18 +239,19 @@ diff --git a/components/content_settings/core/browser/bromite_content_settings/p
new file mode 100644
--- /dev/null
+++ b/components/content_settings/core/browser/bromite_content_settings/popups.inc
@@ -0,0 +1,7 @@
@@ -0,0 +1,8 @@
+ content_settings::WebsiteSettingsRegistry::GetInstance()
+ ->GetMutable(ContentSettingsType::POPUPS)
+ ->set_show_into_info_page()
+ .set_desktop_ui()
+ .set_is_renderer_content_setting()
+ .set_allowed_ui(IDS_WEBSITE_SETTINGS_CATEGORY_POPUP_ALLOWED)
+ .set_ask_ui(IDS_WEBSITE_SETTINGS_CATEGORY_POPUP_BLOCK_ALL)
+ .set_blocked_ui(IDS_WEBSITE_SETTINGS_CATEGORY_POPUP_BLOCKED);
diff --git a/components/content_settings/core/browser/content_settings_registry.cc b/components/content_settings/core/browser/content_settings_registry.cc
--- a/components/content_settings/core/browser/content_settings_registry.cc
+++ b/components/content_settings/core/browser/content_settings_registry.cc
@@ -131,7 +131,7 @@ void ContentSettingsRegistry::Init() {
@@ -134,7 +134,7 @@ void ContentSettingsRegistry::Init() {
WebsiteSettingsInfo::SYNCABLE,
/*allowlisted_primary_schemes=*/
{kChromeUIScheme, kChromeDevToolsScheme, kExtensionScheme},
+34 -34
View File
@@ -75,10 +75,10 @@ diff --git a/chrome/browser/extensions/api/developer_private/developer_private_a
+#include "components/flags_ui/feature_entry.h"
+#include "components/flags_ui/flags_storage.h"
+
#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
#include "components/supervised_user/core/browser/supervised_user_preferences.h"
#endif // BUILDFLAG(ENABLE_SUPERVISED_USERS)
@@ -476,9 +482,32 @@ std::unique_ptr<developer::ProfileInfo> DeveloperPrivateAPI::CreateProfileInfo(
namespace extensions {
namespace developer = api::developer_private;
@@ -466,9 +472,32 @@ std::unique_ptr<developer::ProfileInfo> DeveloperPrivateAPI::CreateProfileInfo(
info->can_load_unpacked =
ExtensionManagementFactory::GetForBrowserContext(profile)
->HasAllowlistedExtension();
@@ -111,7 +111,7 @@ diff --git a/chrome/browser/extensions/api/developer_private/developer_private_a
template <>
void BrowserContextKeyedAPIFactory<
DeveloperPrivateAPI>::DeclareFactoryDependencies() {
@@ -908,6 +937,7 @@ ExtensionFunction::ResponseAction DeveloperPrivateAutoUpdateFunction::Run() {
@@ -898,6 +927,7 @@ ExtensionFunction::ResponseAction DeveloperPrivateAutoUpdateFunction::Run() {
ExtensionUpdater::CheckParams params;
params.fetch_priority = DownloadFetchPriority::kForeground;
params.install_immediately = true;
@@ -119,7 +119,7 @@ diff --git a/chrome/browser/extensions/api/developer_private/developer_private_a
params.callback =
base::BindOnce(&DeveloperPrivateAutoUpdateFunction::OnComplete, this);
updater->CheckNow(std::move(params));
@@ -1048,7 +1078,7 @@ DeveloperPrivateUpdateProfileConfigurationFunction::Run() {
@@ -1038,7 +1068,7 @@ DeveloperPrivateUpdateProfileConfigurationFunction::Run() {
const developer::ProfileConfigurationUpdate& update = params->update;
@@ -127,8 +127,8 @@ diff --git a/chrome/browser/extensions/api/developer_private/developer_private_a
+ if (update.in_developer_mode.has_value() && update.in_developer_mode) {
Profile* profile = Profile::FromBrowserContext(browser_context());
CHECK(profile);
#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
@@ -1060,6 +1090,11 @@ DeveloperPrivateUpdateProfileConfigurationFunction::Run() {
if (supervised_user::AreExtensionsPermissionsEnabled(
@@ -1048,6 +1078,11 @@ DeveloperPrivateUpdateProfileConfigurationFunction::Run() {
util::SetDeveloperModeForProfile(profile, *update.in_developer_mode);
}
@@ -156,7 +156,7 @@ diff --git a/chrome/browser/extensions/api/developer_private/developer_private_a
diff --git a/chrome/browser/extensions/api/webstore_private/webstore_private_api.cc b/chrome/browser/extensions/api/webstore_private/webstore_private_api.cc
--- a/chrome/browser/extensions/api/webstore_private/webstore_private_api.cc
+++ b/chrome/browser/extensions/api/webstore_private/webstore_private_api.cc
@@ -61,6 +61,7 @@
@@ -63,6 +63,7 @@
#include "extensions/browser/extension_system.h"
#include "extensions/browser/extension_util.h"
#include "extensions/common/extension.h"
@@ -164,7 +164,7 @@ diff --git a/chrome/browser/extensions/api/webstore_private/webstore_private_api
#include "extensions/common/manifest.h"
#include "extensions/common/manifest_constants.h"
#include "extensions/common/manifest_handlers/permissions_parser.h"
@@ -227,12 +228,16 @@ WebstorePrivateApi::Delegate* test_delegate = nullptr;
@@ -220,12 +221,16 @@ WebstorePrivateApi::Delegate* test_delegate = nullptr;
// there was previously stored data, or an empty string otherwise. The Set will
// overwrite any previous login.
std::string GetWebstoreLogin(Profile* profile) {
@@ -181,7 +181,7 @@ diff --git a/chrome/browser/extensions/api/webstore_private/webstore_private_api
profile->GetPrefs()->SetString(kWebstoreLogin, login);
}
@@ -242,6 +247,8 @@ void RecordWebstoreExtensionInstallResult(bool success) {
@@ -235,6 +240,8 @@ void RecordWebstoreExtensionInstallResult(bool success) {
api::webstore_private::ExtensionInstallStatus
ConvertExtensionInstallStatusForAPI(ExtensionInstallStatus status) {
@@ -190,7 +190,7 @@ diff --git a/chrome/browser/extensions/api/webstore_private/webstore_private_api
switch (status) {
case kCanRequest:
return api::webstore_private::ExtensionInstallStatus::kCanRequest;
@@ -1199,7 +1206,8 @@ ExtensionFunction::ResponseAction
@@ -1150,7 +1157,8 @@ ExtensionFunction::ResponseAction
WebstorePrivateIsInIncognitoModeFunction::Run() {
Profile* profile = Profile::FromBrowserContext(browser_context());
return RespondNow(ArgumentList(IsInIncognitoMode::Results::Create(
@@ -200,7 +200,7 @@ diff --git a/chrome/browser/extensions/api/webstore_private/webstore_private_api
}
WebstorePrivateIsPendingCustodianApprovalFunction::
@@ -1298,11 +1306,14 @@ WebstorePrivateGetReferrerChainFunction::Run() {
@@ -1245,11 +1253,14 @@ WebstorePrivateGetReferrerChainFunction::Run() {
request.mutable_referrer_chain_options()->set_recent_navigations_to_collect(
recent_navigations_to_collect);
@@ -539,7 +539,7 @@ diff --git a/chrome/browser/resources/extensions/toolbar.html b/chrome/browser/r
diff --git a/chrome/browser/resources/extensions/toolbar.ts b/chrome/browser/resources/extensions/toolbar.ts
--- a/chrome/browser/resources/extensions/toolbar.ts
+++ b/chrome/browser/resources/extensions/toolbar.ts
@@ -26,6 +26,8 @@ export interface ToolbarDelegate {
@@ -25,6 +25,8 @@ export interface ToolbarDelegate {
*/
setProfileInDevMode(inDevMode: boolean): void;
@@ -548,7 +548,7 @@ diff --git a/chrome/browser/resources/extensions/toolbar.ts b/chrome/browser/res
/** Opens the dialog to load unpacked extensions. */
loadUnpacked(): Promise<boolean>;
@@ -72,6 +74,13 @@ export class ExtensionsToolbarElement extends ExtensionsToolbarElementBase {
@@ -71,6 +73,13 @@ export class ExtensionsToolbarElement extends ExtensionsToolbarElementBase {
reflectToAttribute: true,
},
@@ -562,7 +562,7 @@ diff --git a/chrome/browser/resources/extensions/toolbar.ts b/chrome/browser/res
devModeControlledByPolicy: Boolean,
isChildAccount: Boolean,
@@ -88,6 +97,7 @@ export class ExtensionsToolbarElement extends ExtensionsToolbarElementBase {
@@ -87,6 +96,7 @@ export class ExtensionsToolbarElement extends ExtensionsToolbarElementBase {
expanded_: Boolean,
showPackDialog_: Boolean,
@@ -570,7 +570,7 @@ diff --git a/chrome/browser/resources/extensions/toolbar.ts b/chrome/browser/res
/**
* Prevents initiating update while update is in progress.
@@ -99,6 +109,8 @@ export class ExtensionsToolbarElement extends ExtensionsToolbarElementBase {
@@ -98,6 +108,8 @@ export class ExtensionsToolbarElement extends ExtensionsToolbarElementBase {
extensions: chrome.developerPrivate.ExtensionInfo[];
delegate: ToolbarDelegate;
inDevMode: boolean;
@@ -579,7 +579,7 @@ diff --git a/chrome/browser/resources/extensions/toolbar.ts b/chrome/browser/res
devModeControlledByPolicy: boolean;
isChildAccount: boolean;
@@ -151,6 +163,14 @@ export class ExtensionsToolbarElement extends ExtensionsToolbarElementBase {
@@ -150,6 +162,14 @@ export class ExtensionsToolbarElement extends ExtensionsToolbarElementBase {
'Options_ToggleDeveloperMode_' + (e.detail ? 'Enabled' : 'Disabled'));
}
@@ -613,7 +613,7 @@ diff --git a/chrome/browser/resources/webstore_app/manifest.json b/chrome/browse
diff --git a/chrome/browser/ui/webui/extensions/extensions_ui.cc b/chrome/browser/ui/webui/extensions/extensions_ui.cc
--- a/chrome/browser/ui/webui/extensions/extensions_ui.cc
+++ b/chrome/browser/ui/webui/extensions/extensions_ui.cc
@@ -58,6 +58,8 @@
@@ -59,6 +59,8 @@
#include "chrome/browser/ui/webui/extensions/ash/kiosk_apps_handler.h"
#endif
@@ -622,16 +622,16 @@ diff --git a/chrome/browser/ui/webui/extensions/extensions_ui.cc b/chrome/browse
namespace extensions {
namespace {
@@ -340,6 +342,8 @@ content::WebUIDataSource* CreateAndAddExtensionsSource(Profile* profile,
{"itemSuspiciousInstallLearnMore",
IDS_EXTENSIONS_ADDED_WITHOUT_KNOWLEDGE_LEARN_MORE},
{"toolbarDevMode", IDS_EXTENSIONS_DEVELOPER_MODE},
+ {"toolbarExtensionUpdateEnabled", IDS_EXTENSIONS_EXTENSION_UPDATE_ENABLED},
+ {"toolbarExtensionUpdateEnabledNeedRestart", IDS_EXTENSIONS_EXTENSION_UPDATE_ENABLED_NR},
{"toolbarLoadUnpacked", IDS_EXTENSIONS_TOOLBAR_LOAD_UNPACKED},
{"toolbarLoadUnpackedDone", IDS_EXTENSIONS_TOOLBAR_LOAD_UNPACKED_DONE},
{"toolbarPack", IDS_EXTENSIONS_TOOLBAR_PACK},
@@ -420,6 +424,10 @@ content::WebUIDataSource* CreateAndAddExtensionsSource(Profile* profile,
@@ -345,6 +347,8 @@ content::WebUIDataSource* CreateAndAddExtensionsSource(Profile* profile,
{"itemSuspiciousInstallLearnMore",
IDS_EXTENSIONS_ADDED_WITHOUT_KNOWLEDGE_LEARN_MORE},
{"toolbarDevMode", IDS_EXTENSIONS_DEVELOPER_MODE},
+ {"toolbarExtensionUpdateEnabled", IDS_EXTENSIONS_EXTENSION_UPDATE_ENABLED},
+ {"toolbarExtensionUpdateEnabledNeedRestart", IDS_EXTENSIONS_EXTENSION_UPDATE_ENABLED_NR},
{"toolbarLoadUnpacked", IDS_EXTENSIONS_TOOLBAR_LOAD_UNPACKED},
{"toolbarLoadUnpackedDone", IDS_EXTENSIONS_TOOLBAR_LOAD_UNPACKED_DONE},
{"toolbarPack", IDS_EXTENSIONS_TOOLBAR_PACK},
@@ -418,6 +422,10 @@ content::WebUIDataSource* CreateAndAddExtensionsSource(Profile* profile,
source->AddString("hostPermissionsLearnMoreLink",
chrome_extension_constants::kRuntimeHostPermissionsHelpURL);
source->AddBoolean(kInDevModeKey, in_dev_mode);
@@ -1110,8 +1110,8 @@ diff --git a/extensions/browser/updater/safe_manifest_parser.cc b/extensions/bro
diff --git a/extensions/common/extension_features.cc b/extensions/common/extension_features.cc
--- a/extensions/common/extension_features.cc
+++ b/extensions/common/extension_features.cc
@@ -158,4 +158,19 @@ BASE_FEATURE(kDeclarativeNetRequestResponseHeaderMatching,
"DeclarativeNetRequestResponseHeaderMatching",
@@ -162,4 +162,19 @@ BASE_FEATURE(kUseItemSnippetsAPI,
"UseItemSnippetsAPI",
base::FEATURE_DISABLED_BY_DEFAULT);
+// Activates the auto update of extensions.
@@ -1133,9 +1133,9 @@ diff --git a/extensions/common/extension_features.cc b/extensions/common/extensi
diff --git a/extensions/common/extension_features.h b/extensions/common/extension_features.h
--- a/extensions/common/extension_features.h
+++ b/extensions/common/extension_features.h
@@ -200,6 +200,10 @@ BASE_DECLARE_FEATURE(kDeclarativeNetRequestSafeRuleLimits);
// matching condition.
BASE_DECLARE_FEATURE(kDeclarativeNetRequestResponseHeaderMatching);
@@ -202,6 +202,10 @@ BASE_DECLARE_FEATURE(kDeclarativeNetRequestResponseHeaderMatching);
// If enabled, use the new CWS itemSnippets API to fetch extension info.
BASE_DECLARE_FEATURE(kUseItemSnippetsAPI);
+BASE_DECLARE_FEATURE(kEnableExtensionAutoupdate);
+
@@ -79,7 +79,7 @@ diff --git a/services/network/cors/preflight_result.cc b/services/network/cors/p
diff --git a/services/network/network_context.cc b/services/network/network_context.cc
--- a/services/network/network_context.cc
+++ b/services/network/network_context.cc
@@ -1179,6 +1179,8 @@ void NetworkContext::ClearHttpCache(base::Time start_time,
@@ -1186,6 +1186,8 @@ void NetworkContext::ClearHttpCache(base::Time start_time,
base::BindOnce(&NetworkContext::OnHttpCacheCleared,
base::Unretained(this), std::move(callback))));
+6 -6
View File
@@ -92,7 +92,7 @@ diff --git a/content/browser/client_hints/client_hints.cc b/content/browser/clie
diff --git a/content/browser/loader/navigation_url_loader_impl.cc b/content/browser/loader/navigation_url_loader_impl.cc
--- a/content/browser/loader/navigation_url_loader_impl.cc
+++ b/content/browser/loader/navigation_url_loader_impl.cc
@@ -1179,6 +1179,11 @@ void NavigationURLLoaderImpl::OnAcceptCHFrameReceived(
@@ -1185,6 +1185,11 @@ void NavigationURLLoaderImpl::OnAcceptCHFrameReceived(
return;
}
@@ -133,7 +133,7 @@ new file mode 100644
diff --git a/net/http/http_network_transaction.cc b/net/http/http_network_transaction.cc
--- a/net/http/http_network_transaction.cc
+++ b/net/http/http_network_transaction.cc
@@ -101,6 +101,7 @@ const size_t kMaxRestarts = 32;
@@ -102,6 +102,7 @@ const size_t kMaxRestarts = 32;
// Returns true when Early Hints are allowed on the given protocol.
bool EarlyHintsAreAllowedOn(HttpConnectionInfo connection_info) {
@@ -222,7 +222,7 @@ diff --git a/third_party/blink/renderer/core/frame/navigator_ua.idl b/third_part
diff --git a/third_party/blink/renderer/core/frame/navigator_ua_data.cc b/third_party/blink/renderer/core/frame/navigator_ua_data.cc
--- a/third_party/blink/renderer/core/frame/navigator_ua_data.cc
+++ b/third_party/blink/renderer/core/frame/navigator_ua_data.cc
@@ -220,6 +220,7 @@ ScriptPromiseTyped<UADataValues> NavigatorUAData::getHighEntropyValues(
@@ -219,6 +219,7 @@ ScriptPromise<UADataValues> NavigatorUAData::getHighEntropyValues(
Dactyloscoper::RecordDirectSurface(
GetExecutionContext(), WebFeature::kNavigatorUAData_Platform, platform());
@@ -278,9 +278,9 @@ diff --git a/third_party/blink/renderer/core/loader/base_fetch_context.cc b/thir
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -324,6 +324,11 @@
name: "AsyncClipboardImplicitPermission",
status: "stable",
@@ -340,6 +340,11 @@
name: "AtomicMoveOverride",
// No "status" field, so that this is not enabled on WPTs by default.
},
+ {
+ name: "UserAgentClientHint",
@@ -12,6 +12,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
Require: bromite-build-utils.patch
---
.../ChromeSiteSettingsDelegate.java | 17 +-
...page_specific_content_settings_delegate.cc | 2 +-
.../settings/privacy_page/privacy_page.html | 1 +
.../settings/privacy_page/privacy_page.ts | 77 +++-
chrome/browser/resources/settings/route.ts | 2 +
@@ -65,24 +66,24 @@ Require: bromite-build-utils.patch
.../core/browser/website_settings_registry.h | 1 +
.../content_settings/core/common/BUILD.gn | 7 +
.../bromite_content_settings/placeholder.txt | 1 +
.../core/common/content_settings.cc | 18 +
.../core/common/content_settings.h | 10 +
.../core/common/content_settings.cc | 30 +-
.../core/common/content_settings.h | 12 +
.../core/common/content_settings.mojom | 6 +
.../common/content_settings_mojom_traits.cc | 12 +-
.../common/content_settings_mojom_traits.h | 24 +
.../core/common/content_settings_types.mojom | 2 +
.../renderer/content_settings_agent_impl.cc | 33 ++
.../renderer/content_settings_agent_impl.h | 5 +
.../core/common/content_settings_types.mojom | 1 +
.../renderer/content_settings_agent_impl.cc | 45 +-
.../renderer/content_settings_agent_impl.h | 9 +-
.../PageInfoPermissionsController.java | 9 +
.../PermissionParamsListBuilder.java | 1 +
.../android/page_info_controller_android.cc | 18 +
components/page_info/page_info.cc | 23 +-
components/page_info/page_info_ui.cc | 18 +
components/site_settings_strings.grdp | 1 +
.../platform/web_content_settings_client.h | 5 +
.../platform/web_content_settings_client.h | 9 +
.../execution_context/execution_context.cc | 16 +
.../execution_context/execution_context.h | 5 +
71 files changed, 1836 insertions(+), 89 deletions(-)
72 files changed, 1865 insertions(+), 95 deletions(-)
create mode 100644 components/browser_ui/settings/android/java/res/layout/preference_spinner_single_widget.xml
create mode 100644 components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/BromiteCustomContentSetting.java
create mode 100644 components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/BromiteCustomContentSettingImpl.java
@@ -96,8 +97,8 @@ Require: bromite-build-utils.patch
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/site_settings/ChromeSiteSettingsDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/site_settings/ChromeSiteSettingsDelegate.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/site_settings/ChromeSiteSettingsDelegate.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/site_settings/ChromeSiteSettingsDelegate.java
@@ -60,6 +60,10 @@ import org.chromium.url.GURL;
import java.util.Map;
@@ -59,6 +59,10 @@ import org.chromium.url.GURL;
import java.util.Set;
+import android.content.Intent;
@@ -107,7 +108,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/site_settings/C
/** A SiteSettingsDelegate instance that contains Chrome-specific Site Settings logic. */
public class ChromeSiteSettingsDelegate implements SiteSettingsDelegate {
public static final String EMBEDDED_CONTENT_HELP_CENTER_URL =
@@ -198,7 +202,7 @@ public class ChromeSiteSettingsDelegate implements SiteSettingsDelegate {
@@ -208,7 +212,7 @@ public class ChromeSiteSettingsDelegate implements SiteSettingsDelegate {
@Override
public boolean isHelpAndFeedbackEnabled() {
@@ -116,7 +117,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/site_settings/C
}
@Override
@@ -311,6 +315,17 @@ public class ChromeSiteSettingsDelegate implements SiteSettingsDelegate {
@@ -328,6 +332,17 @@ public class ChromeSiteSettingsDelegate implements SiteSettingsDelegate {
return PrivacySandboxBridge.getFirstPartySetOwner(memberOrigin);
}
@@ -134,10 +135,22 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/site_settings/C
@Override
public boolean canLaunchClearBrowsingDataDialog() {
return true;
diff --git a/chrome/browser/content_settings/page_specific_content_settings_delegate.cc b/chrome/browser/content_settings/page_specific_content_settings_delegate.cc
--- a/chrome/browser/content_settings/page_specific_content_settings_delegate.cc
+++ b/chrome/browser/content_settings/page_specific_content_settings_delegate.cc
@@ -163,7 +163,7 @@ namespace {
void GetGuestViewDefaultContentSettingRules(
bool incognito,
RendererContentSettingRules* rules) {
- rules->mixed_content_rules.clear();
+ rules->mixed_content_rules.clear(); // do not remove
rules->mixed_content_rules.push_back(ContentSettingPatternSource(
ContentSettingsPattern::Wildcard(), ContentSettingsPattern::Wildcard(),
content_settings::ContentSettingToValue(CONTENT_SETTING_BLOCK),
diff --git a/chrome/browser/resources/settings/privacy_page/privacy_page.html b/chrome/browser/resources/settings/privacy_page/privacy_page.html
--- a/chrome/browser/resources/settings/privacy_page/privacy_page.html
+++ b/chrome/browser/resources/settings/privacy_page/privacy_page.html
@@ -1385,4 +1385,5 @@
@@ -1496,4 +1496,5 @@
</settings-subpage>
</template>
</template>
@@ -241,7 +254,7 @@ diff --git a/chrome/browser/resources/settings/privacy_page/privacy_page.ts b/ch
diff --git a/chrome/browser/resources/settings/route.ts b/chrome/browser/resources/settings/route.ts
--- a/chrome/browser/resources/settings/route.ts
+++ b/chrome/browser/resources/settings/route.ts
@@ -8,6 +8,7 @@ import {loadTimeData} from 'chrome://resources/js/load_time_data.js';
@@ -8,6 +8,7 @@ import {loadTimeData} from './i18n_setup.js';
import {pageVisibility} from './page_visibility.js';
import type {SettingsRoutes} from './router.js';
import {Route, Router} from './router.js';
@@ -249,9 +262,9 @@ diff --git a/chrome/browser/resources/settings/route.ts b/chrome/browser/resourc
/**
* Add all of the child routes that originate from the privacy route,
@@ -142,6 +143,7 @@ function addPrivacyChildRoutes(r: Partial<SettingsRoutes>) {
@@ -148,6 +149,7 @@ function addPrivacyChildRoutes(r: Partial<SettingsRoutes>) {
r.SITE_SETTINGS_AUTOMATIC_FULLSCREEN =
r.SITE_SETTINGS.createChild('automaticFullscreen');
r.SITE_SETTINGS.createChild('automaticFullScreen');
}
+ setupContentSettingsRoutes(r);
}
@@ -324,7 +337,7 @@ diff --git a/chrome/browser/resources/settings/site_settings/settings_category_d
private getAllowOptionForCategory_(): ContentSetting {
switch (this.category) {
case ContentSettingsTypes.ADS:
@@ -166,6 +181,8 @@ export class SettingsCategoryDefaultRadioGroupElement extends
@@ -169,6 +184,8 @@ export class SettingsCategoryDefaultRadioGroupElement extends
// "Ask" vs "Blocked".
return ContentSetting.ASK;
default:
@@ -333,7 +346,7 @@ diff --git a/chrome/browser/resources/settings/site_settings/settings_category_d
assertNotReached('Invalid category: ' + this.category);
}
}
@@ -190,6 +207,7 @@ export class SettingsCategoryDefaultRadioGroupElement extends
@@ -193,6 +210,7 @@ export class SettingsCategoryDefaultRadioGroupElement extends
/** @type {!ContentSetting} */ (this.getAllowOptionForCategory_());
this.browserProxy.setDefaultValueForContentType(
this.category,
@@ -341,7 +354,7 @@ diff --git a/chrome/browser/resources/settings/site_settings/settings_category_d
this.categoryEnabled_ ? allowOption : ContentSetting.BLOCK);
}
@@ -221,7 +239,9 @@ export class SettingsCategoryDefaultRadioGroupElement extends
@@ -224,7 +242,9 @@ export class SettingsCategoryDefaultRadioGroupElement extends
}
const enabled = this.computeIsSettingEnabled(update.setting);
@@ -355,11 +368,11 @@ diff --git a/chrome/browser/resources/settings/site_settings/settings_category_d
diff --git a/chrome/browser/resources/settings/site_settings/site_details.html b/chrome/browser/resources/settings/site_settings/site_details.html
--- a/chrome/browser/resources/settings/site_settings/site_details.html
+++ b/chrome/browser/resources/settings/site_settings/site_details.html
@@ -289,4 +289,5 @@
label="$i18n{siteSettingsAutomaticFullscreen}">
@@ -308,4 +308,5 @@
icon="settings:usb" label="$i18n{siteSettingsPointerLock}">
</site-details-permission>
</template>
+ <div id="bromite-placeholder"/>
</template>
+ <div id="bromite-placeholder"/>
</div>
diff --git a/chrome/browser/resources/settings/site_settings/site_details.ts b/chrome/browser/resources/settings/site_settings/site_details.ts
--- a/chrome/browser/resources/settings/site_settings/site_details.ts
@@ -574,7 +587,7 @@ diff --git a/chrome/browser/resources/settings/site_settings_page/site_settings_
{
route: routes.SITE_SETTINGS_ADS,
id: Id.ADS,
@@ -398,10 +398,36 @@ function getCategoryItemMap(): Map<ContentSettingsTypes, CategoryListItem> {
@@ -429,10 +429,36 @@ function getCategoryItemMap(): Map<ContentSettingsTypes, CategoryListItem> {
disabledLabel: 'trackingProtectionLinkRowSubLabel',
});
}
@@ -611,7 +624,7 @@ diff --git a/chrome/browser/resources/settings/site_settings_page/site_settings_
function buildItemListFromIds(orderedIdList: ContentSettingsTypes[]):
CategoryListItem[] {
const map = getCategoryItemMap();
@@ -484,7 +510,7 @@ export class SettingsSiteSettingsPageElement extends
@@ -518,7 +544,7 @@ export class SettingsSiteSettingsPageElement extends
Id.IMAGES,
Id.POPUPS,
]),
@@ -678,7 +691,7 @@ diff --git a/chrome/browser/resources/settings/site_settings_page/site_settings_
/**
* Determine localization string for i18n for a given content settings type.
* Sorted alphabetically by |ContentSettingsType|.
@@ -94,6 +142,13 @@ export function getLocalizationStringForContentType(
@@ -100,6 +148,13 @@ export function getLocalizationStringForContentType(
case ContentSettingsTypes.SITE_DATA:
return null;
default:
@@ -695,7 +708,7 @@ diff --git a/chrome/browser/resources/settings/site_settings_page/site_settings_
diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn
--- a/chrome/browser/ui/BUILD.gn
+++ b/chrome/browser/ui/BUILD.gn
@@ -2069,6 +2069,7 @@ static_library("ui") {
@@ -2115,6 +2115,7 @@ static_library("ui") {
"//components/commerce/core:shopping_service",
"//components/commerce/core/webui",
"//components/endpoint_fetcher:endpoint_fetcher",
@@ -731,7 +744,7 @@ diff --git a/chrome/browser/ui/views/page_info/page_info_main_view.cc b/chrome/b
#include "ui/views/view_class_properties.h"
#if BUILDFLAG(FULL_SAFE_BROWSING)
@@ -244,8 +245,20 @@ void PageInfoMainView::SetPermissionInfo(
@@ -251,8 +252,20 @@ void PageInfoMainView::SetPermissionInfo(
scroll_view->SetDrawOverflowIndicator(false);
auto* content_view =
scroll_view->SetContents(std::make_unique<views::View>());
@@ -754,7 +767,7 @@ diff --git a/chrome/browser/ui/views/page_info/page_info_main_view.cc b/chrome/b
content_view->SetID(PageInfoViewFactory::VIEW_ID_PAGE_INFO_PERMISSION_VIEW);
content_view->SetProperty(views::kElementIdentifierKey,
kPermissionsElementId);
@@ -260,17 +273,24 @@ void PageInfoMainView::SetPermissionInfo(
@@ -267,11 +280,16 @@ void PageInfoMainView::SetPermissionInfo(
}
}
@@ -762,7 +775,7 @@ diff --git a/chrome/browser/ui/views/page_info/page_info_main_view.cc b/chrome/b
for (const auto& permission : permission_info_list) {
+ if (++count % 2 == 0)
+ table_layout->AddRows(/*n=*/1, views::TableLayout::kFixedSize);
auto* toggle_row =
PermissionToggleRowView* toggle_row =
content_view->AddChildView(std::make_unique<PermissionToggleRowView>(
ui_delegate_, navigation_handler_, permission, should_show_spacer));
toggle_row->AddObserver(this);
@@ -770,7 +783,8 @@ diff --git a/chrome/browser/ui/views/page_info/page_info_main_view.cc b/chrome/b
+ gfx::Insets::TLBR(0, 0, 0, 0));
toggle_row->SetProperty(views::kCrossAxisAlignmentKey,
views::LayoutAlignment::kStretch);
toggle_rows_.push_back(std::move(toggle_row));
syncable_permission_rows_.emplace(permission.type, toggle_row);
@@ -279,6 +297,8 @@ void PageInfoMainView::SetPermissionInfo(
}
for (auto& object : chosen_object_info_list) {
@@ -779,7 +793,7 @@ diff --git a/chrome/browser/ui/views/page_info/page_info_main_view.cc b/chrome/b
// The view takes ownership of the object info.
auto object_view = std::make_unique<ChosenObjectView>(
std::move(object),
@@ -281,6 +301,10 @@ void PageInfoMainView::SetPermissionInfo(
@@ -289,6 +309,10 @@ void PageInfoMainView::SetPermissionInfo(
content_view->AddChildView(std::move(object_view)));
}
@@ -802,7 +816,7 @@ diff --git a/chrome/browser/ui/views/page_info/page_info_view_factory.cc b/chrom
#include "components/page_info/core/features.h"
#include "components/page_info/core/proto/about_this_site_metadata.pb.h"
#include "components/page_info/page_info.h"
@@ -256,7 +258,14 @@ const ui::ImageModel PageInfoViewFactory::GetPermissionIcon(
@@ -258,7 +260,14 @@ const ui::ImageModel PageInfoViewFactory::GetPermissionIcon(
ContentSetting setting = info.setting == CONTENT_SETTING_DEFAULT
? info.default_setting
: info.setting;
@@ -817,8 +831,8 @@ diff --git a/chrome/browser/ui/views/page_info/page_info_view_factory.cc b/chrom
// For guard content settings and Automatic Picture-in-Picture, ASK is treated
// as an "on" state.
const bool show_blocked_badge =
@@ -521,6 +530,17 @@ const ui::ImageModel PageInfoViewFactory::GetPermissionIcon(
icon = &kFullscreenIcon;
@@ -548,6 +557,17 @@ const ui::ImageModel PageInfoViewFactory::GetPermissionIcon(
icon = &vector_icons::kUsbIcon;
break;
default:
+ bool found = false;
@@ -902,8 +916,8 @@ diff --git a/chrome/browser/ui/views/page_info/permission_toggle_row_view.cc b/c
if (permission.requesting_origin.has_value()) {
std::u16string requesting_origin_string;
switch (permission.type) {
@@ -143,6 +163,90 @@ void PermissionToggleRowView::PermissionChanged() {
}
@@ -149,6 +169,90 @@ void PermissionToggleRowView::UpdatePermission(
UpdateUiOnPermissionChanged();
}
+void PermissionToggleRowView::OnShowOptionsMenu() {
@@ -993,7 +1007,7 @@ diff --git a/chrome/browser/ui/views/page_info/permission_toggle_row_view.cc b/c
void PermissionToggleRowView::OnToggleButtonPressed() {
PageInfoUI::ToggleBetweenAllowAndBlock(permission_);
PermissionChanged();
@@ -151,24 +255,19 @@ void PermissionToggleRowView::OnToggleButtonPressed() {
@@ -157,24 +261,19 @@ void PermissionToggleRowView::OnToggleButtonPressed() {
void PermissionToggleRowView::InitForUserSource(
bool should_show_spacer_view,
const std::u16string& toggle_accessible_name) {
@@ -1025,7 +1039,7 @@ diff --git a/chrome/browser/ui/views/page_info/permission_toggle_row_view.cc b/c
const int icon_size = GetLayoutConstant(PAGE_INFO_ICON_SIZE);
// TODO(crbug.com/1011533): Update below code to only display the updated
@@ -226,9 +325,6 @@ void PermissionToggleRowView::InitForUserSource(
@@ -232,9 +331,6 @@ void PermissionToggleRowView::InitForUserSource(
auto spacer_view = std::make_unique<views::View>();
spacer_view->SetPreferredSize(gfx::Size(icon_size, icon_size));
spacer_view_ = row_view_->AddControl(std::move(spacer_view));
@@ -1035,7 +1049,7 @@ diff --git a/chrome/browser/ui/views/page_info/permission_toggle_row_view.cc b/c
}
}
}
@@ -286,6 +382,33 @@ void PermissionToggleRowView::UpdateUiOnPermissionChanged() {
@@ -292,6 +388,33 @@ void PermissionToggleRowView::UpdateUiOnPermissionChanged() {
state_label_ = row_view_->AddSecondaryLabel(state_text);
}
}
@@ -1094,7 +1108,7 @@ diff --git a/chrome/browser/ui/views/page_info/permission_toggle_row_view.h b/ch
METADATA_HEADER(PermissionToggleRowView, views::View)
public:
@@ -55,6 +61,12 @@ class PermissionToggleRowView : public views::View {
@@ -56,6 +62,12 @@ class PermissionToggleRowView : public views::View {
private:
friend class test::PageInfoBubbleViewTestApi;
@@ -1107,7 +1121,7 @@ diff --git a/chrome/browser/ui/views/page_info/permission_toggle_row_view.h b/ch
void OnToggleButtonPressed();
void InitForUserSource(bool should_show_spacer_view,
const std::u16string& toggle_accessible_name);
@@ -69,6 +81,10 @@ class PermissionToggleRowView : public views::View {
@@ -70,6 +82,10 @@ class PermissionToggleRowView : public views::View {
raw_ptr<views::ToggleButton, DanglingUntriaged> toggle_button_ = nullptr;
raw_ptr<views::View, DanglingUntriaged> spacer_view_ = nullptr;
@@ -1129,7 +1143,7 @@ diff --git a/chrome/browser/ui/webui/settings/settings_localized_strings_provide
#include "build/branding_buildflags.h"
#include "build/build_config.h"
#include "build/buildflag.h"
@@ -72,6 +73,9 @@
@@ -70,6 +71,9 @@
#include "components/google/core/common/google_util.h"
#include "components/history/core/common/pref_names.h"
#include "components/omnibox/common/omnibox_features.h"
@@ -1139,7 +1153,7 @@ diff --git a/chrome/browser/ui/webui/settings/settings_localized_strings_provide
#include "components/password_manager/core/browser/leak_detection_dialog_utils.h"
#include "components/password_manager/core/browser/manage_passwords_referrer.h"
#include "components/password_manager/core/common/password_manager_features.h"
@@ -3785,6 +3789,56 @@ void AddLocalizedStrings(content::WebUIDataSource* html_source,
@@ -3577,6 +3581,56 @@ void AddLocalizedStrings(content::WebUIDataSource* html_source,
policy_indicator::AddLocalizedStrings(html_source);
AddSecurityKeysStrings(html_source);
@@ -1199,7 +1213,7 @@ diff --git a/chrome/browser/ui/webui/settings/settings_localized_strings_provide
diff --git a/chrome/browser/ui/webui/settings/site_settings_helper.cc b/chrome/browser/ui/webui/settings/site_settings_helper.cc
--- a/chrome/browser/ui/webui/settings/site_settings_helper.cc
+++ b/chrome/browser/ui/webui/settings/site_settings_helper.cc
@@ -43,6 +43,8 @@
@@ -44,6 +44,8 @@
#include "chrome/common/url_constants.h"
#include "chrome/grit/generated_resources.h"
#include "components/content_settings/core/browser/host_content_settings_map.h"
@@ -1208,8 +1222,8 @@ diff --git a/chrome/browser/ui/webui/settings/site_settings_helper.cc b/chrome/b
#include "components/content_settings/core/common/content_settings.h"
#include "components/content_settings/core/common/content_settings_pattern.h"
#include "components/content_settings/core/common/content_settings_utils.h"
@@ -220,13 +222,13 @@ const ContentSettingsTypeNameEntry kContentSettingsTypeGroupNames[] = {
{ContentSettingsType::DIRECT_SOCKETS, nullptr},
@@ -224,13 +226,13 @@ const ContentSettingsTypeNameEntry kContentSettingsTypeGroupNames[] = {
{ContentSettingsType::TOP_LEVEL_TPCD_ORIGIN_TRIAL, nullptr},
};
-static_assert(
@@ -1229,7 +1243,7 @@ diff --git a/chrome/browser/ui/webui/settings/site_settings_helper.cc b/chrome/b
struct SiteSettingSourceStringMapping {
SiteSettingSource source;
@@ -476,6 +478,13 @@ bool HasRegisteredGroupName(ContentSettingsType type) {
@@ -480,6 +482,13 @@ bool HasRegisteredGroupName(ContentSettingsType type) {
return true;
}
}
@@ -1243,7 +1257,7 @@ diff --git a/chrome/browser/ui/webui/settings/site_settings_helper.cc b/chrome/b
return false;
}
@@ -489,11 +498,24 @@ ContentSettingsType ContentSettingsTypeFromGroupName(base::StringPiece name) {
@@ -493,11 +502,24 @@ ContentSettingsType ContentSettingsTypeFromGroupName(base::StringPiece name) {
return entry.type;
}
}
@@ -1269,7 +1283,7 @@ diff --git a/chrome/browser/ui/webui/settings/site_settings_helper.cc b/chrome/b
for (const auto& entry : kContentSettingsTypeGroupNames) {
if (type == entry.type) {
// Content setting types that aren't represented in the settings UI
@@ -508,7 +530,6 @@ base::StringPiece ContentSettingsTypeToGroupName(ContentSettingsType type) {
@@ -512,7 +534,6 @@ base::StringPiece ContentSettingsTypeToGroupName(ContentSettingsType type) {
return entry.name ? entry.name : base::StringPiece();
}
}
@@ -1277,8 +1291,8 @@ diff --git a/chrome/browser/ui/webui/settings/site_settings_helper.cc b/chrome/b
NOTREACHED() << static_cast<int32_t>(type)
<< " is not a recognized content settings type.";
return base::StringPiece();
@@ -594,6 +615,13 @@ std::vector<ContentSettingsType> GetVisiblePermissionCategories(
base_types->push_back(ContentSettingsType::SPEAKER_SELECTION);
@@ -610,6 +631,13 @@ std::vector<ContentSettingsType> GetVisiblePermissionCategories(
base_types->push_back(ContentSettingsType::POINTER_LOCK);
}
+ content_settings::WebsiteSettingsRegistry* website_settings =
@@ -1457,7 +1471,7 @@ diff --git a/components/browser_ui/settings/android/widget/java/src/org/chromium
diff --git a/components/browser_ui/site_settings/android/BUILD.gn b/components/browser_ui/site_settings/android/BUILD.gn
--- a/components/browser_ui/site_settings/android/BUILD.gn
+++ b/components/browser_ui/site_settings/android/BUILD.gn
@@ -142,6 +142,23 @@ android_library("java") {
@@ -146,6 +146,23 @@ android_library("java") {
":site_settings_jni_headers",
"//components/content_settings/android:java_pref_names_srcjar",
]
@@ -1481,7 +1495,7 @@ diff --git a/components/browser_ui/site_settings/android/BUILD.gn b/components/b
}
android_library("javatests") {
@@ -187,6 +204,7 @@ robolectric_library("junit") {
@@ -194,6 +211,7 @@ robolectric_library("junit") {
}
android_resources("java_resources") {
@@ -1492,7 +1506,7 @@ diff --git a/components/browser_ui/site_settings/android/BUILD.gn b/components/b
diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/AllSiteSettings.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/AllSiteSettings.java
--- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/AllSiteSettings.java
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/AllSiteSettings.java
@@ -366,7 +366,8 @@ public class AllSiteSettings extends BaseSiteSettingsFragment
@@ -372,7 +372,8 @@ public class AllSiteSettings extends BaseSiteSettingsFragment
if (queryHasChanged) getInfoForOrigins();
});
@@ -1502,7 +1516,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
MenuItem help =
menu.add(
Menu.NONE,
@@ -378,6 +379,8 @@ public class AllSiteSettings extends BaseSiteSettingsFragment
@@ -384,6 +385,8 @@ public class AllSiteSettings extends BaseSiteSettingsFragment
getResources(),
R.drawable.ic_help_and_feedback,
getContext().getTheme()));
@@ -2137,7 +2151,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
int icon,
int title,
@ContentSettingValues @Nullable Integer defaultEnabledValue,
@@ -427,6 +427,8 @@ public class ContentSettingsResources {
@@ -415,6 +415,8 @@ public class ContentSettingsResources {
R.string.website_settings_category_vr_blocked,
R.string.website_settings_category_vr_a11y);
}
@@ -2146,8 +2160,8 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
assert false; // NOTREACHED
return null;
}
@@ -590,6 +592,14 @@ public class ContentSettingsResources {
return getResourceItem(contentType, null).getDefaultDisabledValue();
@@ -573,6 +575,14 @@ public class ContentSettingsResources {
return getResourceItem(contentType).getDefaultDisabledValue();
}
+ public static int getCategorySummary(int contentType,
@@ -2161,7 +2175,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
/**
* Returns the string resource id for a given ContentSetting to show with a permission category.
*
@@ -752,6 +762,8 @@ public class ContentSettingsResources {
@@ -736,6 +746,8 @@ public class ContentSettingsResources {
* Blocked states, in that order.
*/
public static int[] getTriStateSettingDescriptionIDs(int contentType) {
@@ -2173,7 +2187,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java
--- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java
@@ -329,6 +329,10 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
@@ -328,6 +328,10 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
website.site()
.getContentSetting(
browserContextHandle, mCategory.getContentSettingsType());
@@ -2184,7 +2198,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
if (contentSetting != null) {
return ContentSettingValues.BLOCK == contentSetting;
}
@@ -493,6 +497,7 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
@@ -492,6 +496,7 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
? new HashSet<>(getArguments().getStringArrayList(EXTRA_SELECTED_DOMAINS))
: null;
@@ -2192,7 +2206,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
configureGlobalToggles();
if (mCategory.getType() == SiteSettingsCategory.Type.REQUEST_DESKTOP_SITE) {
RecordUserAction.record("DesktopSiteContentSetting.SettingsPage.Entered");
@@ -523,7 +528,8 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
@@ -522,7 +527,8 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
if (queryHasChanged) getInfoForOrigins();
});
@@ -2202,7 +2216,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
MenuItem help =
menu.add(
Menu.NONE,
@@ -535,12 +541,20 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
@@ -534,12 +540,20 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
getResources(),
R.drawable.ic_help_and_feedback,
getContext().getTheme()));
@@ -2223,7 +2237,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
if (mCategory.getType() == SiteSettingsCategory.Type.PROTECTED_MEDIA) {
getSiteSettingsDelegate()
.launchProtectedContentHelpAndFeedbackActivity(getActivity());
@@ -612,6 +626,11 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
@@ -611,6 +625,11 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
BrowserContextHandle browserContextHandle =
getSiteSettingsDelegate().getBrowserContextHandle();
PrefService prefService = UserPrefs.get(browserContextHandle);
@@ -2235,7 +2249,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
if (BINARY_TOGGLE_KEY.equals(preference.getKey())) {
assert !mCategory.isManaged();
boolean toggleValue = (boolean) newValue;
@@ -804,6 +823,8 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
@@ -803,6 +822,8 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
.website_settings_allowed_group_heading_request_desktop_site;
break;
}
@@ -2244,7 +2258,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
assert resource > 0;
return getString(resource);
}
@@ -919,6 +940,8 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
@@ -918,6 +939,8 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
default:
break;
}
@@ -2253,7 +2267,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
if (allowSpecifyingExceptions) {
getPreferenceScreen()
.addPreference(
@@ -1107,8 +1130,16 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
@@ -1104,8 +1127,16 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
private boolean isBlocked() {
switch (mGlobalToggleLayout) {
case GlobalToggleLayout.TRI_STATE_TOGGLE:
@@ -2270,7 +2284,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
return (triStateToggle.getCheckedSetting() == ContentSettingValues.BLOCK);
case GlobalToggleLayout.TRI_STATE_COOKIE_TOGGLE:
TriStateCookieSettingsPreference triStateCookieToggle =
@@ -1173,7 +1204,11 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
@@ -1170,7 +1201,11 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
} else if (mCategory.getType() == SiteSettingsCategory.Type.STORAGE_ACCESS) {
infoText.setSummary(getStorageAccessSummary());
} else {
@@ -2283,7 +2297,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
}
// Hide the anti-abuse text preferences, as needed.
@@ -1197,6 +1232,7 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
@@ -1194,6 +1229,7 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
screen.removePreference(antiAbuseThingsToConsiderHeader);
screen.removePreference(antiAbuseThingsToConsiderSectionOne);
}
@@ -2291,7 +2305,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
if (permissionBlockedByOs) {
maybeShowOsWarning(screen);
@@ -1348,7 +1384,7 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
@@ -1345,7 +1381,7 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
getSiteSettingsDelegate().getBrowserContextHandle(), contentType);
int[] descriptionIds =
ContentSettingsResources.getTriStateSettingDescriptionIDs(contentType);
@@ -2300,7 +2314,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
}
private void configureBinaryToggle(ChromeSwitchPreference binaryToggle, int contentType) {
@@ -1459,6 +1495,14 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
@@ -1450,6 +1486,14 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
@ContentSettingValues
Integer value = site.getContentSetting(browserContextHandle, contentSettingsType);
@@ -2318,7 +2332,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java
--- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java
@@ -46,6 +46,7 @@ import java.util.Collection;
@@ -47,6 +47,7 @@ import java.util.Collection;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -2326,7 +2340,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
/** Shows the permissions and other settings for a particular website. */
public class SingleWebsiteSettings extends BaseSiteSettingsFragment
@@ -164,7 +165,7 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
@@ -165,7 +166,7 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
case ContentSettingsType.CLIPBOARD_READ_WRITE:
return "clipboard_permission_list";
default:
@@ -2335,7 +2349,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
}
}
@@ -534,8 +535,21 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
@@ -532,8 +533,21 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
private void setupContentSettingsPreferences() {
mMaxPermissionOrder = findPreference(PREF_PERMISSIONS_HEADER).getOrder();
@@ -2359,7 +2373,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
preference.setKey(getPreferenceKey(type));
if (type == ContentSettingsType.ADS) {
@@ -1060,20 +1074,32 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
@@ -1073,20 +1087,32 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
@ContentSettingValues @Nullable Integer value,
boolean isEmbargoed,
boolean isOneTime) {
@@ -2398,7 +2412,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
}
if (isSessionPermission(contentType)) {
switchPreference.setSummary(switchPreference.getSummary() + " " +
@@ -1288,14 +1314,20 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
@@ -1300,14 +1326,20 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
permission =
(Boolean) newValue ? ContentSettingValues.ALLOW : ContentSettingValues.BLOCK;
} else {
@@ -2450,7 +2464,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
Preference p = findPreference(prefCategory);
int contentType = SiteSettingsCategory.contentSettingsType(prefCategory);
// p can be null if the Preference was removed in configurePreferences.
@@ -142,19 +143,21 @@ public class SiteSettings extends BaseSiteSettingsFragment
@@ -140,19 +141,21 @@ public class SiteSettings extends BaseSiteSettingsFragment
} else if (Type.ZOOM == prefCategory) {
// Don't want to set a summary for Zoom because we don't want any message to display
// under the Zoom row on site settings.
@@ -2559,7 +2573,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettingsDelegate.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettingsDelegate.java
--- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettingsDelegate.java
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettingsDelegate.java
@@ -150,6 +150,8 @@ public interface SiteSettingsDelegate {
@@ -172,6 +172,8 @@ public interface SiteSettingsDelegate {
*/
String getFirstPartySetOwner(String memberOrigin);
@@ -2631,7 +2645,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePermissionsFetcher.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePermissionsFetcher.java
--- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePermissionsFetcher.java
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePermissionsFetcher.java
@@ -102,7 +102,7 @@ public class WebsitePermissionsFetcher {
@@ -106,7 +106,7 @@ public class WebsitePermissionsFetcher {
case ContentSettingsType.USB_GUARD:
return WebsitePermissionsType.CHOSEN_OBJECT_INFO;
default:
@@ -2728,7 +2742,7 @@ new file mode 100644
diff --git a/components/content_settings/android/BUILD.gn b/components/content_settings/android/BUILD.gn
--- a/components/content_settings/android/BUILD.gn
+++ b/components/content_settings/android/BUILD.gn
@@ -58,6 +58,7 @@ android_library("content_settings_enums_java") {
@@ -59,6 +59,7 @@ android_library("content_settings_enums_java") {
}
java_cpp_enum("content_settings_enums_javagen") {
@@ -2739,7 +2753,7 @@ diff --git a/components/content_settings/android/BUILD.gn b/components/content_s
diff --git a/components/content_settings/core/browser/BUILD.gn b/components/content_settings/core/browser/BUILD.gn
--- a/components/content_settings/core/browser/BUILD.gn
+++ b/components/content_settings/core/browser/BUILD.gn
@@ -89,6 +89,13 @@ static_library("browser") {
@@ -85,6 +85,13 @@ static_library("browser") {
}
configs += [ "//build/config/compiler:wexit_time_destructors" ]
@@ -2752,7 +2766,7 @@ diff --git a/components/content_settings/core/browser/BUILD.gn b/components/cont
+ output_file = "bromite_content_settings.inc"
}
source_set("unit_tests") {
source_set("cookie_settings") {
diff --git a/components/content_settings/core/browser/bromite_content_settings/placeholder.txt b/components/content_settings/core/browser/bromite_content_settings/placeholder.txt
new file mode 100644
--- /dev/null
@@ -2770,10 +2784,10 @@ diff --git a/components/content_settings/core/browser/content_settings_registry.
namespace content_settings {
@@ -750,6 +751,7 @@ void ContentSettingsRegistry::Init() {
WebsiteSettingsRegistry::DESKTOP,
ContentSettingsInfo::INHERIT_IN_INCOGNITO,
ContentSettingsInfo::EXCEPTIONS_ON_SECURE_ORIGINS_ONLY);
@@ -776,6 +777,7 @@ void ContentSettingsRegistry::Init() {
WebsiteSettingsRegistry::PLATFORM_ANDROID,
ContentSettingsInfo::INHERIT_IN_INCOGNITO,
ContentSettingsInfo::EXCEPTIONS_ON_SECURE_AND_INSECURE_ORIGINS);
+#include "components/content_settings/core/browser/bromite_content_settings.inc"
}
@@ -2781,7 +2795,7 @@ diff --git a/components/content_settings/core/browser/content_settings_registry.
diff --git a/components/content_settings/core/browser/content_settings_uma_util.cc b/components/content_settings/core/browser/content_settings_uma_util.cc
--- a/components/content_settings/core/browser/content_settings_uma_util.cc
+++ b/components/content_settings/core/browser/content_settings_uma_util.cc
@@ -190,11 +190,7 @@ void RecordContentSettingsHistogram(const std::string& name,
@@ -193,11 +193,7 @@ void RecordContentSettingsHistogram(const std::string& name,
}
int ContentSettingTypeToHistogramValue(ContentSettingsType content_setting) {
@@ -2821,8 +2835,8 @@ diff --git a/components/content_settings/core/browser/content_settings_utils.cc
+ }
+ }
#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_IOS)
rules->image_rules = map->GetSettingsForOneType(ContentSettingsType::IMAGES);
rules->mixed_content_rules =
map->GetSettingsForOneType(ContentSettingsType::MIXEDSCRIPT);
diff --git a/components/content_settings/core/browser/website_settings_info.h b/components/content_settings/core/browser/website_settings_info.h
--- a/components/content_settings/core/browser/website_settings_info.h
+++ b/components/content_settings/core/browser/website_settings_info.h
@@ -2931,7 +2945,7 @@ new file mode 100644
diff --git a/components/content_settings/core/common/content_settings.cc b/components/content_settings/core/common/content_settings.cc
--- a/components/content_settings/core/common/content_settings.cc
+++ b/components/content_settings/core/common/content_settings.cc
@@ -16,6 +16,7 @@
@@ -16,10 +16,11 @@
#include "components/content_settings/core/common/content_settings_metadata.h"
#include "components/content_settings/core/common/content_settings_types.h"
#include "components/content_settings/core/common/content_settings_utils.h"
@@ -2939,7 +2953,12 @@ diff --git a/components/content_settings/core/common/content_settings.cc b/compo
namespace {
@@ -104,6 +105,13 @@ std::ostream& operator<<(std::ostream& os,
-void FilterRulesForType(ContentSettingsForOneType& settings,
+void FilterRulesForType(ContentSettingsForOneType& settings, // do not remove
const GURL& primary_url) {
std::erase_if(settings,
[&primary_url](const ContentSettingPatternSource& source) {
@@ -98,6 +99,13 @@ std::ostream& operator<<(std::ostream& os,
// static
bool RendererContentSettingRules::IsRendererContentSetting(
ContentSettingsType content_type) {
@@ -2953,20 +2972,27 @@ diff --git a/components/content_settings/core/common/content_settings.cc b/compo
return content_type == ContentSettingsType::IMAGES ||
content_type == ContentSettingsType::JAVASCRIPT ||
content_type == ContentSettingsType::POPUPS ||
@@ -113,6 +121,9 @@ bool RendererContentSettingRules::IsRendererContentSetting(
@@ -107,7 +115,10 @@ bool RendererContentSettingRules::IsRendererContentSetting(
void RendererContentSettingRules::FilterRulesByOutermostMainFrameURL(
const GURL& outermost_main_frame_url) {
- FilterRulesForType(mixed_content_rules, outermost_main_frame_url);
+ for (ContentSettingRuleSource& info : settings_rules) {
+ FilterRulesForType(info.rules, outermost_main_frame_url);
+ }
FilterRulesForType(image_rules, outermost_main_frame_url);
FilterRulesForType(script_rules, outermost_main_frame_url);
FilterRulesForType(popup_redirect_rules, outermost_main_frame_url);
@@ -144,3 +155,10 @@ bool RendererContentSettingRules::operator==(
other.popup_redirect_rules, other.mixed_content_rules,
other.auto_dark_content_rules);
+ FilterRulesForType(mixed_content_rules, outermost_main_frame_url); // do not remove
}
RendererContentSettingRules::RendererContentSettingRules() = default;
@@ -127,4 +138,17 @@ RendererContentSettingRules& RendererContentSettingRules::operator=(
RendererContentSettingRules&& rules) = default;
bool RendererContentSettingRules::operator==(
- const RendererContentSettingRules& other) const = default;
+ const RendererContentSettingRules& other) const {
+ return std::tie(settings_rules, mixed_content_rules) ==
+ std::tie(other.settings_rules, other.mixed_content_rules);
+}
+
+ContentSettingRuleSource::ContentSettingRuleSource() = default;
+
@@ -2974,10 +3000,13 @@ diff --git a/components/content_settings/core/common/content_settings.cc b/compo
+
+ContentSettingRuleSource::ContentSettingRuleSource(
+ const ContentSettingRuleSource&) = default;
+
+bool ContentSettingRuleSource::operator==(
+ const ContentSettingRuleSource& other) const = default;
diff --git a/components/content_settings/core/common/content_settings.h b/components/content_settings/core/common/content_settings.h
--- a/components/content_settings/core/common/content_settings.h
+++ b/components/content_settings/core/common/content_settings.h
@@ -71,10 +71,20 @@ std::ostream& operator<<(std::ostream& os,
@@ -72,10 +72,22 @@ std::ostream& operator<<(std::ostream& os,
typedef std::vector<ContentSettingPatternSource> ContentSettingsForOneType;
@@ -2988,6 +3017,8 @@ diff --git a/components/content_settings/core/common/content_settings.h b/compon
+ ContentSettingRuleSource();
+ ~ContentSettingRuleSource();
+ ContentSettingRuleSource(const ContentSettingRuleSource& source);
+
+ bool operator==(const ContentSettingRuleSource& other) const;
+};
+
struct RendererContentSettingRules {
@@ -3001,8 +3032,8 @@ diff --git a/components/content_settings/core/common/content_settings.h b/compon
diff --git a/components/content_settings/core/common/content_settings.mojom b/components/content_settings/core/common/content_settings.mojom
--- a/components/content_settings/core/common/content_settings.mojom
+++ b/components/content_settings/core/common/content_settings.mojom
@@ -70,6 +70,11 @@ struct RuleMetaData {
TpcdMetadataRuleSource tpcd_metadata_rule_source;
@@ -71,6 +71,11 @@ struct RuleMetaData {
TpcdMetadataCohort tpcd_metadata_cohort;
};
+struct ContentSettingRuleSource {
@@ -3013,18 +3044,17 @@ diff --git a/components/content_settings/core/common/content_settings.mojom b/co
// This mirrors the C++ type in content_settings.h.
struct ContentSettingPatternSource {
ContentSettingsPattern primary_pattern;
@@ -83,6 +88,7 @@ struct ContentSettingPatternSource {
@@ -84,5 +89,6 @@ struct ContentSettingPatternSource {
// This mirrors the C++ type in content_settings.h.
// TODO(https://crbug.com/1485360): This should be removed.
// TODO(crbug.com/40282541): This should be removed.
struct RendererContentSettingRules {
+ array<ContentSettingRuleSource> settings_rules;
array<ContentSettingPatternSource> image_rules;
array<ContentSettingPatternSource> script_rules;
array<ContentSettingPatternSource> popup_redirect_rules;
array<ContentSettingPatternSource> mixed_content_rules;
};
diff --git a/components/content_settings/core/common/content_settings_mojom_traits.cc b/components/content_settings/core/common/content_settings_mojom_traits.cc
--- a/components/content_settings/core/common/content_settings_mojom_traits.cc
+++ b/components/content_settings/core/common/content_settings_mojom_traits.cc
@@ -117,12 +117,22 @@ bool StructTraits<content_settings::mojom::ContentSettingPatternSourceDataView,
@@ -118,12 +118,22 @@ bool StructTraits<content_settings::mojom::ContentSettingPatternSourceDataView,
data.ReadMetadata(&out->metadata) && data.ReadSource(&out->source);
}
@@ -3042,16 +3072,16 @@ diff --git a/components/content_settings/core/common/content_settings_mojom_trai
RendererContentSettingRules>::
Read(content_settings::mojom::RendererContentSettingRulesDataView data,
RendererContentSettingRules* out) {
- return data.ReadImageRules(&out->image_rules) &&
- return data.ReadMixedContentRules(&out->mixed_content_rules);
+ return data.ReadSettingsRules(&out->settings_rules) &&
+ data.ReadImageRules(&out->image_rules) &&
data.ReadScriptRules(&out->script_rules) &&
data.ReadPopupRedirectRules(&out->popup_redirect_rules) &&
data.ReadMixedContentRules(&out->mixed_content_rules) &&
+ data.ReadMixedContentRules(&out->mixed_content_rules);
}
} // namespace mojo
diff --git a/components/content_settings/core/common/content_settings_mojom_traits.h b/components/content_settings/core/common/content_settings_mojom_traits.h
--- a/components/content_settings/core/common/content_settings_mojom_traits.h
+++ b/components/content_settings/core/common/content_settings_mojom_traits.h
@@ -164,10 +164,34 @@ struct StructTraits<
@@ -170,10 +170,34 @@ struct StructTraits<
ContentSettingPatternSource* out);
};
@@ -3083,23 +3113,22 @@ diff --git a/components/content_settings/core/common/content_settings_mojom_trai
+ return r.settings_rules;
+ }
+
static const std::vector<ContentSettingPatternSource>& image_rules(
static const std::vector<ContentSettingPatternSource>& mixed_content_rules(
const RendererContentSettingRules& r) {
return r.image_rules;
return r.mixed_content_rules;
diff --git a/components/content_settings/core/common/content_settings_types.mojom b/components/content_settings/core/common/content_settings_types.mojom
--- a/components/content_settings/core/common/content_settings_types.mojom
+++ b/components/content_settings/core/common/content_settings_types.mojom
@@ -408,4 +408,6 @@ enum ContentSettingsType {
// Pointer Lock API allows a site to hide the cursor and have exclusive access
// to mouse inputs.
POINTER_LOCK,
+
@@ -424,4 +424,5 @@ enum ContentSettingsType {
// BLOCK: Protections enabled. This is the default state.
// ALLOW: Protections disabled.
TRACKING_PROTECTION,
+#include "components/content_settings/core/common/bromite_content_settings.inc"
};
diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc b/components/content_settings/renderer/content_settings_agent_impl.cc
--- a/components/content_settings/renderer/content_settings_agent_impl.cc
+++ b/components/content_settings/renderer/content_settings_agent_impl.cc
@@ -206,6 +206,39 @@ void ContentSettingsAgentImpl::SendRendererContentSettingRules(
@@ -202,6 +202,49 @@ void ContentSettingsAgentImpl::SendRendererContentSettingRules(
std::move(renderer_settings));
}
@@ -3127,6 +3156,16 @@ diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc
+ blink::WebLocalFrame* frame = render_frame()->GetWebFrame();
+ const GURL secondary_url =
+ url::Origin(frame->GetDocument().GetSecurityOrigin()).GetURL();
+ return AllowContentSetting(type, secondary_url, default_value);
+}
+
+bool ContentSettingsAgentImpl::AllowContentSetting(
+ ContentSettingsType type,
+ const blink::WebURL& secondary_url,
+ bool default_value) {
+ if (!content_setting_rules_)
+ return default_value;
+
+ for (ContentSettingRuleSource& info : content_setting_rules_->settings_rules) {
+ if (info.type == (int)type) {
+ return CONTENT_SETTING_ALLOW == GetContentSettingFromRules(
@@ -3139,13 +3178,24 @@ diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc
void ContentSettingsAgentImpl::OnContentSettingsAgentRequest(
mojo::PendingAssociatedReceiver<mojom::ContentSettingsAgent> receiver) {
receivers_.Add(this, std::move(receiver));
@@ -353,7 +396,7 @@ void ContentSettingsAgentImpl::ClearBlockedContentSettings() {
cached_storage_permissions_.clear();
}
-bool ContentSettingsAgentImpl::IsAllowlistedForContentSettings() const {
+bool ContentSettingsAgentImpl::IsAllowlistedForContentSettingsCromite() const {
if (should_allowlist_)
return true;
diff --git a/components/content_settings/renderer/content_settings_agent_impl.h b/components/content_settings/renderer/content_settings_agent_impl.h
--- a/components/content_settings/renderer/content_settings_agent_impl.h
+++ b/components/content_settings/renderer/content_settings_agent_impl.h
@@ -80,6 +80,11 @@ class ContentSettingsAgentImpl
@@ -80,6 +80,13 @@ class ContentSettingsAgentImpl
static mojom::ContentSettingsManager::StorageType ConvertToMojoStorageType(
StorageType storage_type);
+ bool AllowContentSetting(
+ ContentSettingsType type, const blink::WebURL& secondary_url, bool default_value) override;
+ bool AllowContentSetting(
+ ContentSettingsType type, bool default_value) override;
+ ContentSetting GetContentSetting(
@@ -3154,6 +3204,15 @@ diff --git a/components/content_settings/renderer/content_settings_agent_impl.h
// blink::WebContentSettingsClient:
void AllowStorageAccess(StorageType storage_type,
base::OnceCallback<void(bool)> callback) override;
@@ -135,7 +142,7 @@ class ContentSettingsAgentImpl
// Helpers.
// True if `render_frame()` contains content that is allowlisted for content
// settings.
- bool IsAllowlistedForContentSettings() const;
+ bool IsAllowlistedForContentSettingsCromite() const;
// A getter for `content_settings_manager_` that ensures it is bound.
mojom::ContentSettingsManager& GetContentSettingsManager();
diff --git a/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoPermissionsController.java b/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoPermissionsController.java
--- a/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoPermissionsController.java
+++ b/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoPermissionsController.java
@@ -3229,15 +3288,15 @@ diff --git a/components/page_info/android/page_info_controller_android.cc b/comp
diff --git a/components/page_info/page_info.cc b/components/page_info/page_info.cc
--- a/components/page_info/page_info.cc
+++ b/components/page_info/page_info.cc
@@ -24,6 +24,7 @@
@@ -23,6 +23,7 @@
#include "build/build_config.h"
#include "build/chromeos_buildflags.h"
#include "components/browsing_data/content/browsing_data_helper.h"
#include "components/content_settings/browser/page_specific_content_settings.h"
+#include "components/content_settings/core/browser/website_settings_registry.h"
#include "components/content_settings/browser/ui/cookie_controls_controller.h"
#include "components/content_settings/core/browser/content_settings_registry.h"
#include "components/content_settings/core/browser/content_settings_uma_util.h"
@@ -1219,6 +1220,14 @@ void PageInfo::PopulatePermissionInfo(PermissionInfo& permission_info,
@@ -1237,6 +1238,14 @@ void PageInfo::PopulatePermissionInfo(PermissionInfo& permission_info,
// applies to permissions listed in |kPermissionType|.
bool PageInfo::ShouldShowPermission(
const PageInfo::PermissionInfo& info) const {
@@ -3252,7 +3311,7 @@ diff --git a/components/page_info/page_info.cc b/components/page_info/page_info.
// Note |ContentSettingsType::ADS| will show up regardless of its default
// value when it has been activated on the current origin.
if (info.type == ContentSettingsType::ADS) {
@@ -1325,7 +1334,19 @@ void PageInfo::PresentSitePermissions() {
@@ -1344,7 +1353,19 @@ void PageInfo::PresentSitePermissions() {
HostContentSettingsMap* content_settings = GetContentSettings();
DCHECK(web_contents_);
@@ -3284,7 +3343,7 @@ diff --git a/components/page_info/page_info_ui.cc b/components/page_info/page_in
#include "components/page_info/core/features.h"
#include "components/page_info/page_info.h"
#include "components/page_info/page_info_ui_delegate.h"
@@ -615,6 +616,12 @@ PageInfoUI::~PageInfoUI() = default;
@@ -608,6 +609,12 @@ PageInfoUI::~PageInfoUI() = default;
// static
std::u16string PageInfoUI::PermissionTypeToUIString(ContentSettingsType type) {
@@ -3297,7 +3356,7 @@ diff --git a/components/page_info/page_info_ui.cc b/components/page_info/page_in
for (const PermissionUIInfo& info : GetContentSettingsUIInfo()) {
if (info.type == type)
return l10n_util::GetStringUTF16(info.string_id);
@@ -626,6 +633,12 @@ std::u16string PageInfoUI::PermissionTypeToUIString(ContentSettingsType type) {
@@ -619,6 +626,12 @@ std::u16string PageInfoUI::PermissionTypeToUIString(ContentSettingsType type) {
// static
std::u16string PageInfoUI::PermissionTypeToUIStringMidSentence(
ContentSettingsType type) {
@@ -3310,7 +3369,7 @@ diff --git a/components/page_info/page_info_ui.cc b/components/page_info/page_in
for (const PermissionUIInfo& info : GetContentSettingsUIInfo()) {
if (info.type == type)
return l10n_util::GetStringUTF16(info.string_id_mid_sentence);
@@ -1063,6 +1076,11 @@ bool PageInfoUI::ContentSettingsTypeInPageInfo(ContentSettingsType type) {
@@ -1056,6 +1069,11 @@ bool PageInfoUI::ContentSettingsTypeInPageInfo(ContentSettingsType type) {
if (info.type == type)
return true;
}
@@ -3343,13 +3402,17 @@ diff --git a/third_party/blink/public/platform/web_content_settings_client.h b/t
#include "third_party/blink/public/common/client_hints/enabled_client_hints.h"
#include "third_party/blink/public/mojom/navigation/renderer_content_settings.mojom.h"
@@ -46,6 +47,10 @@ class WebContentSettingsClient {
@@ -46,6 +47,14 @@ class WebContentSettingsClient {
// Blocks until done.
virtual bool AllowStorageAccessSync(StorageType storage_type) { return true; }
+ virtual bool AllowContentSetting(ContentSettingsType type, bool enabled_per_settings) {
+ return enabled_per_settings;
+ }
+
+ virtual bool AllowContentSetting(ContentSettingsType type, const WebURL& secondary_url, bool enabled_per_settings) {
+ return enabled_per_settings;
+ }
+
// Controls whether insecure scripts are allowed to execute for this frame.
virtual bool AllowRunningInsecureContent(bool enabled_per_settings,
+10 -10
View File
@@ -76,9 +76,9 @@ diff --git a/build/BUILD.gn b/build/BUILD.gn
diff --git a/build/config/BUILDCONFIG.gn b/build/config/BUILDCONFIG.gn
--- a/build/config/BUILDCONFIG.gn
+++ b/build/config/BUILDCONFIG.gn
@@ -177,6 +177,10 @@ assert(!(is_debug && is_official_build), "Can't do official debug builds")
assert(!(current_os == "ios" && is_component_build),
"Can't use component build on iOS")
@@ -183,6 +183,10 @@ declare_args() {
clang_unsafe_buffers_paths = ""
}
+declare_args() {
+ cromite_pref_hash_seed_bin = ""
@@ -90,7 +90,7 @@ diff --git a/build/config/BUILDCONFIG.gn b/build/config/BUILDCONFIG.gn
diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/AndroidManifest.xml
--- a/chrome/android/java/AndroidManifest.xml
+++ b/chrome/android/java/AndroidManifest.xml
@@ -171,7 +171,7 @@ by a child template that "extends" this file.
@@ -174,7 +174,7 @@ by a child template that "extends" this file.
<application android:name="{% block application_name %}org.chromium.chrome.browser.base.SplitChromeApplication{% endblock %}"
android:icon="@drawable/ic_launcher"
android:roundIcon="@drawable/ic_launcher_round"
@@ -9198,7 +9198,7 @@ diff --git a/chrome/app/extensions_strings.grdp b/chrome/app/extensions_strings.
diff --git a/chrome/app/settings_strings.grdp b/chrome/app/settings_strings.grdp
--- a/chrome/app/settings_strings.grdp
+++ b/chrome/app/settings_strings.grdp
@@ -287,7 +287,7 @@
@@ -323,7 +323,7 @@
Change
</message>
<message name="IDS_SETTINGS_WEB_STORE" desc="Sub-label about choosing something from the Chrome Web Store.">
@@ -13152,7 +13152,7 @@ e)fqMZZ`3a)Ds&5H<cfp<0000<MNUMnLSTYHt&Yn8
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -2058,6 +2058,7 @@ static_library("browser") {
@@ -2095,6 +2095,7 @@ static_library("browser") {
"//build:chromeos_buildflags",
"//build/config/chromebox_for_meetings:buildflags",
"//build/config/compiler:compiler_buildflags",
@@ -13171,7 +13171,7 @@ diff --git a/chrome/browser/prefs/chrome_pref_service_factory.cc b/chrome/browse
#include "chrome/browser/browser_process.h"
#include "chrome/browser/policy/chrome_browser_policy_connector.h"
#include "chrome/browser/prefs/chrome_command_line_pref_store.h"
@@ -274,10 +275,7 @@ std::unique_ptr<ProfilePrefStoreManager> CreateProfilePrefStoreManager(
@@ -270,10 +271,7 @@ std::unique_ptr<ProfilePrefStoreManager> CreateProfilePrefStoreManager(
#endif
std::string seed;
CHECK(ui::ResourceBundle::HasSharedInstance());
@@ -13214,7 +13214,7 @@ diff --git a/chrome/browser/resources/settings/settings_menu/settings_menu.html
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -2164,7 +2164,7 @@ Your Google account may have other forms of browsing history like searches and a
@@ -2178,7 +2178,7 @@ Your Google account may have other forms of browsing history like searches and a
About Chrome
</message>
<message name="IDS_LEGAL_INFORMATION_SUMMARY" desc="Summary for legal information" meaning="Android">
@@ -13247,7 +13247,7 @@ diff --git a/chrome/common/url_constants.h b/chrome/common/url_constants.h
diff --git a/components/browser_ui/strings/android/browser_ui_strings.grd b/components/browser_ui/strings/android/browser_ui_strings.grd
--- a/components/browser_ui/strings/android/browser_ui_strings.grd
+++ b/components/browser_ui/strings/android/browser_ui_strings.grd
@@ -999,7 +999,7 @@
@@ -987,7 +987,7 @@
<!-- Accessibility preferences -->
<message name="IDS_PREFS_ACCESSIBILITY" desc="Title of Accessibility settings, which allows the user to change webpage font sizes. [CHAR_LIMIT=32]">
@@ -18908,7 +18908,7 @@ diff --git a/tools/grit/grit/grd_reader.py b/tools/grit/grit/grd_reader.py
diff --git a/ui/base/ui_base_features.cc b/ui/base/ui_base_features.cc
--- a/ui/base/ui_base_features.cc
+++ b/ui/base/ui_base_features.cc
@@ -653,4 +653,6 @@ BASE_FEATURE(kUseGammaContrastRegistrySettings,
@@ -659,4 +659,6 @@ BASE_FEATURE(kUseGammaContrastRegistrySettings,
base::FEATURE_ENABLED_BY_DEFAULT);
#endif // BUILDFLAG(IS_WIN)
@@ -35,7 +35,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActionMod
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
@@ -748,10 +748,17 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -754,10 +754,17 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@TabLaunchType int type,
@TabCreationState int creationState,
boolean markedForSelection) {
@@ -68,7 +68,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layo
import org.chromium.base.ObserverList;
import org.chromium.base.TraceEvent;
import org.chromium.base.supplier.ObservableSupplier;
@@ -228,6 +229,13 @@ public class LayoutManagerImpl
@@ -227,6 +228,13 @@ public class LayoutManagerImpl
&& launchType != TabLaunchType.FROM_RECENT_TABS
&& launchType != TabLaunchType.FROM_RESTORE_TABS_UI
|| (!getTabModelSelector().isIncognitoSelected() && incognito);
@@ -93,7 +93,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordi
import org.chromium.base.TraceEvent;
import org.chromium.base.metrics.RecordUserAction;
import org.chromium.base.supplier.ObservableSupplier;
@@ -813,11 +814,16 @@ public class RootUiCoordinator
@@ -841,11 +842,16 @@ public class RootUiCoordinator
TrackerFactory.getTrackerForProfile(tab.getProfile())
.notifyEvent(EventConstants.WEB_SEARCH_PERFORMED);
@@ -10,7 +10,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -3201,8 +3201,8 @@
@@ -3205,8 +3205,8 @@
status: "stable",
},
{
@@ -27,7 +27,7 @@ diff --git a/chrome/android/java/res/layout/url_bar.xml b/chrome/android/java/re
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java
@@ -289,8 +289,17 @@ class LocationBarMediator
@@ -291,8 +291,17 @@ class LocationBarMediator
if (mNativeInitialized) RecordUserAction.record("FocusLocation");
// Don't clear Omnibox if the user just pasted text to NTP Omnibox.
if (mShouldClearOmniboxOnFocus) {
+2 -2
View File
@@ -11,8 +11,8 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/components/compose/core/browser/compose_features.cc b/components/compose/core/browser/compose_features.cc
--- a/components/compose/core/browser/compose_features.cc
+++ b/components/compose/core/browser/compose_features.cc
@@ -61,4 +61,6 @@ BASE_FEATURE(kComposeRequestLatencyTimeout,
"ComposeRequestLatencyTimeout",
@@ -73,4 +73,6 @@ BASE_FEATURE(kEnableNudgeForUnspecifiedHint,
"ComposeEnableNudgeForUnspecifiedHint",
base::FEATURE_ENABLED_BY_DEFAULT);
+SET_CROMITE_FEATURE_DISABLED(kEnableCompose);
@@ -10,7 +10,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -665,16 +665,18 @@
@@ -677,16 +677,18 @@
}
},
{
@@ -15,19 +15,19 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../privacy_sandbox/privacy_sandbox_prompt.cc | 1 +
.../history/core/browser/history_backend.cc | 13 +------------
.../privacy_sandbox_attestations.cc | 2 --
.../privacy_sandbox_features.cc | 4 ++++
.../privacy_sandbox_features.cc | 5 +++++
.../privacy_sandbox/privacy_sandbox_prefs.cc | 2 +-
.../privacy_sandbox_settings_impl.cc | 19 ++++++++++++++-----
.../identity_manager/account_capabilities.cc | 2 +-
.../Disable-FLoC-and-privacy-sandbox.inc | 4 ++++
third_party/blink/common/features.cc | 1 +
12 files changed, 32 insertions(+), 22 deletions(-)
12 files changed, 33 insertions(+), 22 deletions(-)
create mode 100644 cromite_flags/third_party/blink/common/features_cc/Disable-FLoC-and-privacy-sandbox.inc
diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc
--- a/chrome/browser/chrome_content_browser_client.cc
+++ b/chrome/browser/chrome_content_browser_client.cc
@@ -3263,6 +3263,9 @@ bool ChromeContentBrowserClient::IsAttributionReportingOperationAllowed(
@@ -3297,6 +3297,9 @@ bool ChromeContentBrowserClient::IsAttributionReportingOperationAllowed(
const url::Origin* destination_origin,
const url::Origin* reporting_origin,
bool* can_bypass) {
@@ -40,7 +40,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc
--- a/chrome/browser/prefs/browser_prefs.cc
+++ b/chrome/browser/prefs/browser_prefs.cc
@@ -1432,7 +1432,7 @@ void RegisterProfilePrefsForMigration(
@@ -1456,7 +1456,7 @@ void RegisterProfilePrefsForMigration(
registry->RegisterTimePref(kPlusAddressLastFetchedTime, base::Time());
// Deprecated 03/2024.
@@ -48,7 +48,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse
+ registry->RegisterBooleanPref(kPrivacySandboxApisEnabled, false);
// Deprecated 03/2024.
registry->RegisterBooleanPref(kDefaultSearchProviderChoicePendingDeprecated,
registry->RegisterBooleanPref(kShowInternalAccessibilityTree, false);
diff --git a/chrome/browser/privacy_sandbox/privacy_sandbox_settings_delegate.cc b/chrome/browser/privacy_sandbox/privacy_sandbox_settings_delegate.cc
--- a/chrome/browser/privacy_sandbox/privacy_sandbox_settings_delegate.cc
+++ b/chrome/browser/privacy_sandbox/privacy_sandbox_settings_delegate.cc
@@ -108,14 +108,15 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_attestations/privacy_san
diff --git a/components/privacy_sandbox/privacy_sandbox_features.cc b/components/privacy_sandbox/privacy_sandbox_features.cc
--- a/components/privacy_sandbox/privacy_sandbox_features.cc
+++ b/components/privacy_sandbox/privacy_sandbox_features.cc
@@ -175,4 +175,8 @@ BASE_FEATURE(kTrackingProtectionNoticeRequestTracking,
@@ -193,4 +193,9 @@ BASE_FEATURE(kTrackingProtectionReminder,
"TrackingProtectionReminder",
base::FEATURE_DISABLED_BY_DEFAULT);
#endif // BUILDFLAG(IS_ANDROID)
+SET_CROMITE_FEATURE_DISABLED(kPrivacySandboxSettings4);
+SET_CROMITE_FEATURE_ENABLED(kDisablePrivacySandboxPrompts);
+SET_CROMITE_FEATURE_DISABLED(kEnforcePrivacySandboxAttestations);
+SET_CROMITE_FEATURE_DISABLED(kPrivacySandboxFirstPartySetsUI);
+
} // namespace privacy_sandbox
diff --git a/components/privacy_sandbox/privacy_sandbox_prefs.cc b/components/privacy_sandbox/privacy_sandbox_prefs.cc
--- a/components/privacy_sandbox/privacy_sandbox_prefs.cc
@@ -132,7 +133,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_prefs.cc b/components/pr
diff --git a/components/privacy_sandbox/privacy_sandbox_settings_impl.cc b/components/privacy_sandbox/privacy_sandbox_settings_impl.cc
--- a/components/privacy_sandbox/privacy_sandbox_settings_impl.cc
+++ b/components/privacy_sandbox/privacy_sandbox_settings_impl.cc
@@ -123,7 +123,7 @@ std::set<browsing_topics::Topic> GetTopicsSetFromString(
@@ -125,7 +125,7 @@ std::set<browsing_topics::Topic> GetTopicsSetFromString(
// static
bool PrivacySandboxSettingsImpl::IsAllowed(Status status) {
@@ -141,7 +142,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings_impl.cc b/compo
}
// static
@@ -232,7 +232,8 @@ PrivacySandboxSettingsImpl::GetFinchPrioritizedTopics() {
@@ -245,7 +245,8 @@ PrivacySandboxSettingsImpl::GetFinchPrioritizedTopics() {
return finch_prioritized_topics_;
}
@@ -151,7 +152,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings_impl.cc b/compo
Status status = GetM1TopicAllowedStatus();
JoinHistogram(kIsTopicsAllowedHistogram, status);
return IsAllowed(status);
@@ -264,7 +265,8 @@ bool PrivacySandboxSettingsImpl::IsTopicsAllowedForContext(
@@ -277,7 +278,8 @@ bool PrivacySandboxSettingsImpl::IsTopicsAllowedForContext(
return IsAllowed(status);
}
@@ -161,7 +162,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings_impl.cc b/compo
const auto& blocked_topics =
pref_service_->GetList(prefs::kPrivacySandboxBlockedTopics);
@@ -466,6 +468,7 @@ bool PrivacySandboxSettingsImpl::
@@ -479,6 +481,7 @@ bool PrivacySandboxSettingsImpl::
void PrivacySandboxSettingsImpl::SetFledgeJoiningAllowed(
const std::string& top_frame_etld_plus1,
bool allowed) {
@@ -169,7 +170,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings_impl.cc b/compo
ScopedDictPrefUpdate scoped_pref_update(
pref_service_, prefs::kPrivacySandboxFledgeJoinBlocked);
@@ -536,7 +539,8 @@ void PrivacySandboxSettingsImpl::ClearFledgeJoiningAllowedSettings(
@@ -549,7 +552,8 @@ void PrivacySandboxSettingsImpl::ClearFledgeJoiningAllowedSettings(
}
bool PrivacySandboxSettingsImpl::IsFledgeJoiningAllowed(
@@ -179,7 +180,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings_impl.cc b/compo
ScopedDictPrefUpdate scoped_pref_update(
pref_service_, prefs::kPrivacySandboxFledgeJoinBlocked);
auto& pref_data = scoped_pref_update.Get();
@@ -782,7 +786,10 @@ void PrivacySandboxSettingsImpl::SetDelegateForTesting(
@@ -795,7 +799,10 @@ void PrivacySandboxSettingsImpl::SetDelegateForTesting(
delegate_ = std::move(delegate);
}
@@ -191,7 +192,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings_impl.cc b/compo
pref_service_->SetTime(prefs::kPrivacySandboxTopicsDataAccessibleSince,
base::Time::Now());
@@ -795,6 +802,7 @@ PrivacySandboxSettingsImpl::Status
@@ -808,6 +815,7 @@ PrivacySandboxSettingsImpl::Status
PrivacySandboxSettingsImpl::GetSiteAccessAllowedStatus(
const url::Origin& top_frame_origin,
const GURL& url) const {
@@ -199,7 +200,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings_impl.cc b/compo
// Relying on |host_content_settings_map_| instead of |cookie_settings_|
// allows to query whether the site associated with the |url| is allowed to
// access Site data (aka ContentSettingsType::COOKIES) without considering any
@@ -809,6 +817,7 @@ PrivacySandboxSettingsImpl::GetSiteAccessAllowedStatus(
@@ -822,6 +830,7 @@ PrivacySandboxSettingsImpl::GetSiteAccessAllowedStatus(
PrivacySandboxSettingsImpl::Status
PrivacySandboxSettingsImpl::GetPrivacySandboxAllowedStatus(
bool should_ignore_restriction /*=false*/) const {
@@ -227,12 +228,12 @@ new file mode 100644
+SET_CROMITE_FEATURE_DISABLED(kFencedFrames);
+SET_CROMITE_FEATURE_DISABLED(kSharedStorageAPI);
+SET_CROMITE_FEATURE_DISABLED(kSharedStorageAPIM118);
+SET_CROMITE_FEATURE_DISABLED(kSharedStorageAPIM124);
+SET_CROMITE_FEATURE_DISABLED(kSharedStorageAPIM125);
diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/features.cc
--- a/third_party/blink/common/features.cc
+++ b/third_party/blink/common/features.cc
@@ -2519,6 +2519,7 @@ bool IsAllowPageWithIDBConnectionAndTransactionInBFCacheEnabled() {
}
@@ -2602,6 +2602,7 @@ BASE_FEATURE(kWebviewAccelerateSmallCanvases,
// constants for features in the section above.
bool IsAllowURNsInIframeEnabled() {
+ if ((true)) return false; // see https://chromium-review.googlesource.com/c/chromium/src/+/3690741
+1 -1
View File
@@ -18,7 +18,7 @@ new file mode 100644
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -1597,7 +1597,7 @@
@@ -1559,7 +1559,7 @@
{
name: "FedCm",
public: true,
@@ -70,13 +70,14 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_prefs.cc b/components/pr
diff --git a/components/privacy_sandbox/tracking_protection_prefs.cc b/components/privacy_sandbox/tracking_protection_prefs.cc
--- a/components/privacy_sandbox/tracking_protection_prefs.cc
+++ b/components/privacy_sandbox/tracking_protection_prefs.cc
@@ -64,13 +64,13 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) {
@@ -64,14 +64,14 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) {
// Tracking Protection Settings Prefs
registry->RegisterBooleanPref(
- prefs::kBlockAll3pcToggleEnabled, false,
+ prefs::kBlockAll3pcToggleEnabled, false, // with true enables FPS
user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
registry->RegisterBooleanPref(prefs::kAllowAll3pcToggleEnabled, false);
registry->RegisterIntegerPref(
prefs::kTrackingProtectionLevel,
static_cast<int>(TrackingProtectionLevel::kStandard),
+3 -3
View File
@@ -19,10 +19,10 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.j
import org.chromium.chrome.browser.externalnav.IntentWithRequestMetadataHandler.RequestMetadata;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
-import org.chromium.chrome.browser.gsa.GSAState;
import org.chromium.chrome.browser.omnibox.suggestions.AutocompleteControllerProvider;
import org.chromium.chrome.browser.omnibox.suggestions.AutocompleteCoordinator;
import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.profiles.ProfileManager;
@@ -255,8 +254,6 @@ public class IntentHandler {
@@ -258,8 +257,6 @@ public class IntentHandler {
private static int sReferrerId;
private static String sPendingIncognitoUrl;
@@ -31,7 +31,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.j
private static final String PACKAGE_GMAIL = "com.google.android.gm";
private static final String PACKAGE_PLUS = "com.google.android.apps.plus";
private static final String PACKAGE_HANGOUTS = "com.google.android.talk";
@@ -472,8 +469,6 @@ public class IntentHandler {
@@ -475,8 +472,6 @@ public class IntentHandler {
return ExternalAppId.LINE;
} else if (packageName.equals(PACKAGE_WHATSAPP)) {
return ExternalAppId.WHATSAPP;
@@ -43,7 +43,7 @@ new file mode 100644
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -2183,9 +2183,9 @@
@@ -2166,9 +2166,9 @@
status: {"Android": "test", "default": "stable"},
},
{
+1 -1
View File
@@ -24,7 +24,7 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi
diff --git a/chrome/browser/ui/webui/settings/settings_ui.cc b/chrome/browser/ui/webui/settings/settings_ui.cc
--- a/chrome/browser/ui/webui/settings/settings_ui.cc
+++ b/chrome/browser/ui/webui/settings/settings_ui.cc
@@ -358,8 +358,7 @@ SettingsUI::SettingsUI(content::WebUI* web_ui)
@@ -365,8 +365,7 @@ SettingsUI::SettingsUI(content::WebUI* web_ui)
#endif // !BUILDFLAG(IS_CHROMEOS_LACROS)
bool show_privacy_guide =
+22 -23
View File
@@ -4,16 +4,16 @@ Subject: Disable Real Box
Real-box is search box in ntp
---
chrome/browser/prefs/browser_prefs.cc | 2 +-
chrome/browser/resources/new_tab_page/app.html | 5 -----
chrome/browser/ui/webui/searchbox/realbox_handler.cc | 2 +-
components/search/ntp_features.cc | 6 +++---
4 files changed, 5 insertions(+), 10 deletions(-)
chrome/browser/prefs/browser_prefs.cc | 2 +-
chrome/browser/resources/new_tab_page/app.html | 5 -----
chrome/browser/ui/webui/searchbox/searchbox_handler.cc | 1 +
components/search/ntp_features.cc | 6 +++---
4 files changed, 5 insertions(+), 9 deletions(-)
diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc
--- a/chrome/browser/prefs/browser_prefs.cc
+++ b/chrome/browser/prefs/browser_prefs.cc
@@ -2108,7 +2108,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
@@ -2159,7 +2159,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
registry->RegisterBooleanPref(
prefs::kLensRegionSearchEnabled, true,
user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
@@ -25,7 +25,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse
diff --git a/chrome/browser/resources/new_tab_page/app.html b/chrome/browser/resources/new_tab_page/app.html
--- a/chrome/browser/resources/new_tab_page/app.html
+++ b/chrome/browser/resources/new_tab_page/app.html
@@ -504,11 +504,6 @@
@@ -423,11 +423,6 @@
hidden$="[[!logoEnabled_]]">
</ntp-logo>
<div id="realboxContainer">
@@ -37,22 +37,21 @@ diff --git a/chrome/browser/resources/new_tab_page/app.html b/chrome/browser/res
<template is="dom-if" if="[[showLensUploadDialog_]]" restamp>
<ntp-lens-upload-dialog id="lensUploadDialog"
on-close-lens-search="onCloseLensSearch_">
diff --git a/chrome/browser/ui/webui/searchbox/realbox_handler.cc b/chrome/browser/ui/webui/searchbox/realbox_handler.cc
--- a/chrome/browser/ui/webui/searchbox/realbox_handler.cc
+++ b/chrome/browser/ui/webui/searchbox/realbox_handler.cc
@@ -699,7 +699,7 @@ void RealboxHandler::SetupWebUIDataSource(content::WebUIDataSource* source,
source->AddBoolean(
"realboxLensSearch",
- profile->GetPrefs()->GetBoolean(prefs::kLensDesktopNTPSearchEnabled));
+ false);
source->AddString("realboxLensVariations", GetBase64UrlVariations(profile));
source->AddBoolean(
"realboxLensDirectUpload",
diff --git a/chrome/browser/ui/webui/searchbox/searchbox_handler.cc b/chrome/browser/ui/webui/searchbox/searchbox_handler.cc
--- a/chrome/browser/ui/webui/searchbox/searchbox_handler.cc
+++ b/chrome/browser/ui/webui/searchbox/searchbox_handler.cc
@@ -451,6 +451,7 @@ void SearchboxHandler::SetupWebUIDataSource(content::WebUIDataSource* source,
Profile* profile,
bool enable_voice_search,
bool enable_lens_search) {
+ enable_lens_search = false;
// Embedders which are served from chrome-untrusted:// URLs should override
// this to false. The chrome.timeTicks capability that the metrics reporter
// depends on is not defined in chrome-untrusted environments and attempting
diff --git a/components/search/ntp_features.cc b/components/search/ntp_features.cc
--- a/components/search/ntp_features.cc
+++ b/components/search/ntp_features.cc
@@ -171,7 +171,7 @@ BASE_FEATURE(kNtpHandleMostVisitedNavigationExplicitly,
@@ -176,7 +176,7 @@ BASE_FEATURE(kNtpHandleMostVisitedNavigationExplicitly,
base::FEATURE_ENABLED_BY_DEFAULT);
// If enabled, logo will be shown.
@@ -61,7 +60,7 @@ diff --git a/components/search/ntp_features.cc b/components/search/ntp_features.
// If enabled, logo will fill up less vertical space.
BASE_FEATURE(kNtpReducedLogoSpace,
@@ -248,8 +248,8 @@ BASE_FEATURE(kNtpMostVisitedReflowOnOverflow,
@@ -253,8 +253,8 @@ BASE_FEATURE(kNtpMostVisitedReflowOnOverflow,
// If enabled, OneGoogleBar will be shown.
BASE_FEATURE(kNtpOneGoogleBar,
@@ -70,6 +69,6 @@ diff --git a/components/search/ntp_features.cc b/components/search/ntp_features.
+ "NtpOneGoogleBar", // disabled
+ base::FEATURE_DISABLED_BY_DEFAULT); // by default
// If enabled, Google Photos module will be shown.
BASE_FEATURE(kNtpPhotosModule,
// If enabled, outlook calendar module will be shown.
BASE_FEATURE(kNtpOutlookCalendarModule,
--
@@ -14,15 +14,15 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
--- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
@@ -645,7 +645,7 @@ public abstract class ChromeFeatureList {
@@ -648,7 +648,7 @@ public abstract class ChromeFeatureList {
public static final CachedFlag sSmallerTabStripTitleLimit =
newCachedFlag(SMALLER_TAB_STRIP_TITLE_LIMIT, false);
public static final CachedFlag sStartSurfaceAndroid =
- newCachedFlag(START_SURFACE_ANDROID, true);
+ newCachedFlag(START_SURFACE_ANDROID, false);
public static final CachedFlag sStartSurfaceOnTablet =
newCachedFlag(START_SURFACE_ON_TABLET, true);
public static final CachedFlag sStartSurfaceReturnTime =
newCachedFlag(START_SURFACE_RETURN_TIME, true);
public static final CachedFlag sStopAppIndexingReport =
diff --git a/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Disable-StartSurface-feature.inc b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Disable-StartSurface-feature.inc
new file mode 100644
--- /dev/null
+6 -6
View File
@@ -90,7 +90,7 @@ diff --git a/net/http/http_network_session.cc b/net/http/http_network_session.cc
diff --git a/net/quic/quic_session_pool.cc b/net/quic/quic_session_pool.cc
--- a/net/quic/quic_session_pool.cc
+++ b/net/quic/quic_session_pool.cc
@@ -71,6 +71,7 @@
@@ -77,6 +77,7 @@
#include "net/third_party/quiche/src/quiche/quic/platform/api/quic_flags.h"
#include "net/traffic_annotation/network_traffic_annotation.h"
#include "third_party/boringssl/src/include/openssl/aead.h"
@@ -98,7 +98,7 @@ diff --git a/net/quic/quic_session_pool.cc b/net/quic/quic_session_pool.cc
#include "url/gurl.h"
#include "url/scheme_host_port.h"
#include "url/url_constants.h"
@@ -158,6 +159,38 @@ std::set<std::string> HostsFromOrigins(std::set<HostPortPair> origins) {
@@ -196,6 +197,38 @@ void LogUsingExistingSession(const NetLogWithSource& request_net_log,
} // namespace
@@ -137,7 +137,7 @@ diff --git a/net/quic/quic_session_pool.cc b/net/quic/quic_session_pool.cc
QuicSessionRequest::QuicSessionRequest(QuicSessionPool* pool) : pool_(pool) {}
QuicSessionRequest::~QuicSessionRequest() {
@@ -1721,7 +1754,7 @@ QuicSessionPool::CreateCryptoConfigHandle(
@@ -1894,7 +1927,7 @@ QuicSessionPool::CreateCryptoConfigHandle(
cert_verifier_, transport_security_state_, sct_auditing_delegate_,
HostsFromOrigins(params_.origins_to_force_quic_on),
actual_network_anonymization_key),
@@ -192,7 +192,7 @@ diff --git a/net/socket/ssl_client_socket_impl.cc b/net/socket/ssl_client_socket
}
const int kBufferSize = GetDefaultOpenSSLBufferSize();
@@ -960,6 +988,35 @@ int SSLClientSocketImpl::DoHandshakeComplete(int result) {
@@ -959,6 +987,35 @@ int SSLClientSocketImpl::DoHandshakeComplete(int result) {
: SSLHandshakeDetails::kTLS13Full;
}
}
@@ -228,7 +228,7 @@ diff --git a/net/socket/ssl_client_socket_impl.cc b/net/socket/ssl_client_socket
UMA_HISTOGRAM_ENUMERATION("Net.SSLHandshakeDetails", details);
// Measure TLS connections that implement the renegotiation_info extension.
@@ -1585,6 +1642,8 @@ bool SSLClientSocketImpl::IsRenegotiationAllowed() const {
@@ -1584,6 +1641,8 @@ bool SSLClientSocketImpl::IsRenegotiationAllowed() const {
}
bool SSLClientSocketImpl::IsCachingEnabled() const {
@@ -240,7 +240,7 @@ diff --git a/net/socket/ssl_client_socket_impl.cc b/net/socket/ssl_client_socket
diff --git a/net/socket/ssl_client_socket_impl.h b/net/socket/ssl_client_socket_impl.h
--- a/net/socket/ssl_client_socket_impl.h
+++ b/net/socket/ssl_client_socket_impl.h
@@ -124,6 +124,8 @@ class SSLClientSocketImpl : public SSLClientSocket,
@@ -125,6 +125,8 @@ class SSLClientSocketImpl : public SSLClientSocket,
friend class SSLClientSocket;
friend class SSLContext;
+2 -2
View File
@@ -12,7 +12,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.cc
--- a/content/child/runtime_features.cc
+++ b/content/child/runtime_features.cc
@@ -588,6 +588,8 @@ void SetCustomizedRuntimeFeaturesFromCombinedArgs(
@@ -578,6 +578,8 @@ void SetCustomizedRuntimeFeaturesFromCombinedArgs(
WebRuntimeFeatures::EnableV8IdleTasks(true);
}
@@ -36,7 +36,7 @@ diff --git a/gpu/config/gpu_finch_features.cc b/gpu/config/gpu_finch_features.cc
diff --git a/third_party/blink/renderer/modules/webgpu/gpu.cc b/third_party/blink/renderer/modules/webgpu/gpu.cc
--- a/third_party/blink/renderer/modules/webgpu/gpu.cc
+++ b/third_party/blink/renderer/modules/webgpu/gpu.cc
@@ -380,6 +380,7 @@ ScriptPromiseTyped<IDLNullable<GPUAdapter>> GPU::requestAdapter(
@@ -380,6 +380,7 @@ ScriptPromise<IDLNullable<GPUAdapter>> GPU::requestAdapter(
"WebGPU is experimental on this platform. See "
"https://github.com/gpuweb/gpuweb/wiki/"
"Implementation-Status#implementation-status"));
+54 -44
View File
@@ -6,17 +6,17 @@ Original License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
chrome/browser/BUILD.gn | 2 --
.../preloading_model_keyed_service.cc | 1 +
.../preloading_model_keyed_service.cc | 3 +++
.../preloading_model_keyed_service_factory.cc | 4 +---
.../optimization_guide/chrome_hints_manager.cc | 1 +
.../model_validator_keyed_service.cc | 6 +++++-
.../optimization_guide_keyed_service.cc | 1 -
.../predictors/loading_predictor_config.cc | 4 ++--
chrome/browser/predictors/predictors_features.cc | 11 ++---------
chrome/browser/predictors/predictors_features.cc | 3 +--
chrome/browser/ui/tab_helpers.cc | 1 -
.../ui/webui/omnibox/omnibox_page_handler.cc | 2 ++
.../core/browser/autofill_optimization_guide.cc | 5 +++--
.../omnibox/browser/autocomplete_controller.cc | 2 ++
.../omnibox/browser/autocomplete_controller.cc | 4 ++++
.../optimization_guide/core/hints_fetcher.cc | 1 +
.../optimization_guide/core/hints_manager.cc | 5 +++++
.../core/optimization_guide_features.cc | 15 +++++++++------
@@ -31,7 +31,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../features_cc/Disable-all-predictors-code.inc | 2 ++
.../document_speculation_rules.cc | 1 +
.../platform/runtime_enabled_features.json5 | 2 +-
26 files changed, 61 insertions(+), 32 deletions(-)
26 files changed, 64 insertions(+), 25 deletions(-)
create mode 100644 cromite_flags/chrome/browser/browser_features_cc/Disable-all-predictors-code.inc
create mode 100644 cromite_flags/chrome/common/chrome_features_cc/Disable-all-predictors-code.inc
create mode 100644 cromite_flags/components/permissions/features_cc/Disable-all-predictors-code.inc
@@ -40,7 +40,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -847,8 +847,6 @@ static_library("browser") {
@@ -853,8 +853,6 @@ static_library("browser") {
"navigation_predictor/navigation_predictor_keyed_service_factory.h",
"navigation_predictor/navigation_predictor_metrics_document_data.cc",
"navigation_predictor/navigation_predictor_metrics_document_data.h",
@@ -52,7 +52,22 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
diff --git a/chrome/browser/navigation_predictor/preloading_model_keyed_service.cc b/chrome/browser/navigation_predictor/preloading_model_keyed_service.cc
--- a/chrome/browser/navigation_predictor/preloading_model_keyed_service.cc
+++ b/chrome/browser/navigation_predictor/preloading_model_keyed_service.cc
@@ -16,6 +16,7 @@ PreloadingModelKeyedService::Inputs::Inputs() = default;
@@ -11,6 +11,7 @@
#include "chrome/browser/navigation_predictor/preloading_model_handler.h"
#endif
+#if BUILDFLAG(BUILD_WITH_TFLITE_LIB)
namespace {
// The model takes all of its inputs as floats, so this is a convenience
@@ -28,12 +29,14 @@ constexpr float ToInput(base::TimeDelta val) {
static_assert(1.0f == ToInput(true));
} // namespace
+#endif
PreloadingModelKeyedService::Inputs::Inputs() = default;
PreloadingModelKeyedService::PreloadingModelKeyedService(
OptimizationGuideKeyedService* optimization_guide_keyed_service) {
#if BUILDFLAG(BUILD_WITH_TFLITE_LIB)
@@ -110,7 +125,7 @@ diff --git a/chrome/browser/optimization_guide/model_validator_keyed_service.cc
OptimizationGuideKeyedServiceFactory::GetForProfile(profile_);
if (!opt_guide_service) {
@@ -137,6 +138,7 @@ void ModelValidatorKeyedService::StartModelExecutionValidation() {
proto::ModelExecutionFeature::MODEL_EXECUTION_FEATURE_TEST, request,
ModelBasedCapabilityKey::kTest, request,
base::BindOnce(&ModelValidatorKeyedService::OnModelExecuteResponse,
weak_ptr_factory_.GetWeakPtr()));
+#endif
@@ -136,7 +151,7 @@ diff --git a/chrome/browser/optimization_guide/model_validator_keyed_service.cc
diff --git a/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc b/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc
--- a/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc
+++ b/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc
@@ -521,7 +521,6 @@ void OptimizationGuideKeyedService::RemoveObserverForOptimizationTargetModel(
@@ -522,7 +522,6 @@ void OptimizationGuideKeyedService::RemoveObserverForOptimizationTargetModel(
void OptimizationGuideKeyedService::RegisterOptimizationTypes(
const std::vector<optimization_guide::proto::OptimizationType>&
optimization_types) {
@@ -161,41 +176,20 @@ diff --git a/chrome/browser/predictors/loading_predictor_config.cc b/chrome/brow
diff --git a/chrome/browser/predictors/predictors_features.cc b/chrome/browser/predictors/predictors_features.cc
--- a/chrome/browser/predictors/predictors_features.cc
+++ b/chrome/browser/predictors/predictors_features.cc
@@ -39,11 +39,7 @@ BASE_FEATURE(kLoadingPredictorDisregardAlwaysAccessesNetwork,
@@ -12,8 +12,7 @@ namespace features {
namespace {
const base::FeatureState
kLoadingPredictorUseOptimizationGuideDefaultFeatureState =
-#if BUILDFLAG(IS_ANDROID)
- base::FEATURE_ENABLED_BY_DEFAULT;
-#else
- base::FEATURE_DISABLED_BY_DEFAULT;
-#endif
+ base::FEATURE_DISABLED_BY_DEFAULT;
constexpr base::FeatureState kFeatureEnabledOnlyOnAndroid =
- BUILDFLAG(IS_ANDROID) ? base::FEATURE_ENABLED_BY_DEFAULT
- : base::FEATURE_DISABLED_BY_DEFAULT;
+ base::FEATURE_DISABLED_BY_DEFAULT;
// Modifies loading predictor so that it can also use predictions coming from
// the optimization guide.
@@ -52,11 +48,7 @@ BASE_FEATURE(kLoadingPredictorUseOptimizationGuide,
kLoadingPredictorUseOptimizationGuideDefaultFeatureState);
} // namespace
const base::FeatureState kLoadingPredictorPrefetchDefaultFeatureState =
-#if BUILDFLAG(IS_ANDROID)
- base::FEATURE_ENABLED_BY_DEFAULT;
-#else
base::FEATURE_DISABLED_BY_DEFAULT;
-#endif
// Modifies loading predictor so that it does prefetches of subresources instead
// of preconnects.
@@ -103,4 +95,5 @@ size_t GetMaxInflightPrefetches() {
3));
}
+SET_CROMITE_FEATURE_DISABLED(kLoadingPredictorUseLocalPredictions);
} // namespace features
diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc
--- a/chrome/browser/ui/tab_helpers.cc
+++ b/chrome/browser/ui/tab_helpers.cc
@@ -415,7 +415,6 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) {
@@ -418,7 +418,6 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) {
}
MixedContentSettingsTabHelper::CreateForWebContents(web_contents);
NavigationMetricsRecorder::CreateForWebContents(web_contents);
@@ -258,6 +252,22 @@ diff --git a/components/omnibox/browser/autocomplete_controller.cc b/components/
#include "components/omnibox/browser/autocomplete_scoring_signals_annotator.h"
#include "components/omnibox/browser/bookmark_provider.h"
#include "components/omnibox/browser/bookmark_scoring_signals_annotator.h"
@@ -116,6 +118,7 @@ using ScoringSignals = ::metrics::OmniboxEventProto::Suggestion::ScoringSignals;
constexpr bool is_android = !!BUILDFLAG(IS_ANDROID);
+#if BUILDFLAG(BUILD_WITH_TFLITE_LIB)
void RecordMlScoreCoverage(size_t matches_with_non_null_scores,
size_t total_scored_matches) {
int percent_score_coverage =
@@ -124,6 +127,7 @@ void RecordMlScoreCoverage(size_t matches_with_non_null_scores,
"Omnibox.URLScoringModelExecuted.MLScoreCoverage",
percent_score_coverage);
}
+#endif
// Appends available autocompletion of the given type, subtype, and number to
// the existing available autocompletions string, encoding according to the
diff --git a/components/optimization_guide/core/hints_fetcher.cc b/components/optimization_guide/core/hints_fetcher.cc
--- a/components/optimization_guide/core/hints_fetcher.cc
+++ b/components/optimization_guide/core/hints_fetcher.cc
@@ -288,7 +298,7 @@ diff --git a/components/optimization_guide/core/hints_manager.cc b/components/op
InsertionOrderedSet<GURL> urls_to_fetch;
InsertionOrderedSet<std::string> hosts_to_fetch;
@@ -1420,6 +1422,9 @@ OptimizationTypeDecision HintsManager::CanApplyOptimization(
@@ -1421,6 +1423,9 @@ OptimizationTypeDecision HintsManager::CanApplyOptimization(
bool skip_cache,
OptimizationMetadata* optimization_metadata) {
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
@@ -301,7 +311,7 @@ diff --git a/components/optimization_guide/core/hints_manager.cc b/components/op
diff --git a/components/optimization_guide/core/optimization_guide_features.cc b/components/optimization_guide/core/optimization_guide_features.cc
--- a/components/optimization_guide/core/optimization_guide_features.cc
+++ b/components/optimization_guide/core/optimization_guide_features.cc
@@ -36,11 +36,7 @@ namespace features {
@@ -37,11 +37,7 @@ namespace features {
namespace {
constexpr auto enabled_by_default_mobile_only =
@@ -313,7 +323,7 @@ diff --git a/components/optimization_guide/core/optimization_guide_features.cc b
} // namespace
@@ -434,8 +430,7 @@ size_t MaxURLKeyedHintCacheSize() {
@@ -427,8 +423,7 @@ size_t MaxURLKeyedHintCacheSize() {
}
bool ShouldPersistHintsToDisk() {
@@ -323,7 +333,7 @@ diff --git a/components/optimization_guide/core/optimization_guide_features.cc b
}
RequestContextSet GetAllowedContextsForPersonalizedMetadata() {
@@ -817,5 +812,13 @@ double GetOnDeviceModelDefaultTemperature() {
@@ -814,5 +809,13 @@ double GetOnDeviceModelDefaultTemperature() {
return kTemperature.Get();
}
@@ -401,7 +411,7 @@ diff --git a/components/optimization_guide/features.gni b/components/optimizatio
diff --git a/components/page_content_annotations/core/page_content_annotations_features.cc b/components/page_content_annotations/core/page_content_annotations_features.cc
--- a/components/page_content_annotations/core/page_content_annotations_features.cc
+++ b/components/page_content_annotations/core/page_content_annotations_features.cc
@@ -264,4 +264,9 @@ size_t MaxRelatedSearchesCacheSize() {
@@ -270,4 +270,9 @@ size_t MaxRelatedSearchesCacheSize() {
"max_related_searches_cache_size", 10);
}
@@ -414,7 +424,7 @@ diff --git a/components/page_content_annotations/core/page_content_annotations_f
diff --git a/components/search/ntp_features.cc b/components/search/ntp_features.cc
--- a/components/search/ntp_features.cc
+++ b/components/search/ntp_features.cc
@@ -544,4 +544,7 @@ std::vector<std::string> GetModulesOrder() {
@@ -566,4 +566,7 @@ std::vector<std::string> GetModulesOrder() {
base::SplitResult::SPLIT_WANT_NONEMPTY);
}
@@ -467,7 +477,7 @@ diff --git a/third_party/blink/renderer/core/speculation_rules/document_speculat
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -3049,7 +3049,7 @@
@@ -3053,7 +3053,7 @@
//
// It also has some feature params defined throughout the codebase.
name: "Prerender2",
@@ -17,7 +17,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
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
@@ -1239,6 +1239,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator {
@@ -1334,6 +1334,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator {
}
private boolean maybeShowPromo(Profile profile) {
@@ -28,7 +28,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab
diff --git a/chrome/browser/ui/browser_ui_prefs.cc b/chrome/browser/ui/browser_ui_prefs.cc
--- a/chrome/browser/ui/browser_ui_prefs.cc
+++ b/chrome/browser/ui/browser_ui_prefs.cc
@@ -137,7 +137,7 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistrySyncable* registry) {
@@ -144,7 +144,7 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistrySyncable* registry) {
registry->RegisterBooleanPref(prefs::kEnterpriseHardwarePlatformAPIEnabled,
false);
@@ -40,7 +40,7 @@ diff --git a/chrome/browser/ui/browser_ui_prefs.cc b/chrome/browser/ui/browser_u
diff --git a/chrome/browser/ui/views/user_education/browser_feature_promo_controller.cc b/chrome/browser/ui/views/user_education/browser_feature_promo_controller.cc
--- a/chrome/browser/ui/views/user_education/browser_feature_promo_controller.cc
+++ b/chrome/browser/ui/views/user_education/browser_feature_promo_controller.cc
@@ -76,6 +76,7 @@ ui::ElementContext BrowserFeaturePromoController::GetAnchorContext() const {
@@ -75,6 +75,7 @@ ui::ElementContext BrowserFeaturePromoController::GetAnchorContext() const {
bool BrowserFeaturePromoController::CanShowPromoForElement(
ui::TrackedElement* anchor_element) const {
@@ -62,7 +62,7 @@ diff --git a/chrome/browser/user_education/java/src/org/chromium/chrome/browser/
diff --git a/components/user_education/common/feature_promo_controller.cc b/components/user_education/common/feature_promo_controller.cc
--- a/components/user_education/common/feature_promo_controller.cc
+++ b/components/user_education/common/feature_promo_controller.cc
@@ -600,6 +600,7 @@ FeaturePromoResult FeaturePromoControllerCommon::CanShowPromoCommon(
@@ -604,6 +604,7 @@ FeaturePromoResult FeaturePromoControllerCommon::CanShowPromoCommon(
const FeaturePromoSpecification** spec_out,
std::unique_ptr<FeaturePromoLifecycle>* lifecycle_out,
ui::TrackedElement** anchor_element_out) const {
@@ -46,7 +46,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/android_webview/browser/aw_content_browser_client.cc b/android_webview/browser/aw_content_browser_client.cc
--- a/android_webview/browser/aw_content_browser_client.cc
+++ b/android_webview/browser/aw_content_browser_client.cc
@@ -1178,6 +1178,7 @@ network::mojom::AttributionSupport
@@ -1249,6 +1249,7 @@ network::mojom::AttributionSupport
AwContentBrowserClient::GetAttributionSupport(
AttributionReportingOsApiState state,
bool client_os_disabled) {
@@ -54,7 +54,7 @@ diff --git a/android_webview/browser/aw_content_browser_client.cc b/android_webv
// WebView only supports OS-level attribution and not web-attribution.
switch (state) {
case AttributionReportingOsApiState::kDisabled:
@@ -1196,6 +1197,8 @@ bool AwContentBrowserClient::IsAttributionReportingOperationAllowed(
@@ -1267,6 +1268,8 @@ bool AwContentBrowserClient::IsAttributionReportingOperationAllowed(
const url::Origin* destination_origin,
const url::Origin* reporting_origin,
bool* can_bypass) {
@@ -95,7 +95,7 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro
<uses-permission-sdk-23 android:name="android.permission.BLUETOOTH_ADMIN" android:maxSdkVersion="30"/>
<uses-permission-sdk-23 android:name="android.permission.BLUETOOTH_CONNECT"/>
<!--
@@ -1165,9 +1164,6 @@ by a child template that "extends" this file.
@@ -1166,9 +1165,6 @@ by a child template that "extends" this file.
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|mcc|mnc|screenLayout|smallestScreenSize" >
</activity>
@@ -128,7 +128,7 @@ diff --git a/components/embedder_support/origin_trials/features.cc b/components/
diff --git a/components/renderer_context_menu/render_view_context_menu_base.cc b/components/renderer_context_menu/render_view_context_menu_base.cc
--- a/components/renderer_context_menu/render_view_context_menu_base.cc
+++ b/components/renderer_context_menu/render_view_context_menu_base.cc
@@ -502,9 +502,6 @@ RenderViewContextMenuBase::GetOpenURLParamsWithExtraHeaders(
@@ -503,9 +503,6 @@ RenderViewContextMenuBase::GetOpenURLParamsWithExtraHeaders(
open_url_params.source_site_instance = site_instance_;
@@ -141,7 +141,7 @@ diff --git a/components/renderer_context_menu/render_view_context_menu_base.cc b
diff --git a/content/browser/aggregation_service/aggregatable_report_sender.cc b/content/browser/aggregation_service/aggregatable_report_sender.cc
--- a/content/browser/aggregation_service/aggregatable_report_sender.cc
+++ b/content/browser/aggregation_service/aggregatable_report_sender.cc
@@ -137,19 +137,18 @@ void AggregatableReportSender::SendReport(const GURL& url,
@@ -138,19 +138,18 @@ void AggregatableReportSender::SendReport(const GURL& url,
// Allow bodies of non-2xx responses to be returned.
simple_url_loader_ptr->SetAllowHttpErrorResults(true);
@@ -180,10 +180,10 @@ diff --git a/content/browser/aggregation_service/aggregation_service_features.cc
diff --git a/content/browser/attribution_reporting/attribution_data_host_manager_impl.cc b/content/browser/attribution_reporting/attribution_data_host_manager_impl.cc
--- a/content/browser/attribution_reporting/attribution_data_host_manager_impl.cc
+++ b/content/browser/attribution_reporting/attribution_data_host_manager_impl.cc
@@ -1041,6 +1041,7 @@ void AttributionDataHostManagerImpl::ParseHeader(
@@ -1100,6 +1100,7 @@ void AttributionDataHostManagerImpl::ParseHeader(
HeaderPendingDecode pending_decode,
Registrar registrar) {
DCHECK(it != registrations_.end());
CHECK(it != registrations_.end());
+ if ((true)) return;
switch (it->eligibility()) {
@@ -248,7 +248,7 @@ diff --git a/content/browser/attribution_reporting/attribution_report_network_se
diff --git a/content/browser/attribution_reporting/attribution_storage_sql.cc b/content/browser/attribution_reporting/attribution_storage_sql.cc
--- a/content/browser/attribution_reporting/attribution_storage_sql.cc
+++ b/content/browser/attribution_reporting/attribution_storage_sql.cc
@@ -459,14 +459,16 @@ base::FilePath DatabasePath(const base::FilePath& user_data_directory) {
@@ -461,14 +461,16 @@ base::FilePath DatabasePath(const base::FilePath& user_data_directory) {
return user_data_directory.Append(kDatabasePath);
}
@@ -271,7 +271,7 @@ diff --git a/content/browser/attribution_reporting/attribution_storage_sql.cc b/
diff --git a/content/browser/storage_partition_impl.cc b/content/browser/storage_partition_impl.cc
--- a/content/browser/storage_partition_impl.cc
+++ b/content/browser/storage_partition_impl.cc
@@ -1451,15 +1451,6 @@ void StoragePartitionImpl::Initialize(
@@ -1452,15 +1452,6 @@ void StoragePartitionImpl::Initialize(
bucket_manager_ = std::make_unique<BucketManager>(this);
@@ -321,7 +321,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/Attrib
import org.jni_zero.CalledByNative;
import org.jni_zero.JNINamespace;
@@ -54,6 +42,10 @@ import java.util.concurrent.TimeoutException;
@@ -55,6 +43,10 @@ import java.util.concurrent.TimeoutException;
*/
@JNINamespace("content")
public class AttributionOsLevelManager {
@@ -332,7 +332,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/Attrib
private static final String TAG = "AttributionManager";
// TODO: replace with constant in android.Manifest.permission once it becomes available in U.
private static final String PERMISSION_ACCESS_ADSERVICES_ATTRIBUTION =
@@ -118,63 +110,11 @@ public class AttributionOsLevelManager {
@@ -119,63 +111,11 @@ public class AttributionOsLevelManager {
}
private static boolean supportsAttribution() {
@@ -397,7 +397,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/Attrib
}
@CalledByNative
@@ -183,22 +123,7 @@ public class AttributionOsLevelManager {
@@ -184,22 +124,7 @@ public class AttributionOsLevelManager {
}
private MeasurementManagerFutures getManager() {
@@ -421,7 +421,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/Attrib
}
private void onRegistrationCompleted(
@@ -212,28 +137,6 @@ public class AttributionOsLevelManager {
@@ -213,28 +138,6 @@ public class AttributionOsLevelManager {
}
}
@@ -450,7 +450,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/Attrib
@CalledByNative
private static List<WebSourceParams> createWebSourceParamsList(int size) {
if (!supportsAttribution()) {
@@ -248,7 +151,6 @@ public class AttributionOsLevelManager {
@@ -249,7 +152,6 @@ public class AttributionOsLevelManager {
if (!supportsAttribution()) {
return;
}
@@ -458,7 +458,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/Attrib
}
/**
@@ -265,32 +167,12 @@ public class AttributionOsLevelManager {
@@ -266,32 +168,12 @@ public class AttributionOsLevelManager {
OperationResult.ERROR_VERSION_UNSUPPORTED);
return;
}
@@ -490,8 +490,8 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/Attrib
- .RegisterSourceOptIn.class)
@CalledByNative
private void registerAttributionSource(
int requestId, GURL[] registrationUrls, MotionEvent event) {
@@ -301,37 +183,16 @@ public class AttributionOsLevelManager {
int requestId, @JniType("std::vector") GURL[] registrationUrls, MotionEvent event) {
@@ -302,37 +184,16 @@ public class AttributionOsLevelManager {
OperationResult.ERROR_VERSION_UNSUPPORTED);
return;
}
@@ -530,7 +530,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/Attrib
}
/**
@@ -348,18 +209,6 @@ public class AttributionOsLevelManager {
@@ -349,18 +210,6 @@ public class AttributionOsLevelManager {
OperationResult.ERROR_VERSION_UNSUPPORTED);
return;
}
@@ -549,7 +549,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/Attrib
}
/**
@@ -375,15 +224,6 @@ public class AttributionOsLevelManager {
@@ -376,15 +225,6 @@ public class AttributionOsLevelManager {
OperationResult.ERROR_VERSION_UNSUPPORTED);
return;
}
@@ -565,7 +565,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/Attrib
}
private void onDataDeletionCompleted(int requestId) {
@@ -418,96 +258,7 @@ public class AttributionOsLevelManager {
@@ -419,96 +259,7 @@ public class AttributionOsLevelManager {
onDataDeletionCompleted(requestId);
return;
}
@@ -663,7 +663,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/Attrib
}
private static void onMeasurementStateReturned(int status, @OperationResult int result) {
@@ -523,6 +274,10 @@ public class AttributionOsLevelManager {
@@ -524,6 +275,10 @@ public class AttributionOsLevelManager {
private static void getMeasurementApiStatus() {
ThreadUtils.assertOnBackgroundThread();
@@ -674,7 +674,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/Attrib
if (sManagerForTesting != null) {
AttributionOsLevelManagerJni.get().onMeasurementStateReturned(1);
return;
@@ -542,49 +297,6 @@ public class AttributionOsLevelManager {
@@ -543,49 +298,6 @@ public class AttributionOsLevelManager {
onMeasurementStateReturned(/* status= */ 0, OperationResult.ERROR_PERMISSION_UNGRANTED);
return;
}
@@ -727,7 +727,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/Attrib
diff --git a/content/public/browser/content_browser_client.cc b/content/public/browser/content_browser_client.cc
--- a/content/public/browser/content_browser_client.cc
+++ b/content/public/browser/content_browser_client.cc
@@ -539,6 +539,7 @@ void ContentBrowserClient::OnAuctionComplete(
@@ -544,6 +544,7 @@ void ContentBrowserClient::OnAuctionComplete(
network::mojom::AttributionSupport ContentBrowserClient::GetAttributionSupport(
AttributionReportingOsApiState state,
bool client_os_disabled) {
@@ -735,7 +735,7 @@ diff --git a/content/public/browser/content_browser_client.cc b/content/public/b
switch (state) {
case AttributionReportingOsApiState::kDisabled:
return network::mojom::AttributionSupport::kWeb;
@@ -556,13 +557,13 @@ bool ContentBrowserClient::IsAttributionReportingOperationAllowed(
@@ -561,13 +562,13 @@ bool ContentBrowserClient::IsAttributionReportingOperationAllowed(
const url::Origin* destination_origin,
const url::Origin* reporting_origin,
bool* can_bypass) {
@@ -743,15 +743,15 @@ diff --git a/content/public/browser/content_browser_client.cc b/content/public/b
+ return false;
}
ContentBrowserClient::AttributionReportingOsReportTypes
ContentBrowserClient::GetAttributionReportingOsReportTypes(
ContentBrowserClient::AttributionReportingOsRegistrars
ContentBrowserClient::GetAttributionReportingOsRegistrars(
WebContents* web_contents) {
- return {AttributionReportType::kWeb, AttributionReportType::kWeb};
+ return {AttributionReportType::kDisabled, AttributionReportType::kDisabled};
}
bool ContentBrowserClient::IsAttributionReportingAllowedForContext(
@@ -570,7 +571,7 @@ bool ContentBrowserClient::IsAttributionReportingAllowedForContext(
@@ -575,7 +576,7 @@ bool ContentBrowserClient::IsAttributionReportingAllowedForContext(
content::RenderFrameHost* rfh,
const url::Origin& context_origin,
const url::Origin& reporting_origin) {
@@ -836,7 +836,7 @@ diff --git a/services/network/public/cpp/attribution_utils.cc b/services/network
diff --git a/third_party/blink/renderer/core/page/page.cc b/third_party/blink/renderer/core/page/page.cc
--- a/third_party/blink/renderer/core/page/page.cc
+++ b/third_party/blink/renderer/core/page/page.cc
@@ -1383,7 +1383,7 @@ void Page::UpdateBrowsingContextGroup(
@@ -1399,7 +1399,7 @@ void Page::UpdateBrowsingContextGroup(
void Page::SetAttributionSupport(
network::mojom::AttributionSupport attribution_support) {
+1 -1
View File
@@ -11,7 +11,7 @@ Subject: Disable crash reporting
diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc
--- a/chrome/browser/chrome_content_browser_client.cc
+++ b/chrome/browser/chrome_content_browser_client.cc
@@ -2522,15 +2522,6 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches(
@@ -2556,15 +2556,6 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches(
base::NumberToString(pid));
}
#endif
@@ -7,14 +7,14 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
chrome/browser/prefs/browser_prefs.cc | 4 ++--
components/feed/core/common/pref_names.cc | 13 +------------
components/feed/core/shared_prefs/pref_names.cc | 2 +-
components/feed/feed_feature_list.cc | 2 ++
4 files changed, 6 insertions(+), 15 deletions(-)
components/feed/feed_feature_list.cc | 3 +++
4 files changed, 7 insertions(+), 15 deletions(-)
diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc
--- a/chrome/browser/prefs/browser_prefs.cc
+++ b/chrome/browser/prefs/browser_prefs.cc
@@ -1876,10 +1876,10 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
supervised_user::RegisterProfilePrefs(registry);
@@ -1925,10 +1925,10 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
ChromeRLZTrackerDelegate::RegisterProfilePrefs(registry);
#endif
-#if BUILDFLAG(ENABLE_FEED_V2)
@@ -29,7 +29,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse
diff --git a/components/feed/core/common/pref_names.cc b/components/feed/core/common/pref_names.cc
--- a/components/feed/core/common/pref_names.cc
+++ b/components/feed/core/common/pref_names.cc
@@ -105,18 +105,7 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) {
@@ -107,18 +107,7 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) {
}
void MigrateObsoleteProfilePrefsOct_2022(PrefService* prefs) {
@@ -64,11 +64,17 @@ diff --git a/components/feed/core/shared_prefs/pref_names.cc b/components/feed/c
diff --git a/components/feed/feed_feature_list.cc b/components/feed/feed_feature_list.cc
--- a/components/feed/feed_feature_list.cc
+++ b/components/feed/feed_feature_list.cc
@@ -152,4 +152,6 @@ BASE_FEATURE(kRefreshFeedOnRestart,
"RefreshFeedOnRestart",
@@ -151,9 +151,12 @@ BASE_FEATURE(kFeedContainment,
base::FEATURE_DISABLED_BY_DEFAULT);
bool IsWebFeedEnabledForLocale(const std::string& country) {
+ if ((true)) return false;
const std::vector<std::string> launched_countries = {"AU", "CA", "GB",
"NZ", "US", "ZA"};
return base::Contains(launched_countries, country);
}
+SET_CROMITE_FEATURE_DISABLED(kInterestFeedV2);
+SET_CROMITE_FEATURE_DISABLED(kWebFeed);
+
} // namespace feed
--
@@ -7,7 +7,8 @@ Disable reporting of Omnibox suggestions header.
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
android_webview/common/aw_features.cc | 4 +--
.../origin_trials_component_loader.cc | 1 +
android_webview/common/aw_content_client.cc | 2 ++
android_webview/nonembedded/BUILD.gn | 2 --
...eddedFastVariationsSeedSafeModeAction.java | 2 --
...SafeModeVariationsSeedContentProvider.java | 5 ---
@@ -27,23 +28,32 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../variations_render_thread_observer.cc | 9 -----
.../Disable-fetching-of-all-field-trials.inc | 1 +
.../renderer/core/loader/document_loader.cc | 7 ----
20 files changed, 28 insertions(+), 91 deletions(-)
21 files changed, 29 insertions(+), 89 deletions(-)
create mode 100644 cromite_flags/content/public/common/content_features_cc/Disable-fetching-of-all-field-trials.inc
diff --git a/android_webview/common/aw_features.cc b/android_webview/common/aw_features.cc
--- a/android_webview/common/aw_features.cc
+++ b/android_webview/common/aw_features.cc
@@ -119,8 +119,8 @@ BASE_FEATURE(kWebViewJavaJsBridgeMojo,
diff --git a/android_webview/browser/component_updater/origin_trials_component_loader.cc b/android_webview/browser/component_updater/origin_trials_component_loader.cc
--- a/android_webview/browser/component_updater/origin_trials_component_loader.cc
+++ b/android_webview/browser/component_updater/origin_trials_component_loader.cc
@@ -14,6 +14,7 @@ namespace android_webview {
// Field trial feature for controlling support of Origin Trials on WebView.
BASE_FEATURE(kWebViewOriginTrials,
- "WebViewOriginTrials",
- base::FEATURE_ENABLED_BY_DEFAULT);
+ "WebViewOriginTrials", // disabled
+ base::FEATURE_DISABLED_BY_DEFAULT); // by default
void LoadOriginTrialsComponent(
component_updater::ComponentLoaderPolicyVector& policies) {
+ if ((true)) return;
policies.push_back(std::make_unique<OriginTrialsComponentLoaderPolicy>());
}
// Whether to record size of the embedding app's data directory to the UMA
// histogram Android.WebView.AppDataDirectorySize.
diff --git a/android_webview/common/aw_content_client.cc b/android_webview/common/aw_content_client.cc
--- a/android_webview/common/aw_content_client.cc
+++ b/android_webview/common/aw_content_client.cc
@@ -113,6 +113,8 @@ void AwContentClient::ExposeInterfacesToBrowser(
}
blink::OriginTrialPolicy* AwContentClient::GetOriginTrialPolicy() {
+ if ((true)) return nullptr;
+
// Prevent initialization race (see crbug.com/721144). There may be a
// race when the policy is needed for worker startup (which happens on a
// separate worker thread).
diff --git a/android_webview/nonembedded/BUILD.gn b/android_webview/nonembedded/BUILD.gn
--- a/android_webview/nonembedded/BUILD.gn
+++ b/android_webview/nonembedded/BUILD.gn
@@ -142,7 +152,7 @@ diff --git a/chrome/browser/net/system_network_context_manager.cc b/chrome/brows
diff --git a/components/ukm/ukm_recorder_impl.cc b/components/ukm/ukm_recorder_impl.cc
--- a/components/ukm/ukm_recorder_impl.cc
+++ b/components/ukm/ukm_recorder_impl.cc
@@ -165,6 +165,9 @@ bool HasUnknownMetrics(const builders::DecodeMap& decode_map,
@@ -190,6 +190,9 @@ std::string WebFeaturesToStringForDebug(
UkmRecorderImpl::UkmRecorderImpl()
: sampling_seed_(static_cast<uint32_t>(base::RandUint64())) {
@@ -167,7 +177,7 @@ diff --git a/components/variations/android/java/src/org/chromium/components/vari
diff --git a/components/variations/android/java/src/org/chromium/components/variations/firstrun/VariationsSeedFetcher.java b/components/variations/android/java/src/org/chromium/components/variations/firstrun/VariationsSeedFetcher.java
--- a/components/variations/android/java/src/org/chromium/components/variations/firstrun/VariationsSeedFetcher.java
+++ b/components/variations/android/java/src/org/chromium/components/variations/firstrun/VariationsSeedFetcher.java
@@ -468,39 +468,13 @@ public class VariationsSeedFetcher {
@@ -469,39 +469,13 @@ public class VariationsSeedFetcher {
*/
public void fetchSeed(String restrictMode, String milestone, String channel) {
assert !ThreadUtils.runningOnUiThread();
@@ -211,7 +221,7 @@ diff --git a/components/variations/android/java/src/org/chromium/components/vari
}
private void recordFetchResultOrCode(int resultOrCode) {
@@ -552,7 +526,7 @@ public class VariationsSeedFetcher {
@@ -553,7 +527,7 @@ public class VariationsSeedFetcher {
* @param curSeedInfo optional currently saved seed info to set the `If-None-Match` header.
* @return the object holds the request result and seed data with its related header fields.
*/
@@ -357,9 +367,9 @@ diff --git a/content/browser/loader/url_loader_throttles.cc b/content/browser/lo
diff --git a/content/browser/origin_trials/origin_trials_utils.cc b/content/browser/origin_trials/origin_trials_utils.cc
--- a/content/browser/origin_trials/origin_trials_utils.cc
+++ b/content/browser/origin_trials/origin_trials_utils.cc
@@ -14,7 +14,7 @@ namespace {
@@ -15,7 +15,7 @@ namespace {
std::vector<std::string> GetHeaderValues(
base::StringPiece header_name,
std::string_view header_name,
const net::HttpResponseHeaders* headers) {
- if (!headers) {
+ if ((true)) {
@@ -394,7 +404,7 @@ new file mode 100644
diff --git a/third_party/blink/renderer/core/loader/document_loader.cc b/third_party/blink/renderer/core/loader/document_loader.cc
--- a/third_party/blink/renderer/core/loader/document_loader.cc
+++ b/third_party/blink/renderer/core/loader/document_loader.cc
@@ -198,13 +198,6 @@ WebVector<int> CopyInitiatorOriginTrials(
@@ -197,13 +197,6 @@ WebVector<int> CopyInitiatorOriginTrials(
const Vector<mojom::blink::OriginTrialFeature>&
initiator_origin_trial_features) {
WebVector<int> result;
+1 -1
View File
@@ -55,7 +55,7 @@ diff --git a/third_party/blink/renderer/modules/idle/idle_detector.idl b/third_p
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -2108,6 +2108,11 @@
@@ -2081,6 +2081,11 @@
name: "HTMLUnsafeMethods",
status: "stable",
},
@@ -10,7 +10,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/components/omnibox/common/omnibox_features.cc b/components/omnibox/common/omnibox_features.cc
--- a/components/omnibox/common/omnibox_features.cc
+++ b/components/omnibox/common/omnibox_features.cc
@@ -431,8 +431,8 @@ BASE_FEATURE(kOmniboxModernizeVisualUpdate,
@@ -420,8 +420,8 @@ BASE_FEATURE(kOmniboxModernizeVisualUpdate,
// used, on non-Android platforms this is controlled through the
// ChromeRefresh2023 flag.
BASE_FEATURE(kUpdatedConnectionSecurityIndicators,
@@ -43,7 +43,7 @@ diff --git a/chrome/browser/media/router/media_router_feature.cc b/chrome/browse
diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/profile_impl.cc
--- a/chrome/browser/profiles/profile_impl.cc
+++ b/chrome/browser/profiles/profile_impl.cc
@@ -425,7 +425,7 @@ void ProfileImpl::RegisterProfilePrefs(
@@ -421,7 +421,7 @@ void ProfileImpl::RegisterProfilePrefs(
#endif
registry->RegisterBooleanPref(prefs::kForceEphemeralProfiles, false);
@@ -55,7 +55,7 @@ diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/p
diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.cc
--- a/content/child/runtime_features.cc
+++ b/content/child/runtime_features.cc
@@ -588,6 +588,8 @@ void SetCustomizedRuntimeFeaturesFromCombinedArgs(
@@ -578,6 +578,8 @@ void SetCustomizedRuntimeFeaturesFromCombinedArgs(
WebRuntimeFeatures::EnableBackForwardCache(
content::IsBackForwardCacheEnabled());
@@ -79,7 +79,7 @@ diff --git a/third_party/blink/renderer/modules/remoteplayback/remote_playback.c
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -3176,14 +3176,10 @@
@@ -3180,14 +3180,10 @@
base_feature: "none",
},
{
@@ -11,7 +11,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/components/endpoint_fetcher/endpoint_fetcher.cc b/components/endpoint_fetcher/endpoint_fetcher.cc
--- a/components/endpoint_fetcher/endpoint_fetcher.cc
+++ b/components/endpoint_fetcher/endpoint_fetcher.cc
@@ -367,7 +367,7 @@ void EndpointFetcher::OnResponseFetched(
@@ -369,7 +369,7 @@ void EndpointFetcher::OnResponseFetched(
}
} else {
std::string net_error = net::ErrorToString(net_error_code);
@@ -10,7 +10,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc
--- a/third_party/blink/renderer/core/frame/local_frame.cc
+++ b/third_party/blink/renderer/core/frame/local_frame.cc
@@ -2169,9 +2169,7 @@ WebContentSettingsClient* LocalFrame::GetContentSettingsClient() {
@@ -2173,9 +2173,7 @@ WebContentSettingsClient* LocalFrame::GetContentSettingsClient() {
}
PluginData* LocalFrame::GetPluginData() const {
@@ -13,7 +13,7 @@ This feature can be used for fingerprinting as it exposes a user preference
diff --git a/third_party/blink/renderer/core/css/media_query_exp.cc b/third_party/blink/renderer/core/css/media_query_exp.cc
--- a/third_party/blink/renderer/core/css/media_query_exp.cc
+++ b/third_party/blink/renderer/core/css/media_query_exp.cc
@@ -114,7 +114,8 @@ static inline bool FeatureWithValidIdent(const String& media_feature,
@@ -115,7 +115,8 @@ static inline bool FeatureWithValidIdent(const String& media_feature,
ident == CSSValueID::kLess || ident == CSSValueID::kCustom;
}
@@ -5,20 +5,21 @@ Subject: Disable privacy issues in password manager
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
chrome/android/java/AndroidManifest.xml | 9 ---------
.../android/password_store_android_local_backend.cc | 3 +--
...sword_store_android_backend_dispatcher_bridge_impl.cc | 1 +
.../android/password_store_android_local_backend.cc | 2 +-
.../generated_password_leak_detection_pref.cc | 3 +--
.../affiliations/core/browser/affiliation_backend.cc | 1 +
.../core/browser/affiliation_service_impl.cc | 4 ++++
components/affiliations/core/browser/facet_manager.cc | 4 ++++
.../core/browser/features/password_features.cc | 7 +++++++
.../core/browser/features/password_features.cc | 4 ++++
.../leak_detection/leak_detection_check_factory_impl.cc | 5 +++++
.../browser/leak_detection/leak_detection_check_impl.cc | 4 +---
9 files changed, 24 insertions(+), 16 deletions(-)
10 files changed, 22 insertions(+), 15 deletions(-)
diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/AndroidManifest.xml
--- a/chrome/android/java/AndroidManifest.xml
+++ b/chrome/android/java/AndroidManifest.xml
@@ -450,15 +450,6 @@ by a child template that "extends" this file.
@@ -453,15 +453,6 @@ by a child template that "extends" this file.
</intent-filter>
</receiver>
@@ -34,19 +35,29 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro
<!-- Upgrade related -->
<receiver android:name="org.chromium.chrome.browser.upgrade.PackageReplacedBroadcastReceiver"
android:exported="false">
diff --git a/chrome/browser/password_manager/android/password_store_android_backend_dispatcher_bridge_impl.cc b/chrome/browser/password_manager/android/password_store_android_backend_dispatcher_bridge_impl.cc
--- a/chrome/browser/password_manager/android/password_store_android_backend_dispatcher_bridge_impl.cc
+++ b/chrome/browser/password_manager/android/password_store_android_backend_dispatcher_bridge_impl.cc
@@ -66,6 +66,7 @@ bool PasswordStoreAndroidBackendDispatcherBridge::
bool PasswordStoreAndroidBackendDispatcherBridge::
CanUseGetAllLoginsWithBrandingInfoAPI() {
+ if ((true)) return false;
base::android::BuildInfo* info = base::android::BuildInfo::GetInstance();
int current_gms_core_version;
if (!base::StringToInt(info->gms_version_code(), &current_gms_core_version)) {
diff --git a/chrome/browser/password_manager/android/password_store_android_local_backend.cc b/chrome/browser/password_manager/android/password_store_android_local_backend.cc
--- a/chrome/browser/password_manager/android/password_store_android_local_backend.cc
+++ b/chrome/browser/password_manager/android/password_store_android_local_backend.cc
@@ -34,8 +34,7 @@ PasswordStoreAndroidLocalBackend::PasswordStoreAndroidLocalBackend(
: PasswordStoreAndroidBackend(std::move(bridge_helper),
std::move(lifecycle_helper),
prefs) {
- if (base::FeatureList::IsEnabled(
- password_manager::features::kUseGMSCoreForBrandingInfo)) {
+ if ((true)) {
// AccountBackend doesn't call `DisablePrefetching` when sync is turned off.
// This is why we have to explicitly call it here whenever local GMSCore is
// created.
@@ -37,7 +37,7 @@ PasswordStoreAndroidLocalBackend::PasswordStoreAndroidLocalBackend(
// AccountBackend doesn't call `DisablePrefetching` when sync is turned off.
// This is why we have to explicitly call it here whenever local GMSCore is
// created.
- affiliations_prefetcher->DisablePrefetching();
+ if ((true)) affiliations_prefetcher->DisablePrefetching();
}
PasswordStoreAndroidLocalBackend::~PasswordStoreAndroidLocalBackend() = default;
diff --git a/chrome/browser/password_manager/generated_password_leak_detection_pref.cc b/chrome/browser/password_manager/generated_password_leak_detection_pref.cc
--- a/chrome/browser/password_manager/generated_password_leak_detection_pref.cc
+++ b/chrome/browser/password_manager/generated_password_leak_detection_pref.cc
@@ -102,16 +113,13 @@ diff --git a/components/affiliations/core/browser/facet_manager.cc b/components/
diff --git a/components/password_manager/core/browser/features/password_features.cc b/components/password_manager/core/browser/features/password_features.cc
--- a/components/password_manager/core/browser/features/password_features.cc
+++ b/components/password_manager/core/browser/features/password_features.cc
@@ -191,4 +191,11 @@ BASE_FEATURE(kUseGMSCoreForBrandingInfo,
@@ -194,4 +194,8 @@ BASE_FEATURE(kUsernameFirstFlowWithIntermediateValuesVoting,
"UsernameFirstFlowWithIntermediateValuesVoting",
base::FEATURE_ENABLED_BY_DEFAULT);
#endif
+SET_CROMITE_FEATURE_ENABLED(kFillOnAccountSelect);
+SET_CROMITE_FEATURE_DISABLED(kPasswordManagerEnableReceiverService);
+SET_CROMITE_FEATURE_DISABLED(kPasswordManagerEnableSenderService);
+#if BUILDFLAG(IS_ANDROID)
+SET_CROMITE_FEATURE_DISABLED(kUseGMSCoreForBrandingInfo);
+#endif
+
} // namespace password_manager::features
diff --git a/components/password_manager/core/browser/leak_detection/leak_detection_check_factory_impl.cc b/components/password_manager/core/browser/leak_detection/leak_detection_check_factory_impl.cc
@@ -26,7 +26,7 @@ diff --git a/net/http/http_server_properties_manager.cc b/net/http/http_server_p
diff --git a/net/http/http_stream_factory_job_controller.cc b/net/http/http_stream_factory_job_controller.cc
--- a/net/http/http_stream_factory_job_controller.cc
+++ b/net/http/http_stream_factory_job_controller.cc
@@ -1256,11 +1256,7 @@ HttpStreamFactory::JobController::GetAlternativeServiceInfoInternal(
@@ -1259,11 +1259,7 @@ HttpStreamFactory::JobController::GetAlternativeServiceInfoInternal(
// single user on a multi-user system to hijack the alternate protocol.
// These systems also enforce ports <1024 as restricted ports. So don't
// allow protocol upgrades to user-controllable ports.
@@ -39,7 +39,7 @@ diff --git a/net/http/http_stream_factory_job_controller.cc b/net/http/http_stre
continue;
}
@@ -1305,8 +1301,7 @@ HttpStreamFactory::JobController::GetAlternativeServiceInfoInternal(
@@ -1307,8 +1303,7 @@ HttpStreamFactory::JobController::GetAlternativeServiceInfoInternal(
GURL destination = CreateAltSvcUrl(
original_url, alternative_service_info.host_port_pair());
@@ -52,7 +52,7 @@ diff --git a/net/http/http_stream_factory_job_controller.cc b/net/http/http_stre
diff --git a/net/quic/quic_context.h b/net/quic/quic_context.h
--- a/net/quic/quic_context.h
+++ b/net/quic/quic_context.h
@@ -186,7 +186,7 @@ struct NET_EXPORT QuicParams {
@@ -185,7 +185,7 @@ struct NET_EXPORT QuicParams {
bool allow_server_migration = false;
// If true, allows QUIC to use alternative services with a different
// hostname from the origin.
+7 -7
View File
@@ -16,7 +16,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
--- a/chrome/android/BUILD.gn
+++ b/chrome/android/BUILD.gn
@@ -433,7 +433,6 @@ if (current_toolchain == default_toolchain) {
@@ -437,7 +437,6 @@ if (current_toolchain == default_toolchain) {
"//chrome/browser/recent_tabs:helper_java",
"//chrome/browser/recent_tabs:java",
"//chrome/browser/safe_browsing/android:java",
@@ -24,16 +24,16 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
"//chrome/browser/safety_hub/android:java",
"//chrome/browser/screenshot_monitor:java",
"//chrome/browser/search_engines/android:java",
@@ -1081,8 +1080,6 @@ if (current_toolchain == default_toolchain) {
@@ -1095,8 +1094,6 @@ if (current_toolchain == default_toolchain) {
"//chrome/browser/recent_tabs:java",
"//chrome/browser/recent_tabs:junit",
"//chrome/browser/recent_tabs/internal:junit",
- "//chrome/browser/safety_check/android:java",
- "//chrome/browser/safety_check/android:junit",
"//chrome/browser/safety_hub/android:java",
"//chrome/browser/safety_hub/android:junit",
"//chrome/browser/screenshot_monitor:java",
"//chrome/browser/search_engines/android:java",
@@ -1709,8 +1706,6 @@ if (current_toolchain == default_toolchain) {
@@ -1732,8 +1729,6 @@ if (current_toolchain == default_toolchain) {
"//chrome/browser/quick_delete:javatests",
"//chrome/browser/safe_browsing/android:java",
"//chrome/browser/safe_browsing/android:javatests",
@@ -52,7 +52,7 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java
- "java/src/org/chromium/chrome/browser/safety_check/SafetyCheckUpdatesDelegateImpl.java",
"java/src/org/chromium/chrome/browser/searchwidget/SearchActivity.java",
"java/src/org/chromium/chrome/browser/searchwidget/SearchActivityLocationBarLayout.java",
"java/src/org/chromium/chrome/browser/searchwidget/SearchActivityUtils.java",
"java/src/org/chromium/chrome/browser/searchwidget/SearchActivityTabDelegateFactory.java",
diff --git a/chrome/android/java/res/xml/main_preferences.xml b/chrome/android/java/res/xml/main_preferences.xml
--- a/chrome/android/java/res/xml/main_preferences.xml
+++ b/chrome/android/java/res/xml/main_preferences.xml
@@ -126,14 +126,14 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Settin
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -3482,7 +3482,6 @@ static_library("browser") {
@@ -3550,7 +3550,6 @@ static_library("browser") {
"//chrome/browser/reading_list/android",
"//chrome/browser/recent_tabs:jni_headers",
"//chrome/browser/safe_browsing/android:safe_browsing_enums",
- "//chrome/browser/safety_check/android",
"//chrome/browser/safety_hub/android",
"//chrome/browser/search_resumption:jni_headers",
"//chrome/browser/signin/services/android:jni_headers",
"//chrome/browser/sync/android:jni_headers",
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/action/OmniboxPedal.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/action/OmniboxPedal.java
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/action/OmniboxPedal.java
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/action/OmniboxPedal.java
@@ -44,7 +44,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextualsearc
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc
--- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -181,6 +181,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
@@ -186,6 +186,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
&kCCTEmbedderSpecialBehaviorTrigger,
&kCCTExtendTrustedCdnPublisher,
&kCCTFeatureUsage,
@@ -55,7 +55,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
--- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
@@ -217,6 +217,7 @@ public abstract class ChromeFeatureList {
@@ -227,6 +227,7 @@ public abstract class ChromeFeatureList {
public static final String CCT_MINIMIZED_ENABLED_BY_DEFAULT = "CCTMinimizedEnabledByDefault";
public static final String CCT_INTENT_FEATURE_OVERRIDES = "CCTIntentFeatureOverrides";
public static final String CCT_PAGE_INSIGHTS_HUB = "CCTPageInsightsHub";
@@ -31,7 +31,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer/chrome_content_renderer_client.cc
--- a/chrome/renderer/chrome_content_renderer_client.cc
+++ b/chrome/renderer/chrome_content_renderer_client.cc
@@ -1636,7 +1636,7 @@ ChromeContentRendererClient::CreateWorkerContentSettingsClient(
@@ -1631,7 +1631,7 @@ ChromeContentRendererClient::CreateWorkerContentSettingsClient(
std::unique_ptr<media::SpeechRecognitionClient>
ChromeContentRendererClient::CreateSpeechRecognitionClient(
content::RenderFrame* render_frame) {
@@ -43,7 +43,7 @@ diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer
diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc b/components/content_settings/renderer/content_settings_agent_impl.cc
--- a/components/content_settings/renderer/content_settings_agent_impl.cc
+++ b/components/content_settings/renderer/content_settings_agent_impl.cc
@@ -489,6 +489,14 @@ bool ContentSettingsAgentImpl::IsAllowlistedForContentSettings() const {
@@ -484,6 +484,14 @@ bool ContentSettingsAgentImpl::IsAllowlistedForContentSettingsCromite() const {
return false;
}
@@ -58,7 +58,7 @@ diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc
bool ContentSettingsAgentImpl::UpdateOverrides() {
// Evaluate the content setting rules
ContentSetting setting = CONTENT_SETTING_ALLOW;
@@ -499,7 +507,6 @@ bool ContentSettingsAgentImpl::UpdateOverrides() {
@@ -494,7 +502,6 @@ bool ContentSettingsAgentImpl::UpdateOverrides() {
}
return UpdateTimeZoneOverride(
setting, content_setting_rules_->timezone_override_value);
@@ -69,7 +69,7 @@ diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc
diff --git a/components/content_settings/renderer/content_settings_agent_impl.h b/components/content_settings/renderer/content_settings_agent_impl.h
--- a/components/content_settings/renderer/content_settings_agent_impl.h
+++ b/components/content_settings/renderer/content_settings_agent_impl.h
@@ -121,6 +121,8 @@ class ContentSettingsAgentImpl
@@ -123,6 +123,8 @@ class ContentSettingsAgentImpl
void SetRendererContentSettingRulesForTest(
const RendererContentSettingRules& rules);
@@ -139,7 +139,7 @@ new file mode 100644
diff --git a/third_party/blink/public/platform/web_content_settings_client.h b/third_party/blink/public/platform/web_content_settings_client.h
--- a/third_party/blink/public/platform/web_content_settings_client.h
+++ b/third_party/blink/public/platform/web_content_settings_client.h
@@ -111,6 +111,8 @@ class WebContentSettingsClient {
@@ -115,6 +115,8 @@ class WebContentSettingsClient {
// frame.
virtual bool ShouldAutoupgradeMixedContent() { return true; }
@@ -34,7 +34,7 @@ diff --git a/chrome/browser/ui/prefs/prefs_tab_helper.cc b/chrome/browser/ui/pre
diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.cc
--- a/content/child/runtime_features.cc
+++ b/content/child/runtime_features.cc
@@ -306,6 +306,8 @@ void SetRuntimeFeaturesFromChromiumFeatures() {
@@ -296,6 +296,8 @@ void SetRuntimeFeaturesFromChromiumFeatures() {
#endif
{wf::EnableTouchDragAndContextMenu,
raw_ref(features::kTouchDragAndContextMenu)},
@@ -74,7 +74,7 @@ new file mode 100644
diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink/renderer/core/dom/document.cc
--- a/third_party/blink/renderer/core/dom/document.cc
+++ b/third_party/blink/renderer/core/dom/document.cc
@@ -4678,9 +4678,14 @@ void Document::SetURL(const KURL& url) {
@@ -4684,9 +4684,14 @@ void Document::SetURL(const KURL& url) {
TRACE_EVENT_FLAG_FLOW_IN | TRACE_EVENT_FLAG_FLOW_OUT,
"url", new_url.GetString().Utf8());
@@ -92,7 +92,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -3814,10 +3814,9 @@
@@ -3818,10 +3818,9 @@
},
{
name: "TextFragmentIdentifiers",
@@ -20,7 +20,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/android_webview/common/aw_content_client.cc b/android_webview/common/aw_content_client.cc
--- a/android_webview/common/aw_content_client.cc
+++ b/android_webview/common/aw_content_client.cc
@@ -129,7 +129,6 @@ blink::OriginTrialPolicy* AwContentClient::GetOriginTrialPolicy() {
@@ -126,7 +126,6 @@ blink::OriginTrialPolicy* AwContentClient::GetOriginTrialPolicy() {
// flag to true after construction. This will work because trial token
// validator will always get the current instance of policy when needed.
if (IsDisableOriginTrialsSafeModeActionOn()) {
@@ -76,7 +76,7 @@ diff --git a/components/embedder_support/origin_trials/origin_trial_policy_impl.
diff --git a/content/browser/renderer_host/navigation_request.cc b/content/browser/renderer_host/navigation_request.cc
--- a/content/browser/renderer_host/navigation_request.cc
+++ b/content/browser/renderer_host/navigation_request.cc
@@ -8849,7 +8849,6 @@ void NavigationRequest::SetSourceSiteInstanceToInitiatorIfNeeded() {
@@ -8858,7 +8858,6 @@ void NavigationRequest::SetSourceSiteInstanceToInitiatorIfNeeded() {
void NavigationRequest::ForceEnableOriginTrials(
const std::vector<std::string>& trials) {
DCHECK(!HasCommitted());
@@ -106,7 +106,7 @@ diff --git a/content/browser/renderer_host/origin_trial_state_host_impl.cc b/con
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
--- a/content/renderer/render_frame_impl.cc
+++ b/content/renderer/render_frame_impl.cc
@@ -539,10 +539,6 @@ void FillNavigationParamsRequest(
@@ -538,10 +538,6 @@ void FillNavigationParamsRequest(
common_params.initiator_origin.value();
}
@@ -117,7 +117,7 @@ diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_fra
navigation_params->was_discarded = commit_params.was_discarded;
navigation_params->document_ukm_source_id =
commit_params.document_ukm_source_id;
@@ -570,12 +566,6 @@ void FillNavigationParamsRequest(
@@ -569,12 +565,6 @@ void FillNavigationParamsRequest(
navigation_params->had_transient_user_activation =
common_params.has_user_gesture;
@@ -130,7 +130,7 @@ diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_fra
if (!commit_params.early_hints_preloaded_resources.empty()) {
navigation_params->early_hints_preloaded_resources = WebVector<WebURL>();
for (const auto& resource : commit_params.early_hints_preloaded_resources) {
@@ -637,11 +627,6 @@ blink::mojom::CommonNavigationParamsPtr MakeCommonNavigationParams(
@@ -635,11 +625,6 @@ blink::mojom::CommonNavigationParamsPtr MakeCommonNavigationParams(
info->url_request.GetURLRequestExtraData().get());
DCHECK(url_request_extra_data);
@@ -142,7 +142,7 @@ diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_fra
blink::NavigationDownloadPolicy download_policy;
download_policy.ApplyDownloadFramePolicy(
info->is_opener_navigation, info->url_request.HasUserGesture(),
@@ -664,7 +649,7 @@ blink::mojom::CommonNavigationParamsPtr MakeCommonNavigationParams(
@@ -662,7 +647,7 @@ blink::mojom::CommonNavigationParamsPtr MakeCommonNavigationParams(
info->url_request.HasUserGesture(),
info->url_request.HasTextFragmentToken(),
info->should_check_main_world_content_security_policy,
@@ -194,7 +194,7 @@ diff --git a/third_party/blink/common/origin_trials/trial_token_validator.cc b/t
diff --git a/third_party/blink/renderer/core/loader/document_loader.cc b/third_party/blink/renderer/core/loader/document_loader.cc
--- a/third_party/blink/renderer/core/loader/document_loader.cc
+++ b/third_party/blink/renderer/core/loader/document_loader.cc
@@ -184,13 +184,6 @@ namespace {
@@ -183,13 +183,6 @@ namespace {
Vector<mojom::blink::OriginTrialFeature> CopyInitiatorOriginTrials(
const WebVector<int>& initiator_origin_trial_features) {
Vector<mojom::blink::OriginTrialFeature> result;
@@ -208,7 +208,7 @@ diff --git a/third_party/blink/renderer/core/loader/document_loader.cc b/third_p
return result;
}
@@ -204,18 +197,12 @@ WebVector<int> CopyInitiatorOriginTrials(
@@ -203,18 +196,12 @@ WebVector<int> CopyInitiatorOriginTrials(
Vector<String> CopyForceEnabledOriginTrials(
const WebVector<WebString>& force_enabled_origin_trials) {
Vector<String> result;
@@ -227,7 +227,7 @@ diff --git a/third_party/blink/renderer/core/loader/document_loader.cc b/third_p
return result;
}
@@ -3030,10 +3017,6 @@ void DocumentLoader::CreateParserPostCommit() {
@@ -3033,10 +3020,6 @@ void DocumentLoader::CreateParserPostCommit() {
mojom::blink::OriginTrialFeature::kTouchEventFeatureDetection);
}
@@ -253,7 +253,7 @@ diff --git a/third_party/blink/renderer/core/loader/http_equiv.cc b/third_party/
diff --git a/third_party/blink/renderer/core/origin_trials/origin_trial_context.cc b/third_party/blink/renderer/core/origin_trials/origin_trial_context.cc
--- a/third_party/blink/renderer/core/origin_trials/origin_trial_context.cc
+++ b/third_party/blink/renderer/core/origin_trials/origin_trial_context.cc
@@ -314,6 +314,9 @@ void OriginTrialContext::AddToken(const String& token) {
@@ -315,6 +315,9 @@ void OriginTrialContext::AddToken(const String& token) {
void OriginTrialContext::AddTokenFromExternalScript(
const String& token,
const Vector<scoped_refptr<SecurityOrigin>>& external_origins) {
@@ -263,7 +263,7 @@ diff --git a/third_party/blink/renderer/core/origin_trials/origin_trial_context.
Vector<OriginInfo> script_origins;
for (const scoped_refptr<SecurityOrigin>& origin : external_origins) {
OriginInfo origin_info = {.origin = origin,
@@ -466,8 +469,6 @@ bool OriginTrialContext::InstallSettingFeature(
@@ -467,8 +470,6 @@ bool OriginTrialContext::InstallSettingFeature(
}
void OriginTrialContext::AddFeature(mojom::blink::OriginTrialFeature feature) {
@@ -272,7 +272,7 @@ diff --git a/third_party/blink/renderer/core/origin_trials/origin_trial_context.
}
bool OriginTrialContext::IsFeatureEnabled(
@@ -511,6 +512,7 @@ void OriginTrialContext::AddForceEnabledTrials(
@@ -512,6 +513,7 @@ void OriginTrialContext::AddForceEnabledTrials(
}
bool OriginTrialContext::CanEnableTrialFromName(const StringView& trial_name) {
+1 -1
View File
@@ -10,7 +10,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/background_task_scheduler/ChromeBackgroundTaskFactory.java b/chrome/android/java/src/org/chromium/chrome/browser/background_task_scheduler/ChromeBackgroundTaskFactory.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/background_task_scheduler/ChromeBackgroundTaskFactory.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/background_task_scheduler/ChromeBackgroundTaskFactory.java
@@ -67,7 +67,7 @@ public class ChromeBackgroundTaskFactory implements BackgroundTaskFactory {
@@ -68,7 +68,7 @@ public class ChromeBackgroundTaskFactory implements BackgroundTaskFactory {
case TaskIds.WEBAPK_UPDATE_JOB_ID:
return new WebApkUpdateTask();
case TaskIds.COMPONENT_UPDATE_JOB_ID:
+21 -21
View File
@@ -24,7 +24,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivityBase.java b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivityBase.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivityBase.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivityBase.java
@@ -63,7 +63,7 @@ public abstract class FirstRunActivityBase extends AsyncInitializationActivity
@@ -64,7 +64,7 @@ public abstract class FirstRunActivityBase extends AsyncInitializationActivity
static final String SHOW_SYNC_CONSENT_PAGE = "ShowSyncConsent";
static final String SHOW_HISTORY_SYNC_PAGE = "ShowHistorySync";
@@ -36,15 +36,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR
diff --git a/chrome/browser/android/ntp/most_visited_sites_bridge.cc b/chrome/browser/android/ntp/most_visited_sites_bridge.cc
--- a/chrome/browser/android/ntp/most_visited_sites_bridge.cc
+++ b/chrome/browser/android/ntp/most_visited_sites_bridge.cc
@@ -26,7 +26,6 @@
#include "chrome/browser/profiles/profile_android.h"
@@ -23,7 +23,6 @@
#include "chrome/browser/profiles/profile.h"
#include "components/favicon_base/favicon_types.h"
#include "components/history/core/browser/history_service.h"
-#include "components/ntp_tiles/metrics.h"
#include "components/ntp_tiles/most_visited_sites.h"
#include "components/ntp_tiles/section_type.h"
#include "ui/gfx/android/java_bitmap.h"
@@ -46,7 +45,6 @@ using ntp_tiles::NTPTilesVector;
@@ -43,7 +42,6 @@ using ntp_tiles::NTPTilesVector;
using ntp_tiles::SectionType;
using ntp_tiles::TileTitleSource;
using ntp_tiles::TileSource;
@@ -52,7 +52,7 @@ diff --git a/chrome/browser/android/ntp/most_visited_sites_bridge.cc b/chrome/br
namespace {
@@ -233,7 +231,6 @@ void MostVisitedSitesBridge::RecordPageImpression(
@@ -226,7 +224,6 @@ void MostVisitedSitesBridge::RecordPageImpression(
JNIEnv* env,
const JavaParamRef<jobject>& obj,
jint jtiles_count) {
@@ -60,11 +60,11 @@ diff --git a/chrome/browser/android/ntp/most_visited_sites_bridge.cc b/chrome/br
}
void MostVisitedSitesBridge::RecordTileImpression(
@@ -245,15 +242,6 @@ void MostVisitedSitesBridge::RecordTileImpression(
@@ -238,15 +235,6 @@ void MostVisitedSitesBridge::RecordTileImpression(
jint jtitle_source,
jint jsource,
const JavaParamRef<jobject>& jurl) {
- std::unique_ptr<GURL> url = url::GURLAndroid::ToNativeGURL(env, jurl);
- GURL url = url::GURLAndroid::ToNativeGURL(env, jurl);
- TileTitleSource title_source = static_cast<TileTitleSource>(jtitle_source);
- TileSource source = static_cast<TileSource>(jsource);
- TileVisualType visual_type = static_cast<TileVisualType>(jvisual_type);
@@ -72,11 +72,11 @@ diff --git a/chrome/browser/android/ntp/most_visited_sites_bridge.cc b/chrome/br
- static_cast<favicon_base::IconType>(jicon_type);
-
- ntp_tiles::metrics::RecordTileImpression(ntp_tiles::NTPTileImpression(
- jindex, source, title_source, visual_type, icon_type, *url));
- jindex, source, title_source, visual_type, icon_type, url));
}
void MostVisitedSitesBridge::RecordOpenedMostVisitedItem(
@@ -263,11 +251,6 @@ void MostVisitedSitesBridge::RecordOpenedMostVisitedItem(
@@ -256,11 +244,6 @@ void MostVisitedSitesBridge::RecordOpenedMostVisitedItem(
jint tile_type,
jint title_source,
jint source) {
@@ -87,11 +87,11 @@ diff --git a/chrome/browser/android/ntp/most_visited_sites_bridge.cc b/chrome/br
- /*url_for_rappor=*/GURL()));
}
static jlong JNI_MostVisitedSitesBridge_Init(
static jlong JNI_MostVisitedSitesBridge_Init(JNIEnv* env,
diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_process_impl.cc
--- a/chrome/browser/browser_process_impl.cc
+++ b/chrome/browser/browser_process_impl.cc
@@ -1081,7 +1081,7 @@ void BrowserProcessImpl::RegisterPrefs(PrefRegistrySimple* registry) {
@@ -1085,7 +1085,7 @@ void BrowserProcessImpl::RegisterPrefs(PrefRegistrySimple* registry) {
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
registry->RegisterBooleanPref(metrics::prefs::kMetricsReportingEnabled,
@@ -103,15 +103,15 @@ diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_pro
diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc
--- a/chrome/browser/chrome_content_browser_client.cc
+++ b/chrome/browser/chrome_content_browser_client.cc
@@ -84,7 +84,6 @@
#include "chrome/browser/hid/chrome_hid_delegate.h"
@@ -85,7 +85,6 @@
#include "chrome/browser/history/history_service_factory.h"
#include "chrome/browser/interstitials/enterprise_util.h"
#include "chrome/browser/lifetime/browser_shutdown.h"
-#include "chrome/browser/lookalikes/lookalike_url_navigation_throttle.h"
#include "chrome/browser/media/audio_service_util.h"
#include "chrome/browser/media/prefs/capture_device_ranking.h"
#include "chrome/browser/media/router/media_router_feature.h"
@@ -4953,16 +4952,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
@@ -5035,16 +5034,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
content::NavigationHandle* handle) {
std::vector<std::unique_ptr<content::NavigationThrottle>> throttles;
@@ -125,10 +125,10 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
- page_load_metrics::MetricsNavigationThrottle::Create(handle));
- }
-
#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
MaybeAddThrottle(
SupervisedUserNavigationThrottle::MaybeCreateThrottleFor(handle),
@@ -5063,10 +5052,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
#if BUILDFLAG(IS_ANDROID)
// TODO(davidben): This is insufficient to integrate with prerender properly.
// https://crbug.com/370595
@@ -5144,10 +5133,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
throttle_manager->MaybeAppendNavigationThrottles(handle, &throttles);
}
@@ -179,7 +179,7 @@ diff --git a/chrome/browser/ui/search/ntp_user_data_logger.cc b/chrome/browser/u
diff --git a/components/ntp_tiles/BUILD.gn b/components/ntp_tiles/BUILD.gn
--- a/components/ntp_tiles/BUILD.gn
+++ b/components/ntp_tiles/BUILD.gn
@@ -23,8 +23,6 @@ static_library("ntp_tiles") {
@@ -24,8 +24,6 @@ static_library("ntp_tiles") {
"icon_cacher.h",
"icon_cacher_impl.cc",
"icon_cacher_impl.h",
@@ -188,7 +188,7 @@ diff --git a/components/ntp_tiles/BUILD.gn b/components/ntp_tiles/BUILD.gn
"most_visited_sites.cc",
"most_visited_sites.h",
"ntp_tile.cc",
@@ -91,7 +89,6 @@ source_set("unit_tests") {
@@ -97,7 +95,6 @@ source_set("unit_tests") {
"custom_links_manager_impl_unittest.cc",
"custom_links_store_unittest.cc",
"icon_cacher_impl_unittest.cc",
@@ -210,7 +210,7 @@ diff --git a/components/ntp_tiles/custom_links_manager_impl.cc b/components/ntp_
diff --git a/components/ntp_tiles/most_visited_sites.cc b/components/ntp_tiles/most_visited_sites.cc
--- a/components/ntp_tiles/most_visited_sites.cc
+++ b/components/ntp_tiles/most_visited_sites.cc
@@ -705,8 +705,6 @@ void MostVisitedSites::SaveTilesAndNotify(
@@ -721,8 +721,6 @@ void MostVisitedSites::SaveTilesAndNotify(
: new_tiles;
if (fixed_tiles.size() != new_tiles.size()) {
@@ -13,7 +13,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/components/visitedlink/browser/visitedlink_writer.cc b/components/visitedlink/browser/visitedlink_writer.cc
--- a/components/visitedlink/browser/visitedlink_writer.cc
+++ b/components/visitedlink/browser/visitedlink_writer.cc
@@ -235,7 +235,7 @@ VisitedLinkWriter::VisitedLinkWriter(content::BrowserContext* browser_context,
@@ -237,7 +237,7 @@ VisitedLinkWriter::VisitedLinkWriter(content::BrowserContext* browser_context,
: browser_context_(browser_context),
delegate_(delegate),
listener_(std::make_unique<VisitedLinkEventListener>(browser_context)),
@@ -22,7 +22,7 @@ diff --git a/components/visitedlink/browser/visitedlink_writer.cc b/components/v
VisitedLinkWriter::VisitedLinkWriter(Listener* listener,
VisitedLinkDelegate* delegate,
@@ -245,10 +245,10 @@ VisitedLinkWriter::VisitedLinkWriter(Listener* listener,
@@ -247,10 +247,10 @@ VisitedLinkWriter::VisitedLinkWriter(Listener* listener,
int32_t default_table_size)
: delegate_(delegate),
listener_(listener),
@@ -35,7 +35,7 @@ diff --git a/components/visitedlink/browser/visitedlink_writer.cc b/components/v
DCHECK(listener_);
}
@@ -318,6 +318,7 @@ void VisitedLinkWriter::AddURL(const GURL& url, bool update_file) {
@@ -320,6 +320,7 @@ void VisitedLinkWriter::AddURL(const GURL& url, bool update_file) {
}
VisitedLinkWriter::Hash VisitedLinkWriter::TryToAddURL(const GURL& url) {
@@ -43,7 +43,7 @@ diff --git a/components/visitedlink/browser/visitedlink_writer.cc b/components/v
// Extra check that we are not incognito. This should not happen.
// TODO(boliu): Move this check to HistoryService when IsOffTheRecord is
// removed from BrowserContext.
@@ -1029,7 +1030,6 @@ bool VisitedLinkWriter::RebuildTableFromDelegate() {
@@ -1049,7 +1050,6 @@ bool VisitedLinkWriter::RebuildTableFromDelegate() {
// TODO(brettw) make sure we have reasonable salt!
table_builder_ = new TableBuilder(this, salt_);
@@ -54,7 +54,7 @@ diff --git a/components/visitedlink/browser/visitedlink_writer.cc b/components/v
diff --git a/components/visitedlink/common/visitedlink_common.cc b/components/visitedlink/common/visitedlink_common.cc
--- a/components/visitedlink/common/visitedlink_common.cc
+++ b/components/visitedlink/common/visitedlink_common.cc
@@ -43,6 +43,7 @@ bool VisitedLinkCommon::IsVisited(const GURL& url) const {
@@ -70,6 +70,7 @@ bool VisitedLinkCommon::IsVisited(const GURL& link_url,
}
bool VisitedLinkCommon::IsVisited(Fingerprint fingerprint) const {
@@ -9,7 +9,7 @@ Subject: Disallow Android App Scheme as referrer
diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer/chrome_content_renderer_client.cc
--- a/chrome/renderer/chrome_content_renderer_client.cc
+++ b/chrome/renderer/chrome_content_renderer_client.cc
@@ -556,11 +556,6 @@ void ChromeContentRendererClient::RenderThreadStarted() {
@@ -554,11 +554,6 @@ void ChromeContentRendererClient::RenderThreadStarted() {
// TODO(nyquist): Add test to ensure this happens when the flag is set.
WebSecurityPolicy::RegisterURLSchemeAsDisplayIsolated(dom_distiller_scheme);
@@ -11,10 +11,10 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn
--- a/chrome/browser/ui/BUILD.gn
+++ b/chrome/browser/ui/BUILD.gn
@@ -1429,8 +1429,6 @@ static_library("ui") {
"singleton_tabs.h",
"startup/automation_infobar_delegate.cc",
"startup/automation_infobar_delegate.h",
@@ -1458,8 +1458,6 @@ static_library("ui") {
"startup/default_browser_infobar_delegate.h",
"startup/default_browser_prompt_manager.cc",
"startup/default_browser_prompt_manager.h",
- "startup/google_api_keys_infobar_delegate.cc",
- "startup/google_api_keys_infobar_delegate.h",
"startup/infobar_utils.cc",
@@ -14,7 +14,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
--- a/chrome/android/BUILD.gn
+++ b/chrome/android/BUILD.gn
@@ -3542,7 +3542,6 @@ generate_jni("chrome_jni_headers") {
@@ -3578,7 +3578,6 @@ generate_jni("chrome_jni_headers") {
"../browser/share/android/java/src/org/chromium/chrome/browser/share/link_to_text/LinkToTextBridge.java",
"../browser/share/android/java/src/org/chromium/chrome/browser/share/long_screenshots/bitmap_generation/LongScreenshotsTabService.java",
"../browser/share/android/java/src/org/chromium/chrome/browser/share/long_screenshots/bitmap_generation/LongScreenshotsTabServiceFactory.java",
@@ -33,7 +33,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordi
import org.chromium.chrome.browser.share.scroll_capture.ScrollCaptureManager;
import org.chromium.chrome.browser.tab.AccessibilityVisibilityHandler;
import org.chromium.chrome.browser.tab.AutofillSessionLifetimeController;
@@ -594,10 +593,6 @@ public class RootUiCoordinator
@@ -617,10 +616,6 @@ public class RootUiCoordinator
}
public void onAttachFragment(Fragment fragment) {
@@ -104,10 +104,10 @@ diff --git a/chrome/browser/share/android/java/src/org/chromium/chrome/browser/s
diff --git a/chrome/browser/share/android/java_sources.gni b/chrome/browser/share/android/java_sources.gni
--- a/chrome/browser/share/android/java_sources.gni
+++ b/chrome/browser/share/android/java_sources.gni
@@ -36,17 +36,6 @@ share_java_sources = [
"//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/page_info_sheet/PageInfoBottomSheetViewBinder.java",
"//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/page_info_sheet/PageInfoSharingController.java",
"//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/page_info_sheet/PageInfoSharingControllerImpl.java",
@@ -43,17 +43,6 @@ share_java_sources = [
"//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/page_info_sheet/feedback/FeedbackSheetMediator.java",
"//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/page_info_sheet/feedback/FeedbackSheetProperties.java",
"//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/page_info_sheet/feedback/FeedbackSheetViewBinder.java",
- "//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/qrcode/QRCodeGenerator.java",
- "//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/qrcode/QrCodeCoordinator.java",
- "//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/qrcode/QrCodeDialog.java",
@@ -16,7 +16,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationDialogCoordinator.java b/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationDialogCoordinator.java
--- a/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationDialogCoordinator.java
+++ b/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationDialogCoordinator.java
@@ -141,22 +141,6 @@ public class DownloadLocationDialogCoordinator implements ModalDialogProperties.
@@ -142,22 +142,6 @@ public class DownloadLocationDialogCoordinator implements ModalDialogProperties.
* @param dirs An list of available download directories.
*/
private void onDirectoryOptionsRetrieved(ArrayList<DirectoryOption> dirs) {
@@ -14,7 +14,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/base/BUILD.gn b/base/BUILD.gn
--- a/base/BUILD.gn
+++ b/base/BUILD.gn
@@ -1133,7 +1133,7 @@ component("base") {
@@ -1143,7 +1143,7 @@ component("base") {
# more robust check for this.
if (!use_sysroot && (is_android || is_chromeos || (is_linux && !is_castos)) &&
host_toolchain != "//build/toolchain/cros:host") {
@@ -10,7 +10,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/components/password_manager/core/browser/password_manager.cc b/components/password_manager/core/browser/password_manager.cc
--- a/components/password_manager/core/browser/password_manager.cc
+++ b/components/password_manager/core/browser/password_manager.cc
@@ -254,14 +254,14 @@ base::CallbackListSubscription AddSyncEnabledOrDisabledCallback(
@@ -269,14 +269,14 @@ void MaybeNudgeToUpdateGMSCoreWhenSavingDisabled(
void PasswordManager::RegisterProfilePrefs(
user_prefs::PrefRegistrySyncable* registry) {
registry->RegisterBooleanPref(
@@ -27,7 +27,7 @@ diff --git a/components/password_manager/core/browser/password_manager.cc b/comp
user_prefs::PrefRegistrySyncable::SYNCABLE_PRIORITY_PREF);
registry->RegisterStringPref(prefs::kSyncPasswordHash, std::string(),
PrefRegistry::NO_REGISTRATION_FLAGS);
@@ -301,8 +301,8 @@ void PasswordManager::RegisterProfilePrefs(
@@ -316,8 +316,8 @@ void PasswordManager::RegisterProfilePrefs(
user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
registry->RegisterBooleanPref(prefs::kPasswordsPrefWithNewLabelUsed, false);
#if BUILDFLAG(IS_ANDROID)
@@ -32,7 +32,7 @@ diff --git a/ui/gfx/font_render_params_win.cc b/ui/gfx/font_render_params_win.cc
diff --git a/ui/gfx/font_util_win.cc b/ui/gfx/font_util_win.cc
--- a/ui/gfx/font_util_win.cc
+++ b/ui/gfx/font_util_win.cc
@@ -52,6 +52,7 @@ TextParameters GetTextParameters() {
@@ -53,6 +53,7 @@ TextParameters GetTextParameters() {
// static
base::win::RegKey FontUtilWin::GetTextSettingsRegistryKey(REGSAM access) {
+1 -1
View File
@@ -82,7 +82,7 @@ diff --git a/net/dns/dns_client.cc b/net/dns/dns_client.cc
diff --git a/net/dns/host_resolver_manager.cc b/net/dns/host_resolver_manager.cc
--- a/net/dns/host_resolver_manager.cc
+++ b/net/dns/host_resolver_manager.cc
@@ -583,6 +583,7 @@ void HostResolverManager::SetDnsConfigOverrides(DnsConfigOverrides overrides) {
@@ -602,6 +602,7 @@ void HostResolverManager::SetDnsConfigOverrides(DnsConfigOverrides overrides) {
bool changed = dns_client_->SetConfigOverrides(std::move(overrides));
if (changed) {
@@ -23,7 +23,7 @@ diff --git a/chrome/version.gni b/chrome/version.gni
diff --git a/components/viz/common/features.cc b/components/viz/common/features.cc
--- a/components/viz/common/features.cc
+++ b/components/viz/common/features.cc
@@ -289,9 +289,11 @@ BASE_FEATURE(kDelegateTransforms,
@@ -291,9 +291,11 @@ const base::FeatureParam<base::TimeDelta> kADPFBoostTimeout{
// If enabled, Chrome includes the Renderer Main thread(s) into the
// ADPF(Android Dynamic Performance Framework) hint session.
@@ -33,6 +33,6 @@ diff --git a/components/viz/common/features.cc b/components/viz/common/features.
base::FEATURE_ENABLED_BY_DEFAULT);
+SET_CROMITE_FEATURE_ENABLED(kEnableADPFRendererMain);
// If enabled, surface activation and draw do not block on dependencies.
BASE_FEATURE(kDrawImmediatelyWhenInteractive,
// If enabled, Chrome includes the Compositor GPU Thread into the
// ADPF(Android Dynamic Performance Framework) hint session, instead
--
@@ -14,9 +14,9 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../about_flags_cc/Enable-Certificate-Transparency.inc | 9 +++++++++
.../Enable-Certificate-Transparency.inc | 6 ++++++
.../Enable-Certificate-Transparency.inc | 2 ++
net/http/transport_security_state.cc | 5 +++--
net/http/transport_security_state.cc | 1 +
services/network/sct_auditing/sct_auditing_handler.cc | 2 ++
8 files changed, 29 insertions(+), 3 deletions(-)
8 files changed, 27 insertions(+), 1 deletion(-)
create mode 100644 cromite_flags/chrome/browser/about_flags_cc/Enable-Certificate-Transparency.inc
create mode 100644 cromite_flags/chrome/browser/browser_features_cc/Enable-Certificate-Transparency.inc
create mode 100644 cromite_flags/chrome/common/chrome_features_cc/Enable-Certificate-Transparency.inc
@@ -94,7 +94,7 @@ new file mode 100644
diff --git a/net/http/transport_security_state.cc b/net/http/transport_security_state.cc
--- a/net/http/transport_security_state.cc
+++ b/net/http/transport_security_state.cc
@@ -190,6 +190,7 @@ class HSTSPreloadDecoder : public net::extras::PreloadDecoder {
@@ -186,6 +186,7 @@ class HSTSPreloadDecoder : public net::extras::PreloadDecoder {
bool DecodeHSTSPreload(const std::string& search_hostname, PreloadResult* out) {
#if !BUILDFLAG(INCLUDE_TRANSPORT_SECURITY_STATE_PRELOAD_LIST)
@@ -102,21 +102,10 @@ diff --git a/net/http/transport_security_state.cc b/net/http/transport_security_
if (g_hsts_source == nullptr)
return false;
#endif
@@ -235,8 +236,8 @@ bool DecodeHSTSPreload(const std::string& search_hostname, PreloadResult* out) {
// static
BASE_FEATURE(kCertificateTransparencyEnforcement,
- "CertificateTransparencyEnforcement",
- base::FEATURE_ENABLED_BY_DEFAULT);
+ "CertificateTransparencyEnforcement", // must be enabled
+ base::FEATURE_ENABLED_BY_DEFAULT); // in Bromite
void SetTransportSecurityStateSourceForTesting(
const TransportSecurityStateSource* source) {
diff --git a/services/network/sct_auditing/sct_auditing_handler.cc b/services/network/sct_auditing/sct_auditing_handler.cc
--- a/services/network/sct_auditing/sct_auditing_handler.cc
+++ b/services/network/sct_auditing/sct_auditing_handler.cc
@@ -108,6 +108,7 @@ void SCTAuditingHandler::MaybeEnqueueReport(
@@ -109,6 +109,7 @@ void SCTAuditingHandler::MaybeEnqueueReport(
if (mode_ == mojom::SCTAuditingMode::kDisabled) {
return;
}
@@ -124,7 +113,7 @@ diff --git a/services/network/sct_auditing/sct_auditing_handler.cc b/services/ne
// Only audit valid SCTs. This ensures that they come from a known log, have
// a valid signature, and thus are expected to be public certificates. If
@@ -323,6 +324,7 @@ void SCTAuditingHandler::AddReporter(
@@ -324,6 +325,7 @@ void SCTAuditingHandler::AddReporter(
if (mode_ == mojom::SCTAuditingMode::kDisabled) {
return;
}
@@ -11,7 +11,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink/renderer/core/dom/document.cc
--- a/third_party/blink/renderer/core/dom/document.cc
+++ b/third_party/blink/renderer/core/dom/document.cc
@@ -3619,70 +3619,6 @@ void Document::open(LocalDOMWindow* entered_window,
@@ -3623,70 +3623,6 @@ void Document::open(LocalDOMWindow* entered_window,
// https://chromestatus.com/metrics/feature/timeline/popularity/4375
CountUse(WebFeature::kDocumentOpenMutateSandbox);
}
@@ -85,7 +85,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -1433,7 +1433,6 @@
@@ -1388,7 +1388,6 @@
{
name: "DocumentOpenSandboxInheritanceRemoval",
status: "stable",
@@ -82,15 +82,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
--- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
@@ -811,7 +811,7 @@ public abstract class ChromeFeatureList {
public static final MutableFlagWithSafeDefault sAdvancedPeripheralsSupportTabStrip =
newMutableFlagWithSafeDefault(ADVANCED_PERIPHERALS_SUPPORT_TAB_STRIP, true);
@@ -812,7 +812,7 @@ public abstract class ChromeFeatureList {
public static final MutableFlagWithSafeDefault sAdaptiveButtonInTopToolbarCustomizationV2 =
newMutableFlagWithSafeDefault(ADAPTIVE_BUTTON_IN_TOP_TOOLBAR_CUSTOMIZATION_V2, false);
public static final MutableFlagWithSafeDefault sAndroidImprovedBookmarks =
- newMutableFlagWithSafeDefault(ANDROID_IMPROVED_BOOKMARKS, false);
+ newMutableFlagWithSafeDefault(ANDROID_IMPROVED_BOOKMARKS, true);
public static final MutableFlagWithSafeDefault sBrowserControlsEarlyResize =
newMutableFlagWithSafeDefault(BROWSER_CONTROLS_EARLY_RESIZE, false);
public static final MutableFlagWithSafeDefault sIncognitoNtpRevamp =
public static final MutableFlagWithSafeDefault sAnimateSuggestionsListAppearance =
newMutableFlagWithSafeDefault(ANIMATE_SUGGESTIONS_LIST_APPEARANCE, false);
public static final MutableFlagWithSafeDefault sAndroidTabDeclutter =
diff --git a/components/bookmarks/browser/bookmark_node.cc b/components/bookmarks/browser/bookmark_node.cc
--- a/components/bookmarks/browser/bookmark_node.cc
+++ b/components/bookmarks/browser/bookmark_node.cc
@@ -20,7 +20,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc
--- a/chrome/browser/chrome_content_browser_client.cc
+++ b/chrome/browser/chrome_content_browser_client.cc
@@ -1465,7 +1465,7 @@ void ChromeContentBrowserClient::RegisterLocalStatePrefs(
@@ -1504,7 +1504,7 @@ void ChromeContentBrowserClient::RegisterLocalStatePrefs(
registry->RegisterFilePathPref(prefs::kDiskCacheDir, base::FilePath());
registry->RegisterIntegerPref(prefs::kDiskCacheSize, 0);
registry->RegisterStringPref(prefs::kIsolateOrigins, std::string());
@@ -28,8 +28,8 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
+ registry->RegisterBooleanPref(prefs::kSitePerProcess, true);
registry->RegisterBooleanPref(prefs::kTabFreezingEnabled, true);
registry->RegisterIntegerPref(prefs::kSCTAuditingHashdanceReportCount, 0);
registry->RegisterBooleanPref(prefs::kNewBaseUrlInheritanceBehaviorAllowed,
@@ -1488,7 +1488,7 @@ void ChromeContentBrowserClient::RegisterProfilePrefs(
#if BUILDFLAG(IS_CHROMEOS)
@@ -1525,7 +1525,7 @@ void ChromeContentBrowserClient::RegisterProfilePrefs(
// user policy in addition to the same named ones in Local State (which are
// used for mapping the command-line flags).
registry->RegisterStringPref(prefs::kIsolateOrigins, std::string());
@@ -14,14 +14,14 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json
--- a/chrome/browser/flag-metadata.json
+++ b/chrome/browser/flag-metadata.json
@@ -1716,9 +1716,9 @@
"expiry_milestone": 125
@@ -1785,9 +1785,9 @@
"expiry_milestone": -1
},
{
- "name": "darken-websites-checkbox-in-themes-setting",
- "owners": [ "nemco@google.com", "wenyufu@google.com", "twellington@chromium.org" ],
- "expiry_milestone": 125
+ "name": "darken-websites-checkbox-in-themes-setting", // this is always enabled in Bromite
- "expiry_milestone": 130
+ "name": "darken-websites-checkbox-in-themes-setting", // this is always enabled in Bromite
+ "owners": [ "nemco@google.com", "wenyufu@google.com", "twellington@chromium.org" ], // -
+ "expiry_milestone": -1
},
@@ -45,7 +45,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
--- a/build/config/compiler/BUILD.gn
+++ b/build/config/compiler/BUILD.gn
@@ -394,6 +394,10 @@ config("compiler") {
@@ -391,6 +391,10 @@ config("compiler") {
}
}
+11 -11
View File
@@ -33,7 +33,7 @@ diff --git a/android_webview/lib/aw_main_delegate.cc b/android_webview/lib/aw_ma
diff --git a/build/config/compiler/compiler.gni b/build/config/compiler/compiler.gni
--- a/build/config/compiler/compiler.gni
+++ b/build/config/compiler/compiler.gni
@@ -191,10 +191,11 @@ if (is_chromeos) {
@@ -188,10 +188,11 @@ if (is_chromeos) {
enable_frame_pointers = true
}
} else if (is_android) {
@@ -49,7 +49,7 @@ diff --git a/build/config/compiler/compiler.gni b/build/config/compiler/compiler
diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/AndroidManifest.xml
--- a/chrome/android/java/AndroidManifest.xml
+++ b/chrome/android/java/AndroidManifest.xml
@@ -169,6 +169,7 @@ by a child template that "extends" this file.
@@ -172,6 +172,7 @@ by a child template that "extends" this file.
<!-- Set android:largeHeap to "true" to allow more than the default
Java heap limit (32Mb on Nexus S, 48Mb on Xoom). -->
<application android:name="{% block application_name %}org.chromium.chrome.browser.base.SplitChromeApplication{% endblock %}"
@@ -122,12 +122,12 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tracing/setting
diff --git a/chrome/app/chrome_main_delegate.cc b/chrome/app/chrome_main_delegate.cc
--- a/chrome/app/chrome_main_delegate.cc
+++ b/chrome/app/chrome_main_delegate.cc
@@ -2036,7 +2036,7 @@ void ChromeMainDelegate::InitializeMemorySystem() {
const version_info::Channel channel = chrome::GetChannel();
const bool is_canary_dev = (channel == version_info::Channel::CANARY ||
channel == version_info::Channel::DEV);
- const bool gwp_asan_boost_sampling = is_canary_dev || is_browser_process;
+ const bool gwp_asan_boost_sampling = ((true)) || is_canary_dev || is_browser_process;
@@ -2011,7 +2011,7 @@ void ChromeMainDelegate::InitializeMemorySystem() {
const std::string process_type =
command_line->GetSwitchValueASCII(switches::kProcessType);
const bool is_browser_process = process_type.empty();
- const bool gwp_asan_boost_sampling = is_browser_process || IsCanaryDev();
+ const bool gwp_asan_boost_sampling = ((true)) || is_browser_process || IsCanaryDev();
memory_system::Initializer()
.SetGwpAsanParameters(gwp_asan_boost_sampling, process_type)
@@ -198,7 +198,7 @@ diff --git a/chrome/browser/util/android/java/src/org/chromium/chrome/browser/ut
diff --git a/components/gwp_asan/client/gwp_asan.cc b/components/gwp_asan/client/gwp_asan.cc
--- a/components/gwp_asan/client/gwp_asan.cc
+++ b/components/gwp_asan/client/gwp_asan.cc
@@ -78,21 +78,21 @@ constexpr int kDefaultMaxMetadata = 210;
@@ -80,21 +80,21 @@ constexpr int kDefaultMaxMetadata = 210;
constexpr int kDefaultTotalPages = kCpuIs64Bit ? 2048 : kDefaultMaxMetadata * 2;
constexpr int kDefaultAllocationSamplingMultiplier = 1500;
constexpr int kDefaultAllocationSamplingRange = 16;
@@ -223,7 +223,7 @@ diff --git a/components/gwp_asan/client/gwp_asan.cc b/components/gwp_asan/client
#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ||
// BUILDFLAG(IS_FUCHSIA)
constexpr int kDefaultProcessSamplingBoost2 = 10;
@@ -459,7 +459,7 @@ void EnableForMalloc(bool boost_sampling, const char* process_type) {
@@ -464,7 +464,7 @@ void EnableForMalloc(bool boost_sampling, std::string_view process_type) {
std::ignore = init_once;
#else
std::ignore = internal::kGwpAsanMalloc;
@@ -232,7 +232,7 @@ diff --git a/components/gwp_asan/client/gwp_asan.cc b/components/gwp_asan/client
#endif // BUILDFLAG(USE_ALLOCATOR_SHIM)
}
@@ -479,7 +479,7 @@ void EnableForPartitionAlloc(bool boost_sampling, const char* process_type) {
@@ -489,7 +489,7 @@ void EnableForPartitionAlloc(bool boost_sampling,
std::ignore = init_once;
#else
std::ignore = internal::kGwpAsanPartitionAlloc;

Some files were not shown because too many files have changed in this diff Show More