v86 patches

This commit is contained in:
csagan5 2020-09-28 22:00:09 +02:00
parent 7c1c9c5620
commit 7a9188d76e
128 changed files with 4013 additions and 7725 deletions

View file

@ -1,3 +1,13 @@
# 86.0.4240.55
* switch to upstream UI for DoH URL customization
* remove weblayer dependency on Play Services
* build fixes for password service
* removed obsolete patch to kill Translate
* removed timezone customization patch
* removed patch to revert unified consent code
* removed patch for dav1d library
* removed patch for improved cookie controls defaults
# 85.0.4183.114
# 85.0.4183.110

View file

@ -32,7 +32,7 @@ symbol_level=1
target_os="android"
use_debug_fission=true
use_errorprone_java_compiler=false
use_jumbo_build=false
use_official_google_api_keys=false
use_openh264=true chrome_pgo_phase=0
use_sysroot=false
webview_includes_weblayer=false

View file

@ -1 +1 @@
85.0.4183.114
86.0.4240.55

View file

@ -1,5 +1,5 @@
Disable-third-party-cookies-by-default.patch
Revert-Remove-pre-unified-consent-code.patch
Password-service-build-fixes.patch
Restore-classic-new-tab-page.patch
Always-use-new-tab-page-for-default-home-page.patch
Always-allow-partner-customisation.patch
@ -72,7 +72,6 @@ autofill-disable-autofill-download-manager.patch
first_run-deactivate-autoupdate-globally.patch
translate-disable-fetching-of-translate-languages-from-server.patch
kill-TOS-and-metrics-opt-out.patch
kill-Translate.patch
kill-Vision.patch
kill-Location-fall-back-to-system.patch
kill-Auth.patch
@ -115,14 +114,14 @@ Increase-number-of-autocomplete-matches-from-5-to-10.patch
Disable-HEAD-requests-for-single-word-Omnibar-searches.patch
Disable-some-signed-exchange-features.patch
Add-flag-to-disable-WebGL.patch
Add-user-setting-for-DNS-over-HTTPS-DoH-custom-URL.patch
Enable-DoH.patch
Reduce-HTTP-headers-in-DoH-requests-to-bare-minimum.patch
Revert-flags-remove-disable-pull-to-refresh-effect.patch
Use-dummy-DFM-installer.patch
Disable-password-reuse-detection-on-android.patch
Disable-feeds-support-by-default.patch
Disable-autofill-assistant-by-default.patch
Show-site-settings-for-cookies-javascript-and-ads.patch
Show-site-settings-for-cookies.patch
Restore-enable-horizontal-tab-switcher-flag.patch
Disable-DRM-media-origin-IDs-preprovisioning.patch
Disable-smart-selection-by-default.patch
@ -140,14 +139,12 @@ Block-gateway-attacks-via-websockets.patch
Enable-prefetch-privacy-changes-by-default.patch
Enable-reduced-referrer-granularity-by-default.patch
Disable-support-for-RAR-files-inspection.patch
Enable-improved-cookie-controls-by-default.patch
Add-history-support-in-incognito-mode.patch
Enable-darken-websites-checkbox-in-themes.patch
Remove-blocklisted-URLs-upon-bookmark-creation.patch
Disable-scroll-to-text-fragment.patch
Rollback-dav1d-upgrades-that-break-x86.patch
Disable-the-DIAL-repeating-discovery.patch
Timezone-customization.patch
Block-all-connection-requests-with-qjz9zk-in-the-domain-name-or-with-a-trk-scheme.patch
Automated-domain-substitution.patch
Hardening-against-incognito-mode-detection.patch
Automated-domain-substitution.patch
Remove-weblayer-dependency-on-Play-Services.patch

View file

@ -1,7 +1,6 @@
Revert-Remove-pre-unified-consent-code.patch
AV1-codec-support.patch
Switch-to-fstack-protector-strong.patch
Enable-fwrapv-in-Clang-for-non-UBSan-builds.patch
Disable-password-reuse-detection-on-android.patch
Disable-feeds-support-by-default.patch
Rollback-dav1d-upgrades-that-break-x86.patch
Password-service-build-fixes.patch

View file

@ -25,7 +25,7 @@ Report AV1 as playable on Android
diff --git a/media/base/mime_util_internal.cc b/media/base/mime_util_internal.cc
--- a/media/base/mime_util_internal.cc
+++ b/media/base/mime_util_internal.cc
@@ -563,9 +563,13 @@ bool MimeUtil::IsCodecSupportedOnAndroid(
@@ -565,9 +565,13 @@ bool MimeUtil::IsCodecSupportedOnAndroid(
case THEORA:
return false;
@ -73,7 +73,7 @@ diff --git a/third_party/libaom/BUILD.gn b/third_party/libaom/BUILD.gn
diff --git a/third_party/libaom/libaom_srcs.gni b/third_party/libaom/libaom_srcs.gni
--- a/third_party/libaom/libaom_srcs.gni
+++ b/third_party/libaom/libaom_srcs.gni
@@ -656,6 +656,11 @@ aom_mem_sources = [
@@ -670,6 +670,11 @@ aom_mem_sources = [
aom_ports_asm_x86 = [ "//third_party/libaom/source/libaom/aom_ports/emms.asm" ]

View file

@ -17,7 +17,7 @@ See also:
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
@@ -4499,6 +4499,12 @@ const FeatureEntry kFeatureEntries[] = {
@@ -4920,6 +4920,12 @@ const FeatureEntry kFeatureEntries[] = {
kOsAll,
FEATURE_VALUE_TYPE(features::kEnableAmbientAuthenticationInIncognito)},
@ -33,7 +33,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
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
@@ -515,6 +515,11 @@ const char kEnableAmbientAuthenticationInIncognitoDescription[] =
@@ -548,6 +548,11 @@ const char kEnableAmbientAuthenticationInIncognitoDescription[] =
"Enables ambient authentication in Incognito mode. This flag may be "
"overriden by policies.";
@ -48,7 +48,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -316,6 +316,9 @@ extern const char kEnableAccessibilityObjectModelDescription[];
@@ -333,6 +333,9 @@ extern const char kEnableAccessibilityObjectModelDescription[];
extern const char kEnableAmbientAuthenticationInIncognitoName[];
extern const char kEnableAmbientAuthenticationInIncognitoDescription[];
@ -75,7 +75,7 @@ diff --git a/chrome/browser/flags/android/java_templates/ChromeSwitches.java.tmp
diff --git a/chrome/common/chrome_switches.cc b/chrome/common/chrome_switches.cc
--- a/chrome/common/chrome_switches.cc
+++ b/chrome/common/chrome_switches.cc
@@ -339,6 +339,9 @@ const char kHomePage[] = "homepage";
@@ -343,6 +343,9 @@ const char kHomePage[] = "homepage";
// Causes the browser to launch directly in incognito mode.
const char kIncognito[] = "incognito";
@ -88,14 +88,14 @@ diff --git a/chrome/common/chrome_switches.cc b/chrome/common/chrome_switches.cc
diff --git a/chrome/common/chrome_switches.h b/chrome/common/chrome_switches.h
--- a/chrome/common/chrome_switches.h
+++ b/chrome/common/chrome_switches.h
@@ -107,6 +107,7 @@ extern const char kForceFirstRun[];
@@ -108,6 +108,7 @@ extern const char kForceFirstRun[];
extern const char kForceStackedTabStripLayout[];
extern const char kHomePage[];
extern const char kIncognito[];
+extern const char kEnableIncognitoSnapshotsInAndroidRecents[];
extern const char kInstallAutogeneratedTheme[];
extern const char kInstallChromeApp[];
extern const char kInstallSupervisedUserWhitelists[];
extern const char kInstallSupervisedUserAllowlists[];
--
2.17.1

View file

@ -36,7 +36,7 @@ Offer auto-complete for the proxy page URL.
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
@@ -66,6 +66,9 @@
@@ -41,6 +41,9 @@
<!-- Our manage space activity. Default pre-KitKat to be nothing. -->
<string name="manage_space_activity"></string>
@ -49,17 +49,17 @@ diff --git a/chrome/android/java/res/values/values.xml b/chrome/android/java/res
diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml
--- a/chrome/android/java/res/xml/privacy_preferences.xml
+++ b/chrome/android/java/res/xml/privacy_preferences.xml
@@ -6,6 +6,10 @@
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
@@ -7,6 +7,10 @@
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orderingFromXml="false">
+ <org.chromium.chrome.browser.about_settings.HyperlinkPreference
+ android:key="proxy"
+ android:title="@string/proxy_title"
+ app:url="@string/proxy_url" />
<org.chromium.components.browser_ui.settings.ChromeBaseCheckBoxPreference
android:key="search_suggestions"
android:title="@string/search_suggestions_title"
android:key="can_make_payment"
android:title="@string/can_make_payment_title"
diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
--- a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
+++ b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
@ -75,7 +75,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
@@ -111,6 +111,12 @@
@@ -113,6 +113,12 @@
<include name="IDR_OFFLINE_INTERNALS_BROWSER_PROXY_JS" file="resources\offline_pages\offline_internals_browser_proxy.js" type="BINDATA" />
</if>
@ -520,7 +520,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
@@ -253,6 +253,8 @@ static_library("ui") {
@@ -254,6 +254,8 @@ static_library("ui") {
"webui/metrics_handler.h",
"webui/net_export_ui.cc",
"webui/net_export_ui.h",
@ -528,11 +528,11 @@ diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn
+ "webui/proxy_config_ui.h",
"webui/net_internals/net_internals_ui.cc",
"webui/net_internals/net_internals_ui.h",
"webui/notifications_internals/notifications_internals_ui.cc",
"webui/ntp_tiles_internals_ui.cc",
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
@@ -62,6 +62,7 @@
@@ -61,6 +61,7 @@
#include "chrome/browser/ui/webui/omnibox/omnibox_ui.h"
#include "chrome/browser/ui/webui/policy_ui.h"
#include "chrome/browser/ui/webui/predictors/predictors_ui.h"
@ -540,7 +540,7 @@ diff --git a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc b/chrom
#include "chrome/browser/ui/webui/quota_internals/quota_internals_ui.h"
#include "chrome/browser/ui/webui/settings/settings_ui.h"
#include "chrome/browser/ui/webui/settings_utils.h"
@@ -464,6 +465,8 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui,
@@ -483,6 +484,8 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui,
return &NewWebUI<MemoryInternalsUI>;
if (url.host_piece() == chrome::kChromeUINetExportHost)
return &NewWebUI<NetExportUI>;
@ -548,7 +548,7 @@ diff --git a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc b/chrom
+ return &NewWebUI<ProxyConfigUI>;
if (url.host_piece() == chrome::kChromeUINetInternalsHost)
return &NewWebUI<NetInternalsUI>;
if (url.host_piece() == chrome::kChromeUINotificationsInternalsHost)
if (url.host_piece() == chrome::kChromeUINTPTilesInternalsHost)
diff --git a/chrome/browser/ui/webui/proxy_config_ui.cc b/chrome/browser/ui/webui/proxy_config_ui.cc
new file mode 100644
--- /dev/null
@ -1017,7 +1017,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";
@@ -301,6 +303,7 @@ bool IsSystemWebUIHost(base::StringPiece host) {
@@ -315,6 +317,7 @@ bool IsSystemWebUIHost(base::StringPiece host) {
kChromeUIMobileSetupHost,
kChromeUIMultiDeviceSetupHost,
kChromeUINetworkHost,
@ -1025,7 +1025,7 @@ diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_cons
kChromeUIOobeHost,
kChromeUIOSCreditsHost,
kChromeUIOSSettingsHost,
@@ -480,6 +483,7 @@ const char* const kChromeHostURLs[] = {
@@ -501,6 +504,7 @@ const char* const kChromeHostURLs[] = {
#if !defined(OS_ANDROID)
#if !defined(OS_CHROMEOS)
kChromeUIAppLauncherPageHost,
@ -1036,7 +1036,7 @@ diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_cons
diff --git a/chrome/common/webui_url_constants.h b/chrome/common/webui_url_constants.h
--- a/chrome/common/webui_url_constants.h
+++ b/chrome/common/webui_url_constants.h
@@ -108,6 +108,8 @@ extern const char kChromeUIMemoryInternalsHost[];
@@ -116,6 +116,8 @@ extern const char kChromeUIMemoryInternalsHost[];
extern const char kChromeUINTPTilesInternalsHost[];
extern const char kChromeUINaClHost[];
extern const char kChromeUINetExportHost[];

View file

@ -10,18 +10,19 @@ Enable incognito custom tabs and fix crashes for incognito/custom tab intents (c
chrome/android/chrome_java_sources.gni | 1 +
.../java/res/xml/privacy_preferences.xml | 5 ++
.../AlwaysIncognitoLinkInterceptor.java | 74 +++++++++++++++++++
.../chrome/browser/ChromeActivity.java | 4 +
.../chrome/browser/ChromeTabbedActivity.java | 6 +-
.../chrome/browser/app/ChromeActivity.java | 4 +
.../AppMenuPropertiesDelegateImpl.java | 6 ++
.../ChromeContextMenuPopulator.java | 8 +-
.../CustomTabIntentDataProvider.java | 6 ++
.../CustomTabIntentDataProvider.java | 5 +-
.../browser/init/StartupTabPreloader.java | 11 ++-
.../browser/tabmodel/ChromeTabCreator.java | 16 +++-
.../tabmodel/TabModelSelectorBase.java | 8 ++
.../browser/tabmodel/TabPersistentStore.java | 9 +++
.../browser/tabmodel/TabPersistentStore.java | 10 +++
.../webapps/WebappIntentDataProvider.java | 14 ++++
.../flags/android/chrome_feature_list.cc | 2 +-
.../strings/android_chrome_strings.grd | 7 ++
14 files changed, 155 insertions(+), 8 deletions(-)
15 files changed, 168 insertions(+), 9 deletions(-)
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/AlwaysIncognitoLinkInterceptor.java
diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni
@ -33,15 +34,15 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java
chrome_java_sources = [
+ "java/src/org/chromium/chrome/browser/AlwaysIncognitoLinkInterceptor.java",
"java/src/com/google/android/apps/chrome/appwidget/bookmarks/BookmarkThumbnailWidgetProvider.java",
"java/src/com/google/ipc/invalidation/ticl/android2/channel/GcmRegistrationTaskService.java",
"java/src/org/chromium/chrome/browser/ActivityTabProvider.java",
"java/src/org/chromium/chrome/browser/AfterStartupTaskUtils.java",
diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml
--- a/chrome/android/java/res/xml/privacy_preferences.xml
+++ b/chrome/android/java/res/xml/privacy_preferences.xml
@@ -20,6 +20,11 @@
android:title="@string/preload_pages_title"
@@ -18,6 +18,11 @@
android:summary="@string/preload_pages_summary"
android:persistent="false" />
android:persistent="false"
android:order="1"/>
+ <org.chromium.components.browser_ui.settings.ChromeBaseCheckBoxPreference
+ android:key="always_incognito"
+ android:title="@string/always_incognito_title"
@ -129,31 +130,10 @@ new file mode 100644
+ }
+ }
+}
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
@@ -51,6 +51,7 @@ import org.chromium.base.metrics.RecordUserAction;
import org.chromium.base.supplier.ObservableSupplier;
import org.chromium.base.supplier.ObservableSupplierImpl;
import org.chromium.chrome.R;
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
import org.chromium.chrome.browser.IntentHandler.IntentHandlerDelegate;
import org.chromium.chrome.browser.IntentHandler.TabOpenType;
import org.chromium.chrome.browser.app.appmenu.AppMenuPropertiesDelegateImpl;
@@ -1509,6 +1510,9 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
throw new IllegalStateException(
"Attempting to access TabCreator before initialization");
}
+ if (ContextUtils.getAppSharedPreferences().getBoolean(AlwaysIncognitoLinkInterceptor.PREF_ALWAYS_INCOGNITO, false)) {
+ return mIncognitoTabCreator;
+ }
return incognito ? mIncognitoTabCreator : mRegularTabCreator;
}
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
@@ -51,6 +51,7 @@ import org.chromium.base.supplier.OneShotCallback;
@@ -49,6 +49,7 @@ import org.chromium.base.supplier.OneShotCallback;
import org.chromium.base.supplier.Supplier;
import org.chromium.base.task.PostTask;
import org.chromium.chrome.R;
@ -161,7 +141,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
import org.chromium.chrome.browser.IntentHandler.IntentHandlerDelegate;
import org.chromium.chrome.browser.IntentHandler.TabOpenType;
import org.chromium.chrome.browser.accessibility_tab_switcher.OverviewListLayout;
@@ -1664,8 +1665,9 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -1543,8 +1544,9 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
Bundle savedInstanceState = getSavedInstanceState();
// We determine the model as soon as possible so every systems get initialized coherently.
@ -172,11 +152,32 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
+ && savedInstanceState.getBoolean("is_incognito_selected", false));
int index = savedInstanceState != null ? savedInstanceState.getInt(WINDOW_INDEX, 0) : 0;
NextTabPolicySupplier nextTabPolicySupplier =
mNextTabPolicySupplier = new ChromeNextTabPolicySupplier(mOverviewModeBehaviorSupplier);
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
@@ -83,6 +83,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;
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
import org.chromium.chrome.browser.dependency_injection.ChromeActivityComponent;
import org.chromium.chrome.browser.dependency_injection.ModuleFactoryOverrides;
import org.chromium.chrome.browser.device.DeviceClassManager;
@@ -1489,6 +1490,9 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
throw new IllegalStateException(
"Attempting to access TabCreator before initialization");
}
+ if (ContextUtils.getAppSharedPreferences().getBoolean(AlwaysIncognitoLinkInterceptor.PREF_ALWAYS_INCOGNITO, false)) {
+ return mIncognitoTabCreator;
+ }
return incognito ? mIncognitoTabCreator : mRegularTabCreator;
}
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
@@ -296,6 +296,12 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
@@ -354,6 +354,12 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
}
private void prepareCommonMenuItems(Menu menu, @MenuGroup int menuGroup, boolean isIncognito) {
@ -218,8 +219,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr
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
@@ -50,6 +50,9 @@ import org.chromium.components.browser_ui.widget.TintedDrawable;
import org.chromium.components.embedder_support.util.UrlConstants;
@@ -52,6 +52,9 @@ import org.chromium.components.embedder_support.util.UrlConstants;
import org.chromium.device.mojom.ScreenOrientationLockType;
import org.chromium.ui.util.ColorUtils;
+import org.chromium.base.ContextUtils;
@ -228,20 +229,19 @@ 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;
@@ -409,6 +412,9 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid
// TODO(https://crbug.com/1023759): Remove this function and enable
// incognito CCT request for all apps.
private boolean isValidIncognitoIntent(Intent intent) {
+ if (ContextUtils.getAppSharedPreferences().getBoolean(AlwaysIncognitoLinkInterceptor.PREF_ALWAYS_INCOGNITO, false)) {
+ return true;
+ }
if (!isIncognitoRequested(intent)) return false;
// Incognito requests for payments flow are supported without
// INCOGNITO_CCT flag as an exceptional case that can use Chrome
@@ -764,7 +767,7 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid
@Override
public boolean isIncognito() {
- return false;
+ return ContextUtils.getAppSharedPreferences().getBoolean(AlwaysIncognitoLinkInterceptor.PREF_ALWAYS_INCOGNITO, false);
}
@Nullable
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/StartupTabPreloader.java b/chrome/android/java/src/org/chromium/chrome/browser/init/StartupTabPreloader.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/init/StartupTabPreloader.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/init/StartupTabPreloader.java
@@ -36,6 +36,9 @@ import org.chromium.ui.base.PageTransition;
@@ -37,6 +37,9 @@ import org.chromium.ui.base.PageTransition;
import org.chromium.ui.base.WindowAndroid;
import org.chromium.url.GURL;
@ -251,7 +251,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/StartupTab
/**
* This class attempts to preload the tab if the url is known from the intent when the profile
* is created. This is done to improve startup latency.
@@ -187,9 +190,11 @@ public class StartupTabPreloader implements ProfileManager.Observer, Destroyable
@@ -188,9 +191,11 @@ public class StartupTabPreloader implements ProfileManager.Observer, Destroyable
Intent intent = mIntentSupplier.get();
GURL url = UrlFormatter.fixupUrl(getUrlFromIntent(intent));
@ -265,7 +265,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/StartupTab
mLoadUrlParams = new LoadUrlParams(url.getValidSpecOrEmpty());
String referrer = IntentHandler.getReferrerUrlIncludingExtraHeaders(intent);
@@ -203,7 +208,7 @@ public class StartupTabPreloader implements ProfileManager.Observer, Destroyable
@@ -204,7 +209,7 @@ public class StartupTabPreloader implements ProfileManager.Observer, Destroyable
// Create a detached tab, but don't add it to the tab model yet. We'll do that
// later if the loadUrlParams etc... match.
mTab = TabBuilder.createLiveTab(false)
@ -288,7 +288,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}.
*/
@@ -59,6 +63,7 @@ public class ChromeTabCreator extends TabCreatorManager.TabCreator {
@@ -59,6 +63,7 @@ public class ChromeTabCreator extends TabCreator {
private final ChromeActivity mActivity;
private final StartupTabPreloader mStartupTabPreloader;
private final boolean mIncognito;
@ -296,7 +296,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
private WindowAndroid mNativeWindow;
private TabModel mTabModel;
@@ -76,6 +81,10 @@ public class ChromeTabCreator extends TabCreatorManager.TabCreator {
@@ -77,6 +82,10 @@ public class ChromeTabCreator extends TabCreator {
mNativeWindow = nativeWindow;
mTabDelegateFactorySupplier = tabDelegateFactory;
mIncognito = incognito;
@ -305,9 +305,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
+ else
+ mExtraLogic = null;
mOverviewNTPCreator = overviewNTPCreator;
mAsyncTabParamsManager = asyncTabParamsManager;
}
@@ -228,6 +237,8 @@ public class ChromeTabCreator extends TabCreatorManager.TabCreator {
@@ -229,6 +238,8 @@ public class ChromeTabCreator extends TabCreator {
if (creationState == TabCreationState.LIVE_IN_FOREGROUND && !openInForeground) {
creationState = TabCreationState.LIVE_IN_BACKGROUND;
}
@ -316,7 +316,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
mTabModel.addTab(tab, position, type, creationState);
return tab;
} finally {
@@ -262,6 +273,8 @@ public class ChromeTabCreator extends TabCreatorManager.TabCreator {
@@ -263,6 +274,8 @@ public class ChromeTabCreator extends TabCreator {
@TabCreationState
int creationState = openInForeground ? TabCreationState.LIVE_IN_FOREGROUND
: TabCreationState.LIVE_IN_BACKGROUND;
@ -325,7 +325,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
mTabModel.addTab(tab, position, type, creationState);
return true;
}
@@ -305,7 +318,6 @@ public class ChromeTabCreator extends TabCreatorManager.TabCreator {
@@ -306,7 +319,6 @@ public class ChromeTabCreator extends TabCreator {
// TODO(crbug.com/1081924): Clean up the launches from SearchActivity/Chrome.
public Tab launchUrlFromExternalApp(String url, String referer, String headers, String appId,
boolean forceNewTab, Intent intent, long intentTimestamp) {
@ -333,8 +333,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
boolean isLaunchedFromChrome = TextUtils.equals(appId, mActivity.getPackageName());
if (forceNewTab && !isLaunchedFromChrome) {
@@ -412,6 +424,8 @@ public class ChromeTabCreator extends TabCreatorManager.TabCreator {
.setTabState(state)
@@ -415,6 +427,8 @@ public class ChromeTabCreator extends TabCreator {
.setSerializedCriticalPersistedTabData(serializedCriticalPersistedTabData)
.build();
}
+ if (mExtraLogic != null)
@ -345,7 +345,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorBase.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorBase.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorBase.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorBase.java
@@ -247,7 +247,15 @@ public abstract class TabModelSelectorBase implements TabModelSelector {
@@ -246,7 +246,15 @@ public abstract class TabModelSelectorBase implements TabModelSelector {
public void markTabStateInitialized() {
if (mTabStateInitialized) return;
mTabStateInitialized = true;
@ -364,7 +364,15 @@ 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
@@ -47,6 +47,8 @@ import org.chromium.components.embedder_support.util.UrlConstants;
@@ -16,6 +16,7 @@ import androidx.annotation.VisibleForTesting;
import androidx.core.util.AtomicFile;
import org.chromium.base.Callback;
+import org.chromium.base.ContextUtils;
import org.chromium.base.Log;
import org.chromium.base.ObserverList;
import org.chromium.base.StreamUtil;
@@ -49,6 +50,8 @@ import org.chromium.components.embedder_support.util.UrlConstants;
import org.chromium.content_public.browser.LoadUrlParams;
import org.chromium.content_public.browser.UiThreadTaskTraits;
@ -373,7 +381,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;
@@ -599,6 +601,13 @@ public class TabPersistentStore extends TabPersister {
@@ -597,6 +600,13 @@ public class TabPersistentStore extends TabPersister {
}
}
@ -387,10 +395,55 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPer
TabModel model = mTabModelSelector.getModel(isIncognito);
if (model.isIncognito() != isIncognito) {
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappIntentDataProvider.java b/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappIntentDataProvider.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappIntentDataProvider.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappIntentDataProvider.java
@@ -19,6 +19,9 @@ import org.chromium.chrome.browser.browserservices.BrowserServicesIntentDataProv
import org.chromium.chrome.browser.flags.ActivityType;
import org.chromium.components.browser_ui.widget.TintedDrawable;
+import org.chromium.base.ContextUtils;
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
+
/**
* Stores info about a web app.
*/
@@ -32,6 +35,8 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider
private final @ActivityType int mActivityType;
private final Intent mIntent;
+ private boolean mIsIncognito = false;
+
/**
* Returns the toolbar color to use if a custom color is not specified by the webapp.
*/
@@ -51,6 +56,10 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider
mWebappExtras = webappExtras;
mWebApkExtras = webApkExtras;
mActivityType = (webApkExtras != null) ? ActivityType.WEB_APK : ActivityType.WEBAPP;
+
+ if (ContextUtils.getAppSharedPreferences().getBoolean(AlwaysIncognitoLinkInterceptor.PREF_ALWAYS_INCOGNITO, false)) {
+ mIsIncognito = true;
+ }
}
@Override
@@ -129,6 +138,11 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider
return mWebApkExtras;
}
+ @Override
+ public boolean isIncognito() {
+ return mIsIncognito;
+ }
+
@Override
public int getDefaultOrientation() {
return mWebappExtras.orientation;
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
@@ -333,7 +333,7 @@ const base::Feature kCCTExternalLinkHandling{"CCTExternalLinkHandling",
@@ -350,7 +350,7 @@ const base::Feature kCCTExternalLinkHandling{"CCTExternalLinkHandling",
base::FEATURE_ENABLED_BY_DEFAULT};
const base::Feature kCCTIncognito{"CCTIncognito",
@ -402,7 +455,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/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
@@ -773,6 +773,13 @@ Your Google account may have other forms of browsing history like searches and a
@@ -787,6 +787,13 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_CLEAR_BROWSING_HISTORY_SUMMARY" desc="A text for the basic tab explaining browsing history.">
Clears history and autocompletions in the address bar.
</message>

View file

@ -12,7 +12,7 @@ Completely remove contacts picker permission from the file dialog
.../browser/bookmarks/BookmarkActivity.java | 15 ++
.../browser/bookmarks/BookmarkBridge.java | 47 ++++
.../browser/bookmarks/BookmarkDelegate.java | 10 +
.../browser/bookmarks/BookmarkManager.java | 20 ++
.../browser/bookmarks/BookmarkManager.java | 19 ++
.../browser/bookmarks/BookmarkPage.java | 1 +
chrome/browser/BUILD.gn | 8 +-
.../android/bookmarks/bookmark_bridge.cc | 217 ++++++++++++++++++
@ -28,7 +28,7 @@ Completely remove contacts picker permission from the file dialog
ui/shell_dialogs/select_file_dialog.h | 2 +
.../select_file_dialog_android.cc | 6 +
ui/shell_dialogs/select_file_dialog_android.h | 2 +
22 files changed, 448 insertions(+), 14 deletions(-)
22 files changed, 447 insertions(+), 14 deletions(-)
diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/AndroidManifest.xml
--- a/chrome/android/java/AndroidManifest.xml
@ -263,18 +263,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManager.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManager.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManager.java
@@ -33,8 +33,10 @@ import org.chromium.components.browser_ui.util.ConversionUtils;
@@ -33,6 +33,7 @@ import org.chromium.components.browser_ui.util.ConversionUtils;
import org.chromium.components.browser_ui.widget.dragreorder.DragStateDelegate;
import org.chromium.components.browser_ui.widget.selectable_list.SelectableListLayout;
import org.chromium.components.browser_ui.widget.selectable_list.SelectableListToolbar.SearchDelegate;
+import org.chromium.ui.base.ActivityWindowAndroid;
import org.chromium.components.browser_ui.widget.selectable_list.SelectionDelegate;
import org.chromium.url.GURL;
+import org.chromium.chrome.browser.ChromeActivity;
import java.util.Stack;
@@ -53,6 +55,7 @@ public class BookmarkManager
@@ -53,6 +54,7 @@ public class BookmarkManager
private Activity mActivity;
private ViewGroup mMainView;
private BookmarkModel mBookmarkModel;
@ -282,7 +279,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
private BookmarkUndoController mUndoController;
private final ObserverList<BookmarkUIObserver> mUIObservers = new ObserverList<>();
private BasicNativePage mNativePage;
@@ -323,6 +326,13 @@ public class BookmarkManager
@@ -323,6 +325,13 @@ public class BookmarkManager
mNativePage = nativePage;
}
@ -296,7 +293,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
/**
* @return Current URL representing the UI state of bookmark manager. If no state has been shown
* yet in this session, on phone return last used state stored in preference; on tablet
@@ -495,6 +505,16 @@ public class BookmarkManager
@@ -495,6 +504,16 @@ public class BookmarkManager
}
}
@ -327,7 +324,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -182,6 +182,10 @@ static_library("browser") {
@@ -190,6 +190,10 @@ static_library("browser") {
"bitmap_fetcher/bitmap_fetcher_service.h",
"bitmap_fetcher/bitmap_fetcher_service_factory.cc",
"bitmap_fetcher/bitmap_fetcher_service_factory.h",
@ -338,7 +335,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
"bluetooth/bluetooth_chooser_context.cc",
"bluetooth/bluetooth_chooser_context.h",
"bluetooth/bluetooth_chooser_context_factory.cc",
@@ -3048,8 +3052,6 @@ static_library("browser") {
@@ -3126,8 +3130,6 @@ static_library("browser") {
"badging/badge_manager_factory.h",
"banners/app_banner_manager_desktop.cc",
"banners/app_banner_manager_desktop.h",
@ -347,7 +344,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
"browsing_data/access_context_audit_database.cc",
"browsing_data/access_context_audit_database.h",
"browsing_data/access_context_audit_service.cc",
@@ -3189,8 +3191,6 @@ static_library("browser") {
@@ -3265,8 +3267,6 @@ static_library("browser") {
"importer/importer_uma.h",
"importer/in_process_importer_bridge.cc",
"importer/in_process_importer_bridge.h",
@ -752,8 +749,8 @@ 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
@@ -415,6 +415,9 @@ static_library("common") {
sources += [
@@ -410,6 +410,9 @@ static_library("common") {
"android/cpu_affinity_experiments.h",
"media/chrome_media_drm_bridge_client.cc",
"media/chrome_media_drm_bridge_client.h",
+ ## Bromite dependencies for bookmark import functionality
@ -765,7 +762,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
@@ -70,8 +70,6 @@ static_library("utility") {
@@ -71,8 +71,6 @@ static_library("utility") {
if (!is_android) {
sources += [
@ -774,7 +771,7 @@ diff --git a/chrome/utility/BUILD.gn b/chrome/utility/BUILD.gn
"importer/bookmarks_file_importer.cc",
"importer/bookmarks_file_importer.h",
"importer/edge_database_reader_win.cc",
@@ -172,6 +170,11 @@ static_library("utility") {
@@ -173,6 +171,11 @@ static_library("utility") {
}
}
@ -889,15 +886,15 @@ diff --git a/chrome/utility/importer/bookmark_html_reader.h b/chrome/utility/imp
diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java
--- a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java
+++ b/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java
@@ -36,6 +36,7 @@ import org.chromium.base.task.PostTask;
@@ -35,6 +35,7 @@ import org.chromium.base.task.AsyncTask;
import org.chromium.base.task.PostTask;
import org.chromium.base.task.TaskTraits;
import org.chromium.ui.PhotoPickerListener;
import org.chromium.ui.R;
+import org.chromium.ui.widget.Toast;
import org.chromium.ui.UiUtils;
import java.io.File;
@@ -55,6 +56,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
@@ -54,6 +55,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
private static final String IMAGE_TYPE = "image/";
private static final String VIDEO_TYPE = "video/";
private static final String AUDIO_TYPE = "audio/";
@ -905,7 +902,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui
private static final String ALL_IMAGE_TYPES = IMAGE_TYPE + "*";
private static final String ALL_VIDEO_TYPES = VIDEO_TYPE + "*";
private static final String ALL_AUDIO_TYPES = AUDIO_TYPE + "*";
@@ -133,6 +135,11 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
@@ -151,6 +153,11 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
mFileTypes = fileTypes;
}
@ -917,7 +914,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui
/**
* Creates and starts an intent based on the passed fileTypes and capture value.
* @param fileTypes MIME types requested (i.e. "image/*")
@@ -160,7 +167,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
@@ -178,7 +185,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
List<String> missingPermissions = new ArrayList<>();
String storagePermission = Manifest.permission.READ_EXTERNAL_STORAGE;
boolean shouldUsePhotoPicker = shouldUsePhotoPicker();
@ -926,7 +923,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui
if (!window.hasPermission(storagePermission)) missingPermissions.add(storagePermission);
} else {
if (((mSupportsImageCapture && shouldShowImageTypes())
@@ -188,7 +195,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
@@ -206,7 +213,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
}
// TODO(finnur): Remove once we figure out the cause of crbug.com/950024.
@ -935,7 +932,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui
if (permissions.length != requestPermissions.length) {
throw new RuntimeException(
String.format("Permissions arrays misaligned: %d != %d",
@@ -202,7 +209,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
@@ -220,7 +227,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
}
}
@ -944,7 +941,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui
onFileNotSelected();
return;
}
@@ -351,6 +358,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
@@ -367,6 +374,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
}
if (!mimeTypes.contains(mimeType)) mimeTypes.add(mimeType);
}
@ -952,7 +949,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui
return mimeTypes;
}
@@ -631,6 +639,10 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
@@ -647,6 +655,10 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
return countAcceptTypesFor(specificType) > 0;
}
@ -966,7 +963,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui
diff --git a/ui/shell_dialogs/select_file_dialog.h b/ui/shell_dialogs/select_file_dialog.h
--- a/ui/shell_dialogs/select_file_dialog.h
+++ b/ui/shell_dialogs/select_file_dialog.h
@@ -191,6 +191,8 @@ class SHELL_DIALOGS_EXPORT SelectFileDialog
@@ -198,6 +198,8 @@ class SHELL_DIALOGS_EXPORT SelectFileDialog
void* params);
bool HasMultipleFileTypeChoices();

View file

@ -26,10 +26,10 @@ diff --git a/chrome/android/java/res/values/values.xml b/chrome/android/java/res
diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml
--- a/chrome/android/java/res/xml/privacy_preferences.xml
+++ b/chrome/android/java/res/xml/privacy_preferences.xml
@@ -29,6 +29,11 @@
android:fragment="org.chromium.chrome.browser.privacy.settings.DoNotTrackSettings"
@@ -28,6 +28,11 @@
android:key="do_not_track"
android:title="@string/do_not_track_title" />
android:title="@string/do_not_track_title"
android:order="3"/>
+ <org.chromium.components.browser_ui.settings.ChromeBaseCheckBoxPreference
+ android:key="allow_custom_tab_intents"
+ android:title="@string/allow_custom_tab_intents_title"
@ -62,7 +62,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDis
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
@@ -50,6 +50,8 @@ public class PrivacySettings
@@ -49,6 +49,8 @@ public class PrivacySettings
private ManagedPreferenceDelegate mManagedPreferenceDelegate;
@ -71,19 +71,19 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
PrivacyPreferencesManager privacyPrefManager = PrivacyPreferencesManager.getInstance();
@@ -90,6 +92,10 @@ public class PrivacySettings
Pref.CAN_MAKE_PAYMENT_ENABLED, (boolean) newValue);
@@ -95,6 +97,10 @@ public class PrivacySettings
.setBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED, (boolean) newValue);
} else if (PREF_NETWORK_PREDICTIONS.equals(key)) {
PrivacyPreferencesManager.getInstance().setNetworkPredictionEnabled((boolean) newValue);
+ } else if (PREF_ALLOW_CUSTOM_TAB_INTENTS.equals(key)) {
+ SharedPreferences.Editor sharedPreferencesEditor = ContextUtils.getAppSharedPreferences().edit();
+ sharedPreferencesEditor.putBoolean(PREF_ALLOW_CUSTOM_TAB_INTENTS, (boolean)newValue);
+ sharedPreferencesEditor.apply();
} else if (PREF_SEARCH_SUGGESTIONS.equals(key)) {
PrefServiceBridge.getInstance().setBoolean(Pref.SEARCH_SUGGEST_ENABLED, (boolean) newValue);
}
@@ -125,6 +131,11 @@ public class PrivacySettings
prefServiceBridge.getBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED));
return true;
@@ -118,6 +124,11 @@ public class PrivacySettings
canMakePaymentPref.setChecked(prefService.getBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED));
}
+ ChromeBaseCheckBoxPreference allowCustomTabIntentsPref =
@ -93,11 +93,11 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
+
Preference doNotTrackPref = findPreference(PREF_DO_NOT_TRACK);
if (doNotTrackPref != null) {
doNotTrackPref.setSummary(prefServiceBridge.getBoolean(Pref.ENABLE_DO_NOT_TRACK)
doNotTrackPref.setSummary(prefService.getBoolean(Pref.ENABLE_DO_NOT_TRACK)
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
@@ -3585,6 +3585,13 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -3768,6 +3768,13 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<message name="IDS_NEAR_OOM_REDUCTION_DECLINE" desc="The text of the button letting the user decline the browser's intervention, so that the page can be reloaded.">
Show original
</message>

View file

@ -5,36 +5,44 @@ Subject: Add exit menu item
Corrected Exit functionality
---
chrome/android/java/res/menu/main_menu.xml | 4 ++++
.../src/org/chromium/chrome/browser/ChromeActivity.java | 5 +++++
.../src/org/chromium/chrome/browser/app/ChromeActivity.java | 6 ++++++
.../chrome/browser/init/ChromeLifetimeController.java | 6 +++++-
.../browser/ui/android/strings/android_chrome_strings.grd | 3 +++
4 files changed, 17 insertions(+), 1 deletion(-)
4 files changed, 18 insertions(+), 1 deletion(-)
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
+++ b/chrome/android/java/res/menu/main_menu.xml
@@ -87,6 +87,8 @@
android:title="@string/menu_help" />
<item android:id="@+id/enter_vr_id"
android:title="@string/enter_vr" />
@@ -116,6 +116,8 @@
android:icon="@drawable/vr_headset" />
<item android:id="@+id/managed_by_menu_id"
android:title="@string/managed" />
+ <item android:id="@+id/exit_id"
+ android:title="@string/menu_exit" />
</group>
<!-- Items shown only in the tab switcher -->
@@ -104,6 +106,8 @@
android:title="@string/menu_group_tabs" />
@@ -139,6 +141,8 @@
<item android:id="@id/preferences_id"
android:title="@string/menu_settings" />
android:title="@string/menu_settings"
android:icon="@drawable/settings_cog" />
+ <item android:id="@+id/exit_id"
+ android:title="@string/menu_exit" />
</group>
<!-- Items shown only in the tab switcher when start surface is enabled -->
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
@@ -1896,6 +1896,11 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
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
@@ -53,6 +53,7 @@ import org.chromium.base.supplier.ObservableSupplierImpl;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.ActivityTabProvider;
import org.chromium.chrome.browser.AppHooks;
+import org.chromium.chrome.browser.ApplicationLifetime;
import org.chromium.chrome.browser.ChromeActivitySessionTracker;
import org.chromium.chrome.browser.ChromeApplication;
import org.chromium.chrome.browser.ChromeVersionInfo;
@@ -1874,6 +1875,11 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
RecordUserAction.record("MobileMenuSettings");
}
@ -65,7 +73,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeLife
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
@@ -2551,6 +2551,9 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -2698,6 +2698,9 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<message name="IDS_MENU_SETTINGS" desc="Menu item for opening browser settings. [CHAR-LIMIT=27]">
Settings
</message>

View file

@ -19,7 +19,7 @@ with limited CPU/memory resources and it is disabled by default.
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
@@ -701,6 +701,11 @@ const FeatureEntry::Choice kForceEffectiveConnectionTypeChoices[] = {
@@ -732,6 +732,11 @@ const FeatureEntry::Choice kForceEffectiveConnectionTypeChoices[] = {
net::kEffectiveConnectionType4G},
};
@ -31,7 +31,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
// Ensure that all effective connection types returned by Network Quality
// Estimator (NQE) are also exposed via flags.
static_assert(net::EFFECTIVE_CONNECTION_TYPE_LAST + 2 ==
@@ -2953,6 +2958,9 @@ const FeatureEntry kFeatureEntries[] = {
@@ -3249,6 +3254,9 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kAndroidPictureInPictureAPIName,
flag_descriptions::kAndroidPictureInPictureAPIDescription, kOsAndroid,
FEATURE_VALUE_TYPE(media::kPictureInPictureAPI)},
@ -44,7 +44,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
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
@@ -1298,6 +1298,10 @@ const char kMediaHistoryDescription[] =
@@ -1374,6 +1374,10 @@ const char kMediaHistoryDescription[] =
"Enables Media History which records data around media playbacks on "
"websites.";
@ -58,7 +58,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -770,6 +770,9 @@ extern const char kMarkHttpAsWarningAndDangerousOnFormEdits[];
@@ -810,6 +810,9 @@ extern const char kMarkHttpAsWarningAndDangerousOnFormEdits[];
extern const char kMediaHistoryName[];
extern const char kMediaHistoryDescription[];
@ -110,14 +110,14 @@ diff --git a/components/network_session_configurator/common/network_switch_list.
diff --git a/components/url_formatter/spoof_checks/top_domains/BUILD.gn b/components/url_formatter/spoof_checks/top_domains/BUILD.gn
--- a/components/url_formatter/spoof_checks/top_domains/BUILD.gn
+++ b/components/url_formatter/spoof_checks/top_domains/BUILD.gn
@@ -72,6 +72,7 @@ executable("make_top_domain_list_variables") {
"//base",
"//base:i18n",
@@ -74,6 +74,7 @@ executable("make_top_domain_list_variables") {
"//base/util/ranges:ranges",
"//components/url_formatter/spoof_checks/common_words:common",
"//third_party/icu",
+ "//components/network_session_configurator/common"
]
if (is_ios) {
libs = [ "UIKit.framework" ]
frameworks = [ "UIKit.framework" ]
diff --git a/net/socket/client_socket_pool_manager.cc b/net/socket/client_socket_pool_manager.cc
--- a/net/socket/client_socket_pool_manager.cc
+++ b/net/socket/client_socket_pool_manager.cc

View file

@ -13,7 +13,7 @@ Disable it by default on Android as it is everywhere else
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
@@ -2146,6 +2146,10 @@ const FeatureEntry kFeatureEntries[] = {
@@ -2413,6 +2413,10 @@ const FeatureEntry kFeatureEntries[] = {
kOsAura,
FEATURE_VALUE_TYPE(features::kOverlayScrollbarFlashWhenMouseEnter)},
#endif // USE_AURA
@ -27,7 +27,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
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
@@ -912,6 +912,11 @@ const char kMemlogStackModeNative[] = "Native";
@@ -958,6 +958,11 @@ const char kMemlogStackModeNative[] = "Native";
const char kMemlogStackModeNativeWithThreadNames[] = "Native with thread names";
const char kMemlogStackModePseudo[] = "Trace events";
@ -42,7 +42,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -518,6 +518,9 @@ extern const char kEnablePortalsDescription[];
@@ -541,6 +541,9 @@ extern const char kEnablePortalsDescription[];
extern const char kEnablePortalsCrossOriginName[];
extern const char kEnablePortalsCrossOriginDescription[];
@ -55,7 +55,7 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio
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
@@ -232,11 +232,7 @@ const base::Feature kPreloadMetadataLazyLoad{"PreloadMetadataLazyLoad",
@@ -237,11 +237,7 @@ const base::Feature kPreloadMetadataLazyLoad{"PreloadMetadataLazyLoad",
// when in background.
const base::Feature kResumeBackgroundVideo {
"resume-background-video",

View file

@ -16,9 +16,9 @@ Subject: Add flag to disable IPv6 probes
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
@@ -3770,6 +3770,11 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(features::kDirectManipulationStylus)},
#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
@@ -4151,6 +4151,11 @@ const FeatureEntry kFeatureEntries[] = {
#endif // defined(OS_WIN) || defined(OS_MAC) || defined(OS_LINUX) ||
// defined(OS_CHROMEOS)
+ {"ipv6-probing",
+ flag_descriptions::kIPv6ProbingName,
@ -26,12 +26,12 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
+ FEATURE_VALUE_TYPE(network::features::kIPv6Probing)},
+
#if !defined(OS_ANDROID)
{"ntp-confirm-suggestion-removals",
flag_descriptions::kNtpConfirmSuggestionRemovalsName,
{"ntp-dismiss-promos", flag_descriptions::kNtpDismissPromosName,
flag_descriptions::kNtpDismissPromosDescription, kOsDesktop,
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
@@ -2561,6 +2561,10 @@ const char kContextualSearchRankerQueryDescription[] =
@@ -2750,6 +2750,10 @@ const char kContextualSearchRankerQueryDescription[] =
const char kContextualSearchSecondTapName[] =
"Contextual Search second tap triggering";
@ -45,7 +45,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -584,6 +584,9 @@ extern const char kEnableWasmThreadsName[];
@@ -612,6 +612,9 @@ extern const char kEnableWasmThreadsName[];
extern const char kEnableWasmThreadsDescription[];
extern const char kEnableWasmTieringName[];
@ -88,16 +88,16 @@ diff --git a/components/subresource_filter/tools/BUILD.gn b/components/subresour
diff --git a/components/url_formatter/spoof_checks/top_domains/BUILD.gn b/components/url_formatter/spoof_checks/top_domains/BUILD.gn
--- a/components/url_formatter/spoof_checks/top_domains/BUILD.gn
+++ b/components/url_formatter/spoof_checks/top_domains/BUILD.gn
@@ -72,7 +72,8 @@ executable("make_top_domain_list_variables") {
"//base",
"//base:i18n",
@@ -74,7 +74,8 @@ executable("make_top_domain_list_variables") {
"//base/util/ranges:ranges",
"//components/url_formatter/spoof_checks/common_words:common",
"//third_party/icu",
- "//components/network_session_configurator/common"
+ "//components/network_session_configurator/common",
+ "//services/network/public/cpp",
]
if (is_ios) {
libs = [ "UIKit.framework" ]
frameworks = [ "UIKit.framework" ]
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

View file

@ -11,7 +11,7 @@ Subject: Add flag to disable WebGL
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
@@ -1975,6 +1975,9 @@ const FeatureEntry kFeatureEntries[] = {
@@ -2240,6 +2240,9 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kAccelerated2dCanvasName,
flag_descriptions::kAccelerated2dCanvasDescription, kOsAll,
SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAccelerated2dCanvas)},
@ -24,9 +24,9 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
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
@@ -484,6 +484,10 @@ const char kDeviceDiscoveryNotificationsName[] =
const char kDeviceDiscoveryNotificationsDescription[] =
"Device discovery notifications on local network.";
@@ -517,6 +517,10 @@ const char kForceEnableDevicesPageDescription[] =
"content, instead of a warning message. Note: chrome://devices is "
"no longer supported, and this flag will be permanently removed in M88.";
+const char kDisableWebGLName[] = "Disable all versions of WebGL";
+
@ -38,9 +38,9 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -301,6 +301,9 @@ extern const char kDebugShortcutsDescription[];
extern const char kDeviceDiscoveryNotificationsName[];
extern const char kDeviceDiscoveryNotificationsDescription[];
@@ -318,6 +318,9 @@ extern const char kDeviceDiscoveryNotificationsDescription[];
extern const char kForceEnableDevicesPageName[];
extern const char kForceEnableDevicesPageDescription[];
+extern const char kDisableWebGLName[];
+extern const char kDisableWebGLDescription[];

View file

@ -20,7 +20,7 @@ legacy acceleration events.
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
@@ -2199,6 +2199,12 @@ const FeatureEntry kFeatureEntries[] = {
@@ -2466,6 +2466,12 @@ const FeatureEntry kFeatureEntries[] = {
{"enable-gpu-rasterization", flag_descriptions::kGpuRasterizationName,
flag_descriptions::kGpuRasterizationDescription, kOsAll,
MULTI_VALUE_TYPE(kEnableGpuRasterizationChoices)},
@ -36,7 +36,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
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
@@ -705,6 +705,14 @@ const char kWinrtSensorsImplementationDescription[] =
@@ -739,6 +739,14 @@ const char kWinrtSensorsImplementationDescription[] =
"Enables usage of the Windows.Devices.Sensors WinRT APIs on Windows for "
"sensors";
@ -54,7 +54,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -422,6 +422,12 @@ extern const char kWinrtGeolocationImplementationDescription[];
@@ -439,6 +439,12 @@ extern const char kWinrtGeolocationImplementationDescription[];
extern const char kWinrtSensorsImplementationName[];
extern const char kWinrtSensorsImplementationDescription[];
@ -70,7 +70,7 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio
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
@@ -92,6 +92,9 @@ void SetRuntimeFeatureDefaultsForPlatform(
@@ -94,6 +94,9 @@ void SetRuntimeFeatureDefaultsForPlatform(
command_line.HasSwitch(
blink::switches::kEnableGpuMemoryBufferCompositorResources) &&
!command_line.HasSwitch(switches::kDisableWebGLImageChromium) &&
@ -83,7 +83,7 @@ diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.
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
@@ -801,6 +801,16 @@ const base::Feature kWebOtpBackend{"kWebOtpBackend",
@@ -833,6 +833,16 @@ const base::Feature kWebOtpBackend{"kWebOtpBackend",
// TODO(rouslan): Remove this.
const base::Feature kWebPayments{"WebPayments",
base::FEATURE_ENABLED_BY_DEFAULT};
@ -103,9 +103,9 @@ 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
@@ -175,6 +175,8 @@ CONTENT_EXPORT extern const base::Feature kWebXrHitTest;
@@ -180,6 +180,8 @@ CONTENT_EXPORT extern const base::Feature kWebXrArModule;
CONTENT_EXPORT extern const base::Feature kWebXrHitTest;
CONTENT_EXPORT extern const base::Feature kWebXrIncubations;
CONTENT_EXPORT extern const base::Feature kWebXrPermissionsApi;
+CONTENT_EXPORT extern const base::Feature kDeviceMotion, kDeviceOrientation;
+
@ -127,7 +127,7 @@ diff --git a/third_party/blink/public/platform/web_runtime_features.h b/third_pa
diff --git a/third_party/blink/renderer/modules/modules_initializer.cc b/third_party/blink/renderer/modules/modules_initializer.cc
--- a/third_party/blink/renderer/modules/modules_initializer.cc
+++ b/third_party/blink/renderer/modules/modules_initializer.cc
@@ -224,9 +224,13 @@ void ModulesInitializer::OnClearWindowObjectInMainWorld(
@@ -226,9 +226,13 @@ void ModulesInitializer::OnClearWindowObjectInMainWorld(
Document& document,
const Settings& settings) const {
LocalDOMWindow& window = *document.domWindow();
@ -165,7 +165,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
@@ -1256,6 +1256,14 @@
@@ -1303,6 +1303,14 @@
name: "OffscreenCanvasCommit",
status: "experimental",
},

View file

@ -9,10 +9,10 @@ Subject: Add history support in incognito mode
chrome/browser/history/history_tab_helper.h | 4 ++++
chrome/browser/prefs/browser_prefs.cc | 2 ++
.../android/strings/android_chrome_strings.grd | 6 ++++++
.../translations/android_chrome_strings_it.xtb | 2 ++
.../translations/android_chrome_strings_it.xtb | 4 +++-
chrome/common/pref_names.cc | 5 +++++
chrome/common/pref_names.h | 4 ++++
9 files changed, 62 insertions(+)
9 files changed, 63 insertions(+), 1 deletion(-)
mode change 100644 => 100755 chrome/android/java/res/xml/privacy_preferences.xml
mode change 100644 => 100755 chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
mode change 100644 => 100755 chrome/browser/history/history_tab_helper.cc
@ -28,7 +28,7 @@ old mode 100644
new mode 100755
--- a/chrome/android/java/res/xml/privacy_preferences.xml
+++ b/chrome/android/java/res/xml/privacy_preferences.xml
@@ -39,6 +39,11 @@
@@ -32,6 +32,11 @@
android:title="@string/close_tabs_on_exit_title"
android:summary="@string/close_tabs_on_exit_summary"
android:defaultValue="false" />
@ -45,16 +45,16 @@ old mode 100644
new mode 100755
--- 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
@@ -38,6 +38,8 @@ import org.chromium.ui.text.SpanApplier;
import java.util.List;
@@ -35,6 +35,8 @@ import org.chromium.components.user_prefs.UserPrefs;
import org.chromium.ui.text.NoUnderlineClickableSpan;
import org.chromium.ui.text.SpanApplier;
+import org.chromium.base.Log;
+
/**
* Fragment to keep track of the all the privacy related preferences.
*/
@@ -54,6 +56,7 @@ public class PrivacySettings
@@ -53,6 +55,7 @@ public class PrivacySettings
private ManagedPreferenceDelegate mManagedPreferenceDelegate;
public static final String PREF_ALLOW_CUSTOM_TAB_INTENTS = "allow_custom_tab_intents";
@ -62,9 +62,9 @@ new mode 100755
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
@@ -84,6 +87,11 @@ public class PrivacySettings
searchSuggestionsPref.setOnPreferenceChangeListener(this);
searchSuggestionsPref.setManagedPreferenceDelegate(mManagedPreferenceDelegate);
@@ -89,6 +92,11 @@ public class PrivacySettings
Preference secureDnsPref = findPreference(PREF_SECURE_DNS);
secureDnsPref.setVisible(SecureDnsSettings.isUiEnabled());
+ ChromeBaseCheckBoxPreference historyInIncognitoPref =
+ (ChromeBaseCheckBoxPreference) findPreference(PREF_INCOGNITO_TAB_HISTORY_ENABLED);
@ -74,17 +74,17 @@ new mode 100755
updateSummaries();
}
@@ -105,6 +113,9 @@ public class PrivacySettings
@@ -108,6 +116,9 @@ public class PrivacySettings
SharedPreferences.Editor sharedPreferencesEditor = ContextUtils.getAppSharedPreferences().edit();
sharedPreferencesEditor.putBoolean(PREF_CLOSE_TABS_ON_EXIT, (boolean)newValue);
sharedPreferencesEditor.putBoolean(PREF_ALLOW_CUSTOM_TAB_INTENTS, (boolean)newValue);
sharedPreferencesEditor.apply();
+ } else if (PREF_INCOGNITO_TAB_HISTORY_ENABLED.equals(key)) {
+ PrefServiceBridge.getInstance().setBoolean(
+ Pref.INCOGNITO_TAB_HISTORY_ENABLED, (boolean) newValue);
+ UserPrefs.get(Profile.getLastUsedRegularProfile())
+ .setBoolean(Pref.INCOGNITO_TAB_HISTORY_ENABLED, (boolean) newValue);
}
return true;
@@ -179,6 +190,13 @@ public class PrivacySettings
@@ -152,6 +163,13 @@ public class PrivacySettings
(ChromeBaseCheckBoxPreference) findPreference(PREF_CLOSE_TABS_ON_EXIT);
closeTabsOnExitPref.setOnPreferenceChangeListener(this);
closeTabsOnExitPref.setManagedPreferenceDelegate(mManagedPreferenceDelegate);
@ -93,7 +93,7 @@ new mode 100755
+ (CheckBoxPreference) findPreference(PREF_INCOGNITO_TAB_HISTORY_ENABLED);
+ if (historyInIncognitoPref != null) {
+ historyInIncognitoPref.setChecked(
+ prefServiceBridge.getBoolean(Pref.INCOGNITO_TAB_HISTORY_ENABLED));
+ prefService.getBoolean(Pref.INCOGNITO_TAB_HISTORY_ENABLED));
+ }
}
@ -103,7 +103,7 @@ old mode 100644
new mode 100755
--- a/chrome/browser/history/history_tab_helper.cc
+++ b/chrome/browser/history/history_tab_helper.cc
@@ -29,6 +29,9 @@
@@ -26,6 +26,9 @@
#if defined(OS_ANDROID)
#include "chrome/browser/android/background_tab_manager.h"
@ -113,7 +113,7 @@ new mode 100755
#else
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/browser_finder.h"
@@ -242,6 +245,13 @@ void HistoryTabHelper::TitleWasSet(NavigationEntry* entry) {
@@ -227,6 +230,13 @@ void HistoryTabHelper::TitleWasSet(NavigationEntry* entry) {
history::HistoryService* HistoryTabHelper::GetHistoryService() {
Profile* profile =
Profile::FromBrowserContext(web_contents()->GetBrowserContext());
@ -127,7 +127,7 @@ new mode 100755
if (profile->IsOffTheRecord())
return NULL;
@@ -249,6 +259,12 @@ history::HistoryService* HistoryTabHelper::GetHistoryService() {
@@ -234,6 +244,12 @@ history::HistoryService* HistoryTabHelper::GetHistoryService() {
profile, ServiceAccessType::IMPLICIT_ACCESS);
}
@ -168,7 +168,7 @@ old mode 100644
new mode 100755
--- a/chrome/browser/prefs/browser_prefs.cc
+++ b/chrome/browser/prefs/browser_prefs.cc
@@ -233,6 +233,7 @@
@@ -231,6 +231,7 @@
#include "components/ntp_tiles/popular_sites_impl.h"
#include "components/permissions/contexts/geolocation_permission_context_android.h"
#include "components/query_tiles/tile_service_prefs.h"
@ -176,7 +176,7 @@ new mode 100755
#if BUILDFLAG(ENABLE_FEED_IN_CHROME)
#include "components/feed/core/common/pref_names.h"
#endif // BUILDFLAG(ENABLE_FEED_IN_CHROME)
@@ -999,6 +1000,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
@@ -1015,6 +1016,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
usage_stats::UsageStatsBridge::RegisterProfilePrefs(registry);
variations::VariationsService::RegisterProfilePrefs(registry);
feed::prefs::RegisterFeedSharedProfilePrefs(registry);
@ -189,7 +189,7 @@ old mode 100644
new mode 100755
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -794,6 +794,12 @@ Your Google account may have other forms of browsing history like searches and a
@@ -811,6 +811,12 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_ALWAYS_INCOGNITO_SUMMARY" desc="Summary for always incognito mode">
Opens links in incognito tabs when you click on new tab or on a link
</message>
@ -207,21 +207,23 @@ old mode 100644
new mode 100755
--- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_it.xtb
+++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_it.xtb
@@ -1062,4 +1062,6 @@ Ad esempio, alcuni siti web potrebbero rispondere alla richiesta mostrando annun
<translation id="666268767214822976">Utilizza un servizio di previsione per visualizzare query correlate e siti web popolari durante la digitazione nella barra degli indirizzi</translation>
<translation id="8283853025636624853">Sincronizzazione con <ph name="SYNC_ACCOUNT_USER_NAME" /></translation>
<translation id="8981454092730389528">Gestione attività di Google</translation>
@@ -1101,4 +1101,6 @@ Ad esempio, alcuni siti web potrebbero rispondere alla richiesta mostrando annun
<translation id="983192555821071799">Chiudi tutte le schede</translation>
<translation id="987264212798334818">Generali</translation>
<translation id="996149300115483134">Menu scheda feed chiuso</translation>
-</translationbundle>
\ No newline at end of file
+<translation id="7889537574758531583">Abilita la cronologia nelle sessioni in incognito</translation>
+<translation id="5713583121562162330">Abilita la registrazione della navigazione nella cronologia anche per le sessioni in incognito</translation>
</translationbundle>
+</translationbundle>
diff --git a/chrome/common/pref_names.cc b/chrome/common/pref_names.cc
old mode 100644
new mode 100755
--- a/chrome/common/pref_names.cc
+++ b/chrome/common/pref_names.cc
@@ -3038,4 +3038,9 @@ const char kMediaFeedsSafeSearchEnabled[] = "media_feeds_safe_search_enabled";
// TODO(enne): Remove this once AppCache has been removed.
const char kAppCacheForceEnabled[] = "app_cache_force_enabled";
@@ -3100,4 +3100,9 @@ const char kShowCaretBrowsingDialog[] =
"settings.a11y.caretbrowsing.show_dialog";
#endif
+#if defined(OS_ANDROID)
+const char kIncognitoTabHistoryEnabled[] =
@ -234,9 +236,9 @@ old mode 100644
new mode 100755
--- a/chrome/common/pref_names.h
+++ b/chrome/common/pref_names.h
@@ -1074,6 +1074,10 @@ extern const char kMediaFeedsSafeSearchEnabled[];
extern const char kAppCacheForceEnabled[];
@@ -1087,6 +1087,10 @@ extern const char kCaretBrowsingEnabled[];
extern const char kShowCaretBrowsingDialog[];
#endif
+#if defined(OS_ANDROID)
+extern const char kIncognitoTabHistoryEnabled[];

View file

@ -5,8 +5,8 @@ Subject: Add menu item to view source
---
chrome/android/java/res/menu/custom_tabs_menu.xml | 3 +++
chrome/android/java/res/menu/main_menu.xml | 2 ++
.../chromium/chrome/browser/ChromeActivity.java | 2 ++
.../chrome/browser/ChromeTabbedActivity.java | 2 ++
.../chrome/browser/app/ChromeActivity.java | 2 ++
.../app/appmenu/AppMenuPropertiesDelegateImpl.java | 14 ++++++++++++++
.../CustomTabAppMenuPropertiesDelegate.java | 1 +
.../ui/android/strings/android_chrome_strings.grd | 3 +++
@ -28,31 +28,19 @@ diff --git a/chrome/android/java/res/menu/custom_tabs_menu.xml b/chrome/android/
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
+++ b/chrome/android/java/res/menu/main_menu.xml
@@ -66,6 +66,8 @@
android:title="@string/menu_find_in_page" />
@@ -88,6 +88,8 @@
<item android:id="@+id/add_to_homescreen_id"
android:title="@string/menu_add_to_homescreen" />
android:title="@string/menu_add_to_homescreen"
android:icon="@drawable/ic_add_to_home_screen" />
+ <item android:id="@+id/view_source_id"
+ android:title="@string/view_source" />
<item android:id="@+id/open_webapk_id"
android:title="@string/menu_open_webapk" />
<item android:id="@+id/request_desktop_site_row_menu_id"
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
@@ -1984,6 +1984,8 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
} catch (ActivityNotFoundException e) {
Toast.makeText(context, R.string.open_webapk_failed, Toast.LENGTH_SHORT).show();
}
+ } else if (id == R.id.view_source_id) {
+ currentTab.getWebContents().getNavigationController().loadUrl(new LoadUrlParams("view-source:"+currentTab.getUrlString()));
} else if (id == R.id.request_desktop_site_id || id == R.id.request_desktop_site_check_id) {
final boolean reloadOnChange = !currentTab.isNativePage();
final boolean usingDesktopUserAgent =
android:title="@string/menu_open_webapk"
android:icon="@drawable/ic_add_to_home_screen" />
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
@@ -1866,6 +1866,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -1747,6 +1747,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
NewTabPageUma.recordAction(NewTabPageUma.ACTION_OPENED_DOWNLOADS_MANAGER);
}
RecordUserAction.record("MobileMenuDownloadManager");
@ -61,10 +49,22 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
} else if (id == R.id.open_recently_closed_tab) {
TabModel currentModel = mTabModelSelectorImpl.getCurrentModel();
if (!currentModel.isIncognito()) currentModel.openMostRecentlyClosedTab();
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
@@ -1969,6 +1969,8 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
} catch (ActivityNotFoundException e) {
Toast.makeText(context, R.string.open_webapk_failed, Toast.LENGTH_SHORT).show();
}
+ } else if (id == R.id.view_source_id) {
+ currentTab.getWebContents().getNavigationController().loadUrl(new LoadUrlParams("view-source:"+currentTab.getUrlString()));
} else if (id == R.id.request_desktop_site_id || id == R.id.request_desktop_site_check_id) {
final boolean reloadOnChange = !currentTab.isNativePage();
final boolean usingDesktopUserAgent =
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
@@ -287,6 +287,7 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
@@ -334,6 +334,7 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
isChromeScheme, isFileScheme, isContentScheme, isIncognito, url));
updateRequestDesktopSiteMenuItem(menu, currentTab, true /* can show */);
@ -72,7 +72,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App
// Only display reader mode settings menu option if the current page is in reader mode.
menu.findItem(R.id.reader_mode_prefs_id).setVisible(shouldShowReaderModePrefs(currentTab));
@@ -622,6 +623,19 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
@@ -703,6 +704,19 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
}
}
@ -95,7 +95,7 @@ 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
@@ -220,6 +220,7 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat
@@ -222,6 +222,7 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat
}
updateRequestDesktopSiteMenuItem(menu, currentTab, requestDesktopSiteVisible);
@ -106,7 +106,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
@@ -307,6 +307,9 @@ CHAR-LIMIT guidelines:
@@ -326,6 +326,9 @@ CHAR-LIMIT guidelines:
<message name="IDS_SERVICES_CATEGORY_TITLE" desc="Title for the group of preferences that control non-personalized Google services. This group contains preferences for data that is not tied to user's Google Account.">
Other Google services
</message>

View file

@ -13,7 +13,7 @@ Subject: Add option to configure the ad blocker filters URL
.../browser/settings/AdBlockPreferences.java | 61 ++++++++++++
chrome/app/generated_resources.grd | 10 ++
chrome/browser/browser_process_impl.cc | 3 +-
.../flags/android/cached_feature_flags.cc | 8 ++
.../flags/android/cached_feature_flags.cc | 11 +++
.../browser/flags/CachedFeatureFlags.java | 10 ++
.../net/system_network_context_manager.cc | 4 +
.../strings/android_chrome_strings.grd | 14 +++
@ -21,7 +21,7 @@ Subject: Add option to configure the ad blocker filters URL
chrome/common/pref_names.h | 1 +
.../adblock_updater_service.cc | 6 +-
.../adblock_updater_service.h | 3 +-
18 files changed, 313 insertions(+), 5 deletions(-)
18 files changed, 316 insertions(+), 5 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
@ -30,7 +30,7 @@ Subject: Add option to configure the ad blocker filters URL
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
@@ -815,6 +815,7 @@ chrome_java_resources = [
@@ -826,6 +826,7 @@ chrome_java_resources = [
"java/res/layout/account_picker_new_account_row_legacy.xml",
"java/res/layout/account_picker_row.xml",
"java/res/layout/account_picker_row_legacy.xml",
@ -38,7 +38,7 @@ diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_ja
"java/res/layout/add_languages_main.xml",
"java/res/layout/add_to_homescreen_dialog.xml",
"java/res/layout/auto_sign_in_first_run_dialog.xml",
@@ -1102,6 +1103,7 @@ chrome_java_resources = [
@@ -1106,6 +1107,7 @@ chrome_java_resources = [
"java/res/xml/about_chrome_preferences.xml",
"java/res/xml/accessibility_preferences.xml",
"java/res/xml/account_management_preferences.xml",
@ -49,7 +49,7 @@ diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_ja
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
@@ -1318,6 +1318,8 @@ chrome_java_sources = [
@@ -1307,6 +1307,8 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/photo_picker/DecodeVideoTask.java",
"java/src/org/chromium/chrome/browser/photo_picker/DecoderService.java",
"java/src/org/chromium/chrome/browser/photo_picker/DecoderServiceHost.java",
@ -133,7 +133,7 @@ new file mode 100644
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
@@ -66,6 +66,8 @@
@@ -41,6 +41,8 @@
<!-- Our manage space activity. Default pre-KitKat to be nothing. -->
<string name="manage_space_activity"></string>
@ -175,9 +175,9 @@ new file mode 100644
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
@@ -61,6 +61,11 @@
@@ -88,6 +88,11 @@
android:key="privacy"
android:order="14"
android:order="18"
android:title="@string/prefs_privacy"/>
+ <Preference
+ android:fragment="org.chromium.chrome.browser.settings.AdBlockPreferences"
@ -353,7 +353,7 @@ new file mode 100644
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
@@ -9883,6 +9883,16 @@ Please help our engineers fix this problem. Tell us what happened right before y
@@ -10047,6 +10047,16 @@ Please help our engineers fix this problem. Tell us what happened right before y
Never show this again.
</message>
@ -373,7 +373,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources
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
@@ -1075,7 +1075,8 @@ BrowserProcessImpl::adblock_updater() {
@@ -1066,7 +1066,8 @@ BrowserProcessImpl::adblock_updater() {
adblock_updater_ = std::make_unique<adblock_updater::AdBlockUpdaterService>(
g_browser_process->system_network_context_manager()->GetSharedURLLoaderFactory(),
std::move(scheduler),
@ -386,10 +386,21 @@ diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_pro
diff --git a/chrome/browser/flags/android/cached_feature_flags.cc b/chrome/browser/flags/android/cached_feature_flags.cc
--- a/chrome/browser/flags/android/cached_feature_flags.cc
+++ b/chrome/browser/flags/android/cached_feature_flags.cc
@@ -36,6 +36,14 @@ std::string GetReachedCodeProfilerTrialGroup() {
} // namespace android
} // namespace chrome
@@ -8,6 +8,9 @@
#include "base/android/jni_string.h"
#include "base/feature_list.h"
+#include "chrome/browser/browser_process.h"
+#include "chrome/common/pref_names.h"
+#include "components/prefs/pref_service.h"
#include "content/public/common/content_features.h"
#include "content/public/common/network_service_util.h"
@@ -41,3 +44,11 @@ static jboolean JNI_CachedFeatureFlags_IsNetworkServiceWarmUpEnabled(
return content::IsOutOfProcessNetworkService() &&
base::FeatureList::IsEnabled(features::kWarmUpNetworkProcess);
}
+
+static ScopedJavaLocalRef<jstring> JNI_CachedFeatureFlags_GetAdBlockFiltersURL(JNIEnv* env) {
+ return base::android::ConvertUTF8ToJavaString(env, g_browser_process->local_state()->GetString(prefs::kAdBlockFiltersURL));
+}
@ -397,14 +408,10 @@ diff --git a/chrome/browser/flags/android/cached_feature_flags.cc b/chrome/brows
+static void JNI_CachedFeatureFlags_SetAdBlockFiltersURL(JNIEnv* env, const JavaParamRef<jstring>& url) {
+ g_browser_process->local_state()->SetString(prefs::kAdBlockFiltersURL, base::android::ConvertJavaStringToUTF8(env, url));
+}
+
static jboolean JNI_CachedFeatureFlags_IsNetworkServiceWarmUpEnabled(
JNIEnv* env) {
return content::IsOutOfProcessNetworkService() &&
diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java
--- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java
+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java
@@ -253,6 +253,14 @@ public class CachedFeatureFlags {
@@ -260,6 +260,14 @@ public class CachedFeatureFlags {
ChromeFeatureList.REACHED_CODE_PROFILER, "sampling_interval_us", 0));
}
@ -419,7 +426,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
/**
* Caches flags that must take effect on startup but are set via native code.
*/
@@ -405,5 +413,7 @@ public class CachedFeatureFlags {
@@ -412,5 +420,7 @@ public class CachedFeatureFlags {
@NativeMethods
interface Natives {
boolean isNetworkServiceWarmUpEnabled();
@ -439,7 +446,7 @@ diff --git a/chrome/browser/net/system_network_context_manager.cc b/chrome/brows
#if !defined(OS_ANDROID)
// QuicAllowed was not part of Android policy.
const base::Value* value =
@@ -392,6 +394,8 @@ SystemNetworkContextManager::~SystemNetworkContextManager() {
@@ -393,6 +395,8 @@ SystemNetworkContextManager::~SystemNetworkContextManager() {
void SystemNetworkContextManager::RegisterPrefs(PrefRegistrySimple* registry) {
StubResolverConfigReader::RegisterPrefs(registry);
@ -451,8 +458,8 @@ diff --git a/chrome/browser/net/system_network_context_manager.cc b/chrome/brows
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
@@ -1958,6 +1958,20 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
Work profile
@@ -214,6 +214,20 @@ CHAR-LIMIT guidelines:
Enter VR
</message>
+ <!-- AdBlock settings -->
@ -469,13 +476,13 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
+ Visit help page
+ </message>
+
<!-- Fullscreen -->
<message name="IDS_IMMERSIVE_FULLSCREEN_API_NOTIFICATION" desc="Notification message when a site has entered immersive fullscreen and the directions of how to exit.">
Drag from top and touch the back button to exit full screen.
<!-- Notification channels -->
<message name="IDS_NOTIFICATION_CATEGORY_GROUP_GENERAL" desc='Subheading for "General" section of a list of notification categories. [CHAR-LIMIT=32]'>
General
diff --git a/chrome/common/pref_names.cc b/chrome/common/pref_names.cc
--- a/chrome/common/pref_names.cc
+++ b/chrome/common/pref_names.cc
@@ -2069,6 +2069,9 @@ const char kAudioCaptureAllowed[] = "hardware.audio_capture_enabled";
@@ -2103,6 +2103,9 @@ const char kAudioCaptureAllowed[] = "hardware.audio_capture_enabled";
// capture devices without prompt.
const char kAudioCaptureAllowedUrls[] = "hardware.audio_capture_allowed_urls";

View file

@ -3,19 +3,19 @@ Date: Sat, 7 Sep 2019 15:07:42 +0200
Subject: Add option to not persist tabs across sessions
---
chrome/android/java/res/values/values.xml | 3 +++
chrome/android/java/res/xml/privacy_preferences.xml | 5 +++++
.../chrome/browser/ChromeTabbedActivity.java | 4 +++-
.../browser/privacy/settings/PrivacySettings.java | 12 ++++++++++++
.../ui/android/strings/android_chrome_strings.grd | 6 ++++++
5 files changed, 29 insertions(+), 1 deletion(-)
chrome/android/java/res/values/values.xml | 3 +++
chrome/android/java/res/xml/privacy_preferences.xml | 5 +++++
.../chromium/chrome/browser/ChromeTabbedActivity.java | 4 +++-
.../chrome/browser/privacy/settings/PrivacySettings.java | 9 ++++++++-
.../ui/android/strings/android_chrome_strings.grd | 6 ++++++
5 files changed, 25 insertions(+), 2 deletions(-)
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
@@ -60,6 +60,9 @@
<!-- TODO(peconn): Add help section. -->
<!-- <string name="help_context_suggestions">mobile_content_suggestions</string> -->
@@ -35,6 +35,9 @@
<integer name="reload_button_level_reload">0</integer>
<integer name="reload_button_level_stop">1</integer>
+ <string name="close_tabs_on_exit_title">Close tabs on exit</string>
+ <string name="close_tabs_on_exit_summary">Don\'t persist tabs between browsing sessions</string>
@ -26,7 +26,7 @@ diff --git a/chrome/android/java/res/values/values.xml b/chrome/android/java/res
diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml
--- a/chrome/android/java/res/xml/privacy_preferences.xml
+++ b/chrome/android/java/res/xml/privacy_preferences.xml
@@ -25,6 +25,11 @@
@@ -23,6 +23,11 @@
android:title="@string/always_incognito_title"
android:summary="@string/always_incognito_summary"
android:defaultValue="false" />
@ -41,7 +41,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/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
@@ -1182,8 +1182,10 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -1045,8 +1045,10 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
boolean hadCipherData =
CipherFactory.getInstance().restoreFromBundle(getSavedInstanceState());
@ -72,41 +72,31 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
import org.chromium.base.BuildInfo;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
@@ -41,6 +43,7 @@ import java.util.List;
@@ -38,6 +40,7 @@ import org.chromium.ui.text.SpanApplier;
*/
public class PrivacySettings
extends PreferenceFragmentCompat implements Preference.OnPreferenceChangeListener {
+ private static final String PREF_CLOSE_TABS_ON_EXIT = "close_tabs_on_exit";
private static final String PREF_SEARCH_SUGGESTIONS = "search_suggestions";
private static final String PREF_CAN_MAKE_PAYMENT = "can_make_payment";
private static final String PREF_NETWORK_PREDICTIONS = "preload_pages";
@@ -98,6 +101,10 @@ public class PrivacySettings
sharedPreferencesEditor.apply();
} else if (PREF_SEARCH_SUGGESTIONS.equals(key)) {
PrefServiceBridge.getInstance().setBoolean(Pref.SEARCH_SUGGEST_ENABLED, (boolean) newValue);
+ } else if (PREF_CLOSE_TABS_ON_EXIT.equals(key)) {
private static final String PREF_SECURE_DNS = "secure_dns";
@@ -92,7 +95,11 @@ public class PrivacySettings
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
String key = preference.getKey();
- if (PREF_CAN_MAKE_PAYMENT.equals(key)) {
+ if (PREF_CLOSE_TABS_ON_EXIT.equals(key)) {
+ SharedPreferences.Editor sharedPreferencesEditor = ContextUtils.getAppSharedPreferences().edit();
+ sharedPreferencesEditor.putBoolean(PREF_CLOSE_TABS_ON_EXIT, (boolean)newValue);
+ sharedPreferencesEditor.apply();
}
return true;
@@ -167,6 +174,11 @@ public class PrivacySettings
String.format("%s - %s", getString(R.string.text_on), serverName));
}
}
+
+ ChromeBaseCheckBoxPreference closeTabsOnExitPref =
+ (ChromeBaseCheckBoxPreference) findPreference(PREF_CLOSE_TABS_ON_EXIT);
+ closeTabsOnExitPref.setOnPreferenceChangeListener(this);
+ closeTabsOnExitPref.setManagedPreferenceDelegate(mManagedPreferenceDelegate);
}
private ChromeManagedPreferenceDelegate createManagedPreferenceDelegate() {
+ } else if (PREF_CAN_MAKE_PAYMENT.equals(key)) {
UserPrefs.get(Profile.getLastUsedRegularProfile())
.setBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED, (boolean) newValue);
} else if (PREF_NETWORK_PREDICTIONS.equals(key)) {
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
@@ -3334,6 +3334,12 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -3499,6 +3499,12 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<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>

View file

@ -1,540 +0,0 @@
From: csagan5 <32685696+csagan5@users.noreply.github.com>
Date: Sat, 23 Nov 2019 10:55:16 +0100
Subject: Add user setting for DNS-over-HTTPS (DoH) custom URL
---
chrome/android/chrome_java_resources.gni | 2 +
chrome/android/chrome_java_sources.gni | 2 +
chrome/android/java/res/layout/doh_editor.xml | 67 ++++++++++++++
chrome/android/java/res/values/values.xml | 2 +
.../android/java/res/xml/doh_preferences.xml | 25 +++++
.../java/res/xml/privacy_preferences.xml | 5 +
.../chrome/browser/settings/DoHEditor.java | 92 +++++++++++++++++++
.../browser/settings/DoHPreferences.java | 54 +++++++++++
chrome/app/generated_resources.grd | 6 ++
.../flags/android/cached_feature_flags.cc | 25 +++++
.../browser/flags/CachedFeatureFlags.java | 24 +++++
.../net/stub_resolver_config_reader.cc | 36 ++------
.../strings/android_chrome_strings.grd | 11 +++
chrome/common/chrome_features.cc | 4 +-
14 files changed, 324 insertions(+), 31 deletions(-)
create mode 100644 chrome/android/java/res/layout/doh_editor.xml
create mode 100644 chrome/android/java/res/xml/doh_preferences.xml
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/settings/DoHEditor.java
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/settings/DoHPreferences.java
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
@@ -881,6 +881,7 @@ chrome_java_resources = [
"java/res/layout/date_view.xml",
"java/res/layout/default_search_engine_first_run_fragment.xml",
"java/res/layout/device_item_list.xml",
+ "java/res/layout/doh_editor.xml",
"java/res/layout/distilled_page_font_family_spinner.xml",
"java/res/layout/distilled_page_prefs_view.xml",
"java/res/layout/editable_option_editor_footer.xml",
@@ -1112,6 +1113,7 @@ chrome_java_resources = [
"java/res/xml/data_reduction_preferences.xml",
"java/res/xml/data_reduction_preferences_off_lite_mode.xml",
"java/res/xml/developer_preferences.xml",
+ "java/res/xml/doh_preferences.xml",
"java/res/xml/do_not_track_preferences.xml",
"java/res/xml/google_services_preferences.xml",
"java/res/xml/homepage_preferences.xml",
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
@@ -1373,6 +1373,8 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/searchwidget/SearchWidgetProvider.java",
"java/src/org/chromium/chrome/browser/send_tab_to_self/DevicePickerBottomSheetAdapter.java",
"java/src/org/chromium/chrome/browser/send_tab_to_self/DevicePickerBottomSheetContent.java",
+ "java/src/org/chromium/chrome/browser/settings/DoHEditor.java",
+ "java/src/org/chromium/chrome/browser/settings/DoHPreferences.java",
"java/src/org/chromium/chrome/browser/send_tab_to_self/NotificationManager.java",
"java/src/org/chromium/chrome/browser/send_tab_to_self/NotificationSharedPrefManager.java",
"java/src/org/chromium/chrome/browser/send_tab_to_self/SendTabToSelfAndroidBridge.java",
diff --git a/chrome/android/java/res/layout/doh_editor.xml b/chrome/android/java/res/layout/doh_editor.xml
new file mode 100644
--- /dev/null
+++ b/chrome/android/java/res/layout/doh_editor.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright 2015 The Chromium Authors. All rights reserved.
+ Use of this source code is governed by a BSD-style license that can be
+ found in the LICENSE file. -->
+
+<FrameLayout
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ xmlns:tools="http://schemas.android.com/tools"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent" >
+
+ <ScrollView
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:id="@+id/scroll_view"
+ android:fillViewport="true" >
+
+ <LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:orientation="vertical"
+ android:focusableInTouchMode="true" >
+
+ <com.google.android.material.textfield.TextInputLayout
+ android:id="@+id/doh_url"
+ android:paddingTop="16dp"
+ android:paddingStart="@dimen/pref_autofill_content_spacing"
+ android:paddingEnd="@dimen/pref_autofill_content_spacing"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content" >
+ <!-- TODO(crbug.com/900912): Fix and remove lint ignore -->
+ <EditText
+ tools:ignore="Autofill"
+ android:id="@+id/doh_url_edit"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:inputType="textUri"
+ android:singleLine="true"
+ android:hint="@string/options_doh_edit_label" />
+ </com.google.android.material.textfield.TextInputLayout>
+
+ <Space style="@style/ButtonBarTopSpacer" />
+ <View style="@style/ButtonBarTopDivider" />
+
+ <LinearLayout style="@style/ButtonBar" >
+ <org.chromium.ui.widget.ButtonCompat
+ android:id="@+id/doh_reset"
+ style="@style/ButtonBarButton"
+ android:text="@string/reset" />
+
+ <org.chromium.ui.widget.ButtonCompat
+ android:id="@+id/doh_cancel"
+ style="@style/ButtonBarButton"
+ android:text="@string/cancel" />
+
+ <org.chromium.ui.widget.ButtonCompat
+ android:id="@+id/doh_save"
+ style="@style/ButtonBarButton"
+ android:text="@string/save" />
+ </LinearLayout>
+ </LinearLayout>
+ </ScrollView>
+
+ <include layout="@layout/settings_action_bar_shadow"/>
+
+</FrameLayout>
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
@@ -80,6 +80,8 @@
<integer name="download_infobar_bar_fill_in_delay">400</integer>
<integer name="download_infobar_bar_fill_out_delay">200</integer>
+ <string name="doh_help_url">https://www.bromite.org/doh</string>
+
<!-- Bottom navigation bar styling. -->
<bool name="window_light_navigation_bar">true</bool>
diff --git a/chrome/android/java/res/xml/doh_preferences.xml b/chrome/android/java/res/xml/doh_preferences.xml
new file mode 100644
--- /dev/null
+++ b/chrome/android/java/res/xml/doh_preferences.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright 2015 The Chromium Authors. All rights reserved.
+ Use of this source code is governed by a BSD-style license that can be
+ found in the LICENSE file. -->
+
+<PreferenceScreen
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:app="http://schemas.android.com/apk/res-auto">
+
+ <org.chromium.components.browser_ui.settings.ChromeSwitchPreference
+ android:key="doh_switch"
+ android:summaryOn="@string/text_on"
+ android:summaryOff="@string/text_off" />
+
+ <org.chromium.chrome.browser.about_settings.HyperlinkPreference
+ android:key="doh_help"
+ android:title="@string/doh_help"
+ app:url="@string/doh_help_url" />
+
+ <Preference
+ android:key="doh_edit"
+ android:title="@string/options_doh_edit_label"
+ android:fragment="org.chromium.chrome.browser.settings.DoHEditor" />
+
+</PreferenceScreen>
diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml
--- a/chrome/android/java/res/xml/privacy_preferences.xml
+++ b/chrome/android/java/res/xml/privacy_preferences.xml
@@ -19,6 +19,11 @@
android:key="can_make_payment"
android:title="@string/can_make_payment_title"
android:summary="@string/settings_can_make_payment_toggle_label" />
+ <Preference
+ android:fragment="org.chromium.chrome.browser.settings.DoHPreferences"
+ android:key="doh"
+ android:title="@string/options_doh_title"
+ android:summary="@string/options_doh_summary" />
<org.chromium.components.browser_ui.settings.ChromeBaseCheckBoxPreference
android:key="preload_pages"
android:title="@string/preload_pages_title"
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/DoHEditor.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/DoHEditor.java
new file mode 100644
--- /dev/null
+++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/DoHEditor.java
@@ -0,0 +1,92 @@
+// Copyright 2015 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+package org.chromium.chrome.browser.settings;
+
+import android.os.Bundle;
+import androidx.fragment.app.Fragment;
+import android.text.Editable;
+import android.text.TextWatcher;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.Button;
+import android.widget.EditText;
+
+import org.chromium.components.browser_ui.settings.SettingsUtils;
+import org.chromium.chrome.browser.flags.CachedFeatureFlags;
+import org.chromium.chrome.R;
+import org.chromium.components.url_formatter.UrlFormatter;
+
+/**
+ * Provides the Java-UI for editing the DNS-over-HTTPS (DoH) preference.
+ */
+public class DoHEditor extends Fragment implements TextWatcher {
+ private EditText mDoHUrlEdit;
+ private Button mSaveButton;
+ private Button mResetButton;
+
+ @Override
+ public View onCreateView(LayoutInflater inflater, ViewGroup container,
+ Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ getActivity().setTitle(R.string.options_doh_edit_title);
+
+ View v = inflater.inflate(R.layout.doh_editor, container, false);
+ View scrollView = v.findViewById(R.id.scroll_view);
+ scrollView.getViewTreeObserver().addOnScrollChangedListener(
+ SettingsUtils.getShowShadowOnScrollListener(v, v.findViewById(R.id.shadow)));
+ mDoHUrlEdit = (EditText) v.findViewById(R.id.doh_url_edit);
+ mDoHUrlEdit.setText(CachedFeatureFlags.getDoHTemplates());
+ mDoHUrlEdit.addTextChangedListener(this);
+ mDoHUrlEdit.requestFocus();
+
+ initializeSaveCancelResetButtons(v);
+ return v;
+ }
+
+ @Override
+ public void beforeTextChanged(CharSequence s, int start, int count, int after) {
+ }
+
+ @Override
+ public void onTextChanged(CharSequence s, int start, int before, int count) {
+ mSaveButton.setEnabled(s.length() != 0);
+ mResetButton.setEnabled(true);
+ }
+
+ @Override
+ public void afterTextChanged(Editable s) {
+ }
+
+ private void initializeSaveCancelResetButtons(View v) {
+ mResetButton = (Button) v.findViewById(R.id.doh_reset);
+ mResetButton.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ mDoHUrlEdit.setText(CachedFeatureFlags.getDoHTemplates());
+ getActivity().finish();
+ }
+ });
+
+ mSaveButton = (Button) v.findViewById(R.id.doh_save);
+ mSaveButton.setEnabled(false);
+ mSaveButton.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ CachedFeatureFlags.setDoHTemplates(
+ mDoHUrlEdit.getText().toString());
+ getActivity().finish();
+ }
+ });
+
+ Button button = (Button) v.findViewById(R.id.doh_cancel);
+ button.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ getActivity().finish();
+ }
+ });
+ }
+}
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/DoHPreferences.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/DoHPreferences.java
new file mode 100644
--- /dev/null
+++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/DoHPreferences.java
@@ -0,0 +1,54 @@
+// Copyright 2015 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+package org.chromium.chrome.browser.settings;
+
+import android.os.Bundle;
+import androidx.preference.Preference;
+import androidx.preference.PreferenceFragmentCompat;
+import org.chromium.components.browser_ui.settings.ChromeSwitchPreference;
+
+import org.chromium.components.browser_ui.settings.SettingsUtils;
+import org.chromium.chrome.browser.flags.CachedFeatureFlags;
+import androidx.annotation.VisibleForTesting;
+import org.chromium.chrome.R;
+
+/**
+ * Fragment that allows the user to configure DoH related preferences.
+ */
+public class DoHPreferences extends PreferenceFragmentCompat {
+ @VisibleForTesting
+ public static final String PREF_DOH_SWITCH = "doh_switch";
+ private static final String PREF_DOH_EDIT = "doh_edit";
+
+ private Preference mDoHEdit;
+
+ @Override
+ public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
+ getActivity().setTitle(R.string.options_doh_title);
+ SettingsUtils.addPreferencesFromResource(this, R.xml.doh_preferences);
+
+ ChromeSwitchPreference mDoHSwitch =
+ (ChromeSwitchPreference) findPreference(PREF_DOH_SWITCH);
+ boolean isDoHEnabled = CachedFeatureFlags.getDoHEnabled();
+ mDoHSwitch.setChecked(isDoHEnabled);
+ mDoHSwitch.setOnPreferenceChangeListener((preference, newValue) -> {
+ CachedFeatureFlags.setDoHEnabled((boolean) newValue);
+ return true;
+ });
+
+ mDoHEdit = findPreference(PREF_DOH_EDIT);
+ updateCurrentDoHUrl();
+ }
+
+ private void updateCurrentDoHUrl() {
+ mDoHEdit.setSummary(CachedFeatureFlags.getDoHTemplates());
+ }
+
+ @Override
+ public void onResume() {
+ super.onResume();
+ updateCurrentDoHUrl();
+ }
+}
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
@@ -6977,6 +6977,12 @@ the Bookmarks menu.">
</if>
<if expr="is_android">
+ <message name="IDS_OPTIONS_DOH_TITLE" desc="The title of the DNS-over-HTTPS option on Android" formatter_data="android_java">
+ Secure DNS
+ </message>
+ <message name="IDS_OPTIONS_DOH_SUMMARY" desc="The title of the DNS-over-HTTPS summary on Android" formatter_data="android_java">
+ Configure DNS-over-HTTPS (DoH) secure DNS
+ </message>
<message name="IDS_OPTIONS_HOMEPAGE_TITLE" desc="The title of Chrome's homepage setting screen on Android. " formatter_data="android_java">
Homepage
</message>
diff --git a/chrome/browser/flags/android/cached_feature_flags.cc b/chrome/browser/flags/android/cached_feature_flags.cc
--- a/chrome/browser/flags/android/cached_feature_flags.cc
+++ b/chrome/browser/flags/android/cached_feature_flags.cc
@@ -11,6 +11,10 @@
#include "content/public/common/content_features.h"
#include "content/public/common/network_service_util.h"
+#include "chrome/browser/browser_process.h"
+#include "components/prefs/pref_service.h"
+#include "chrome/common/pref_names.h"
+
using base::android::ConvertJavaStringToUTF8;
using base::android::ConvertUTF8ToJavaString;
using base::android::JavaParamRef;
@@ -49,3 +53,24 @@ static jboolean JNI_CachedFeatureFlags_IsNetworkServiceWarmUpEnabled(
return content::IsOutOfProcessNetworkService() &&
base::FeatureList::IsEnabled(features::kWarmUpNetworkProcess);
}
+
+static jboolean JNI_CachedFeatureFlags_GetDoHEnabled(JNIEnv* env) {
+ std::string doh_mode = g_browser_process->local_state()->GetString(prefs::kDnsOverHttpsMode);
+ return ((doh_mode == "secure") || (doh_mode == "auto"))
+ && !g_browser_process->local_state()->GetString(prefs::kDnsOverHttpsTemplates).empty();
+}
+
+static void JNI_CachedFeatureFlags_SetDoHEnabled(JNIEnv* env, jboolean enabled) {
+ if (enabled)
+ g_browser_process->local_state()->SetString(prefs::kDnsOverHttpsMode, "secure");
+ else
+ g_browser_process->local_state()->SetString(prefs::kDnsOverHttpsMode, "off");
+}
+
+static ScopedJavaLocalRef<jstring> JNI_CachedFeatureFlags_GetDoHTemplates(JNIEnv* env) {
+ return base::android::ConvertUTF8ToJavaString(env, g_browser_process->local_state()->GetString(prefs::kDnsOverHttpsTemplates));
+}
+
+static void JNI_CachedFeatureFlags_SetDoHTemplates(JNIEnv* env, const JavaParamRef<jstring>& templates) {
+ g_browser_process->local_state()->SetString(prefs::kDnsOverHttpsTemplates, base::android::ConvertJavaStringToUTF8(env, templates));
+}
diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java
--- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java
+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java
@@ -128,6 +128,26 @@ public class CachedFeatureFlags {
private static Map<String, String> sOverridesTestFeatures;
private static String sReachedCodeProfilerTrialGroup;
+ /**
+ * Records whether custom URL for DoH is enabled with native-side feature utilities.
+ * @param url Whether custom URL is enabled or not.
+ */
+ public static void setDoHEnabled(boolean enabled) {
+ CachedFeatureFlagsJni.get().setDoHEnabled(enabled);
+ }
+
+ public static boolean getDoHEnabled() {
+ return CachedFeatureFlagsJni.get().getDoHEnabled();
+ }
+
+ public static void setDoHTemplates(String t) {
+ CachedFeatureFlagsJni.get().setDoHTemplates(t);
+ }
+
+ public static String getDoHTemplates() {
+ return CachedFeatureFlagsJni.get().getDoHTemplates();
+ }
+
/**
* Checks if a cached feature flag is enabled.
*
@@ -412,6 +432,10 @@ public class CachedFeatureFlags {
@NativeMethods
interface Natives {
+ void setDoHEnabled(boolean enabled);
+ boolean getDoHEnabled();
+ void setDoHTemplates(String templates);
+ String getDoHTemplates();
boolean isNetworkServiceWarmUpEnabled();
void setAdBlockFiltersURL(String url);
String getAdBlockFiltersURL();
diff --git a/chrome/browser/net/stub_resolver_config_reader.cc b/chrome/browser/net/stub_resolver_config_reader.cc
--- a/chrome/browser/net/stub_resolver_config_reader.cc
+++ b/chrome/browser/net/stub_resolver_config_reader.cc
@@ -141,28 +141,6 @@ StubResolverConfigReader::StubResolverConfigReader(PrefService* local_state,
base::Value(SecureDnsConfig::ModeToString(default_secure_dns_mode)));
local_state_->SetDefaultPrefValue(prefs::kDnsOverHttpsTemplates,
base::Value(default_doh_templates));
-
- // If the user has explicitly enabled or disabled the DoH experiment in
- // chrome://flags and the DoH UI setting is not visible, store that choice
- // in the user prefs so that it can be persisted after the experiment ends.
- // Also make sure to remove the stored prefs value if the user has changed
- // their chrome://flags selection to the default.
- if (!features::kDnsOverHttpsShowUiParam.Get()) {
- flags_ui::PrefServiceFlagsStorage flags_storage(local_state_);
- std::set<std::string> entries = flags_storage.GetFlags();
- if (entries.count("dns-over-https@1")) {
- // The user has "Enabled" selected.
- local_state_->SetString(prefs::kDnsOverHttpsMode,
- SecureDnsConfig::kModeAutomatic);
- } else if (entries.count("dns-over-https@2")) {
- // The user has "Disabled" selected.
- local_state_->SetString(prefs::kDnsOverHttpsMode,
- SecureDnsConfig::kModeOff);
- } else {
- // The user has "Default" selected.
- local_state_->ClearPref(prefs::kDnsOverHttpsMode);
- }
- }
}
pref_change_registrar_.Add(prefs::kBuiltInDnsClientEnabled, pref_callback);
@@ -346,21 +324,21 @@ SecureDnsConfig StubResolverConfigReader::GetAndUpdateConfiguration(
parental_controls_checked_ = true;
}
- if (record_metrics) {
- UMA_HISTOGRAM_ENUMERATION("Net.DNS.DnsConfig.SecureDnsMode", mode_details);
- }
-
std::string doh_templates =
local_state_->GetString(prefs::kDnsOverHttpsTemplates);
- std::string server_method;
+ if (doh_templates.empty()) {
+ secure_dns_mode = net::DnsConfig::SecureDnsMode::OFF;
+ }
+ LOG(INFO) << "DoH templates: '" << doh_templates << "' with mode " << SecureDnsConfig::ModeToString(secure_dns_mode);
std::vector<net::DnsOverHttpsServerConfig> dns_over_https_servers;
base::Optional<std::vector<network::mojom::DnsOverHttpsServerPtr>>
servers_mojo;
- if (!doh_templates.empty() &&
- secure_dns_mode != net::DnsConfig::SecureDnsMode::OFF) {
+ if (secure_dns_mode != net::DnsConfig::SecureDnsMode::OFF) {
+ std::string server_method;
for (base::StringPiece server_template :
chrome_browser_net::secure_dns::SplitGroup(doh_templates)) {
if (!net::dns_util::IsValidDohTemplate(server_template, &server_method)) {
+ LOG(WARNING) << "DoH templates: skipping invalid: '" << server_template << "'";
continue;
}
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
@@ -590,6 +590,17 @@ CHAR-LIMIT guidelines:
Chrome Passwords
</message>
+ <!-- DoH preferences -->
+ <message name="IDS_OPTIONS_DOH_EDIT_TITLE" desc="The title of the screen that allows users to change the URL that is used for DNS-over-HTTPS queries.">
+ Edit DoH template URLs
+ </message>
+ <message name="IDS_OPTIONS_DOH_EDIT_LABEL" desc="The label for the edit text field that allows the user to change the URL that is used for DNS-over-HTTPS queries.">
+ DoH template URLs
+ </message>
+ <message name="IDS_DOH_HELP" desc="The title of the hyperlink that allows users to visit the wiki page with instructions for DNS-over-HTTPS configuration.">
+ Visit help page
+ </message>
+
<!-- Homepage preferences -->
<message name="IDS_OPTIONS_HOMEPAGE_EDIT_HINT" desc="Hint for the text edit on Homepage Preference setting, guiding user to enter their customized homepage setting">
Enter custom web address
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
@@ -281,12 +281,12 @@ const base::Feature kDesktopPWAsRunOnOsLogin{"DesktopPWAsRunOnOsLogin",
// Enable DNS over HTTPS (DoH).
const base::Feature kDnsOverHttps{"DnsOverHttps",
- base::FEATURE_DISABLED_BY_DEFAULT};
+ base::FEATURE_ENABLED_BY_DEFAULT};
// Set whether fallback to insecure DNS is allowed by default. This setting may
// be overridden for individual transactions.
const base::FeatureParam<bool> kDnsOverHttpsFallbackParam{&kDnsOverHttps,
- "Fallback", true};
+ "Fallback", false};
// Supply one or more space-separated DoH server URI templates to use when this
// feature is enabled. If no templates are specified, then a hardcoded mapping
--
2.17.1

View file

@ -10,7 +10,7 @@ Subject: Allow playing audio in background
diff --git a/media/blink/webmediaplayer_impl.cc b/media/blink/webmediaplayer_impl.cc
--- a/media/blink/webmediaplayer_impl.cc
+++ b/media/blink/webmediaplayer_impl.cc
@@ -1053,6 +1053,12 @@ bool WebMediaPlayerImpl::HasAudio() const {
@@ -1080,6 +1080,12 @@ bool WebMediaPlayerImpl::HasAudio() const {
return pipeline_metadata_.has_audio;
}
@ -23,7 +23,7 @@ diff --git a/media/blink/webmediaplayer_impl.cc b/media/blink/webmediaplayer_imp
void WebMediaPlayerImpl::EnabledAudioTracksChanged(
const blink::WebVector<blink::WebMediaPlayer::TrackId>& enabledTrackIds) {
DCHECK(main_task_runner_->BelongsToCurrentThread());
@@ -3469,7 +3475,11 @@ bool WebMediaPlayerImpl::ShouldPausePlaybackWhenHidden() const {
@@ -3493,7 +3499,11 @@ bool WebMediaPlayerImpl::ShouldPausePlaybackWhenHidden() const {
// Audio only stream is allowed to play when in background.
// TODO: We should check IsBackgroundOptimizationCandidate here. But we need
// to move the logic of checking video frames out of that function.

View file

@ -5,9 +5,9 @@ Subject: AudioBuffer, AnalyserNode: fp mitigations
Truncate base latency precision to two digits
---
.../blink/renderer/modules/webaudio/analyser_node.idl | 8 ++++----
.../blink/renderer/modules/webaudio/audio_buffer.idl | 4 ++--
.../blink/renderer/modules/webaudio/audio_buffer.idl | 6 ------
.../blink/renderer/modules/webaudio/audio_context.cc | 4 +++-
3 files changed, 9 insertions(+), 7 deletions(-)
3 files changed, 7 insertions(+), 11 deletions(-)
diff --git a/third_party/blink/renderer/modules/webaudio/analyser_node.idl b/third_party/blink/renderer/modules/webaudio/analyser_node.idl
--- a/third_party/blink/renderer/modules/webaudio/analyser_node.idl
@ -30,18 +30,16 @@ diff --git a/third_party/blink/renderer/modules/webaudio/analyser_node.idl b/thi
diff --git a/third_party/blink/renderer/modules/webaudio/audio_buffer.idl b/third_party/blink/renderer/modules/webaudio/audio_buffer.idl
--- a/third_party/blink/renderer/modules/webaudio/audio_buffer.idl
+++ b/third_party/blink/renderer/modules/webaudio/audio_buffer.idl
@@ -37,12 +37,12 @@
@@ -37,12 +37,6 @@
// Channel access
readonly attribute unsigned long numberOfChannels;
- [HighEntropy, Measure, RaisesException] Float32Array getChannelData(
+ /*[HighEntropy, Measure, RaisesException] Float32Array getChannelData(
unsigned long channelIndex);
[HighEntropy, Measure, RaisesException] void copyFromChannel(
Float32Array destination,
unsigned long channelNumber,
- [HighEntropy=Direct, Measure, RaisesException] Float32Array getChannelData(
- unsigned long channelIndex);
- [HighEntropy, Measure, RaisesException] void copyFromChannel(
- Float32Array destination,
- unsigned long channelNumber,
- optional unsigned long bufferOffset = 0);
+ optional unsigned long bufferOffset = 0); */
[RaisesException] void copyToChannel(
Float32Array source,
unsigned long channelNumber,

File diff suppressed because it is too large Load diff

View file

@ -62,7 +62,7 @@ diff --git a/chrome/browser/ui/singleton_tabs.cc b/chrome/browser/ui/singleton_t
diff --git a/components/omnibox/browser/autocomplete_input.cc b/components/omnibox/browser/autocomplete_input.cc
--- a/components/omnibox/browser/autocomplete_input.cc
+++ b/components/omnibox/browser/autocomplete_input.cc
@@ -488,7 +488,8 @@ void AutocompleteInput::ParseForEmphasizeComponents(
@@ -486,7 +486,8 @@ void AutocompleteInput::ParseForEmphasizeComponents(
// For the view-source and blob schemes, we should emphasize the host of the
// URL qualified by the view-source or blob prefix.
if ((base::LowerCaseEqualsASCII(scheme_str, kViewSourceScheme) ||
@ -72,7 +72,7 @@ diff --git a/components/omnibox/browser/autocomplete_input.cc b/components/omnib
(static_cast<int>(text.length()) > after_scheme_and_colon)) {
// Obtain the URL prefixed by view-source or blob and parse it.
base::string16 real_url(text.substr(after_scheme_and_colon));
@@ -561,7 +562,9 @@ int AutocompleteInput::NumNonHostComponents(const url::Parsed& parts) {
@@ -559,7 +560,9 @@ int AutocompleteInput::NumNonHostComponents(const url::Parsed& parts) {
bool AutocompleteInput::HasHTTPScheme(const base::string16& input) {
std::string utf8_input(base::UTF16ToUTF8(input));
url::Component scheme;
@ -100,7 +100,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
@@ -634,6 +634,7 @@ ChildProcessSecurityPolicyImpl::ChildProcessSecurityPolicyImpl() {
@@ -672,6 +672,7 @@ ChildProcessSecurityPolicyImpl::ChildProcessSecurityPolicyImpl() {
#endif // BUILDFLAG(ENABLE_WEBSOCKETS)
RegisterWebSafeScheme(url::kFtpScheme);
RegisterWebSafeScheme(url::kDataScheme);
@ -111,7 +111,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
@@ -1083,6 +1083,8 @@ component("net") {
@@ -1092,6 +1092,8 @@ component("net") {
"url_request/report_sender.h",
"url_request/static_http_user_agent_settings.cc",
"url_request/static_http_user_agent_settings.h",
@ -208,7 +208,7 @@ diff --git a/net/url_request/url_request.cc b/net/url_request/url_request.cc
using base::Time;
using std::string;
@@ -562,6 +564,12 @@ URLRequest::URLRequest(const GURL& url,
@@ -570,6 +572,12 @@ URLRequest::URLRequest(const GURL& url,
// Sanity check out environment.
DCHECK(base::ThreadTaskRunnerHandle::IsSet());
@ -224,7 +224,7 @@ diff --git a/net/url_request/url_request.cc b/net/url_request/url_request.cc
diff --git a/net/url_request/url_request_context_builder.cc b/net/url_request/url_request_context_builder.cc
--- a/net/url_request/url_request_context_builder.cc
+++ b/net/url_request/url_request_context_builder.cc
@@ -43,6 +43,7 @@
@@ -44,6 +44,7 @@
#include "net/quic/quic_stream_factory.h"
#include "net/ssl/ssl_config_service_defaults.h"
#include "net/url_request/static_http_user_agent_settings.h"
@ -232,7 +232,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_context_storage.h"
#include "net/url_request/url_request_job_factory_impl.h"
@@ -602,6 +603,8 @@ std::unique_ptr<URLRequestContext> URLRequestContextBuilder::Build() {
@@ -614,6 +615,8 @@ std::unique_ptr<URLRequestContext> URLRequestContextBuilder::Build() {
job_factory->SetProtocolHandler(scheme_handler.first,
std::move(scheme_handler.second));
}

View file

@ -5,32 +5,32 @@ Subject: Block gateway attacks via websockets
---
services/network/public/cpp/features.cc | 2 +-
.../renderer/core/loader/base_fetch_context.h | 1 +
.../core/loader/frame_fetch_context.cc | 18 ++++++++++
.../core/loader/frame_fetch_context.cc | 18 +++++++++++++
.../core/loader/frame_fetch_context.h | 1 +
.../core/loader/worker_fetch_context.cc | 19 +++++++++++
.../core/loader/worker_fetch_context.cc | 19 +++++++++++++
.../core/loader/worker_fetch_context.h | 1 +
.../background_fetch_manager.cc | 34 +++++++++----------
.../websockets/websocket_channel_impl.cc | 5 +++
.../modules/websockets/websocket_common.cc | 27 +++++++++++++++
.../background_fetch_manager.cc | 2 --
.../websockets/websocket_channel_impl.cc | 5 ++++
.../modules/websockets/websocket_common.cc | 27 +++++++++++++++++++
.../modules/websockets/websocket_common.h | 4 +++
10 files changed, 93 insertions(+), 19 deletions(-)
10 files changed, 77 insertions(+), 3 deletions(-)
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
@@ -123,7 +123,7 @@ const base::Feature kCrossOriginEmbedderPolicy{
@@ -125,7 +125,7 @@ const base::Feature kCrossOriginIsolated{"CrossOriginIsolated",
//
// https://wicg.github.io/cors-rfc1918/#integration-fetch
const base::Feature kBlockNonSecureExternalRequests{
- "BlockNonSecureExternalRequests", base::FEATURE_DISABLED_BY_DEFAULT};
+ "BlockNonSecureExternalRequests", base::FEATURE_ENABLED_BY_DEFAULT};
const base::Feature kBlockInsecurePrivateNetworkRequests{
- "BlockInsecurePrivateNetworkRequests", base::FEATURE_DISABLED_BY_DEFAULT};
+ "BlockInsecurePrivateNetworkRequests", base::FEATURE_ENABLED_BY_DEFAULT};
// Enables or defaults splittup up server (not proxy) entries in the
// HttpAuthCache.
diff --git a/third_party/blink/renderer/core/loader/base_fetch_context.h b/third_party/blink/renderer/core/loader/base_fetch_context.h
--- a/third_party/blink/renderer/core/loader/base_fetch_context.h
+++ b/third_party/blink/renderer/core/loader/base_fetch_context.h
@@ -65,6 +65,7 @@ class CORE_EXPORT BaseFetchContext : public FetchContext {
@@ -66,6 +66,7 @@ class CORE_EXPORT BaseFetchContext : public FetchContext {
virtual PreviewsResourceLoadingHints* GetPreviewsResourceLoadingHints()
const = 0;
virtual bool ShouldBlockWebSocketByMixedContentCheck(const KURL&) const = 0;
@ -41,7 +41,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
@@ -755,6 +755,24 @@ bool FrameFetchContext::ShouldBlockRequestByInspector(const KURL& url) const {
@@ -746,6 +746,24 @@ bool FrameFetchContext::ShouldBlockRequestByInspector(const KURL& url) const {
return should_block_request;
}
@ -69,7 +69,7 @@ diff --git a/third_party/blink/renderer/core/loader/frame_fetch_context.cc b/thi
diff --git a/third_party/blink/renderer/core/loader/frame_fetch_context.h b/third_party/blink/renderer/core/loader/frame_fetch_context.h
--- a/third_party/blink/renderer/core/loader/frame_fetch_context.h
+++ b/third_party/blink/renderer/core/loader/frame_fetch_context.h
@@ -150,6 +150,7 @@ class CORE_EXPORT FrameFetchContext final : public BaseFetchContext {
@@ -154,6 +154,7 @@ class CORE_EXPORT FrameFetchContext final : public BaseFetchContext {
bool ShouldBlockWebSocketByMixedContentCheck(const KURL&) const override;
std::unique_ptr<WebSocketHandshakeThrottle> CreateWebSocketHandshakeThrottle()
override;
@ -88,7 +88,7 @@ diff --git a/third_party/blink/renderer/core/loader/worker_fetch_context.cc b/th
#include "third_party/blink/renderer/platform/runtime_enabled_features.h"
#include "third_party/blink/renderer/platform/supplementable.h"
#include "third_party/blink/renderer/platform/weborigin/security_policy.h"
@@ -95,6 +96,24 @@ bool WorkerFetchContext::ShouldBlockRequestByInspector(const KURL& url) const {
@@ -96,6 +97,24 @@ bool WorkerFetchContext::ShouldBlockRequestByInspector(const KURL& url) const {
return should_block_request;
}
@ -116,7 +116,7 @@ diff --git a/third_party/blink/renderer/core/loader/worker_fetch_context.cc b/th
diff --git a/third_party/blink/renderer/core/loader/worker_fetch_context.h b/third_party/blink/renderer/core/loader/worker_fetch_context.h
--- a/third_party/blink/renderer/core/loader/worker_fetch_context.h
+++ b/third_party/blink/renderer/core/loader/worker_fetch_context.h
@@ -59,6 +59,7 @@ class WorkerFetchContext final : public BaseFetchContext {
@@ -62,6 +62,7 @@ class WorkerFetchContext final : public BaseFetchContext {
bool ShouldBlockWebSocketByMixedContentCheck(const KURL&) const override;
std::unique_ptr<WebSocketHandshakeThrottle> CreateWebSocketHandshakeThrottle()
override;
@ -127,55 +127,30 @@ diff --git a/third_party/blink/renderer/core/loader/worker_fetch_context.h b/thi
diff --git a/third_party/blink/renderer/modules/background_fetch/background_fetch_manager.cc b/third_party/blink/renderer/modules/background_fetch/background_fetch_manager.cc
--- a/third_party/blink/renderer/modules/background_fetch/background_fetch_manager.cc
+++ b/third_party/blink/renderer/modules/background_fetch/background_fetch_manager.cc
@@ -106,24 +106,22 @@ bool ShouldBlockDanglingMarkup(const KURL& request_url) {
@@ -106,7 +106,6 @@ bool ShouldBlockDanglingMarkup(const KURL& request_url) {
bool ShouldBlockGateWayAttacks(ExecutionContext* execution_context,
const KURL& request_url) {
- if (RuntimeEnabledFeatures::CorsRFC1918Enabled()) {
- network::mojom::IPAddressSpace requestor_space =
- execution_context->GetSecurityContext().AddressSpace();
-
- // TODO(mkwst): This only checks explicit IP addresses. We'll have to move
- // all this up to //net and //content in order to have any real impact on
- // gateway attacks. That turns out to be a TON of work (crbug.com/378566).
- network::mojom::IPAddressSpace target_space =
- network::mojom::IPAddressSpace::kPublic;
- if (network_utils::IsReservedIPAddress(request_url.Host()))
- target_space = network::mojom::IPAddressSpace::kPrivate;
- if (SecurityOrigin::Create(request_url)->IsLocalhost())
- target_space = network::mojom::IPAddressSpace::kLocal;
-
- bool is_external_request = requestor_space > target_space;
- if (is_external_request)
- return true;
network::mojom::IPAddressSpace requestor_space =
execution_context->AddressSpace();
@@ -123,7 +122,6 @@ bool ShouldBlockGateWayAttacks(ExecutionContext* execution_context,
bool is_external_request = requestor_space > target_space;
if (is_external_request)
return true;
- }
+ network::mojom::IPAddressSpace requestor_space =
+ execution_context->GetSecurityContext().AddressSpace();
+
+ // TODO(mkwst): This only checks explicit IP addresses. We'll have to move
+ // all this up to //net and //content in order to have any real impact on
+ // gateway attacks. That turns out to be a TON of work (crbug.com/378566).
+ network::mojom::IPAddressSpace target_space =
+ network::mojom::IPAddressSpace::kPublic;
+ if (network_utils::IsReservedIPAddress(request_url.Host()))
+ target_space = network::mojom::IPAddressSpace::kPrivate;
+ if (SecurityOrigin::Create(request_url)->IsLocalhost())
+ target_space = network::mojom::IPAddressSpace::kLocal;
+
+ bool is_external_request = requestor_space > target_space;
+ if (is_external_request)
+ return true;
return false;
}
diff --git a/third_party/blink/renderer/modules/websockets/websocket_channel_impl.cc b/third_party/blink/renderer/modules/websockets/websocket_channel_impl.cc
--- a/third_party/blink/renderer/modules/websockets/websocket_channel_impl.cc
+++ b/third_party/blink/renderer/modules/websockets/websocket_channel_impl.cc
@@ -233,6 +233,11 @@ bool WebSocketChannelImpl::Connect(const KURL& url, const String& protocol) {
@@ -202,6 +202,11 @@ bool WebSocketChannelImpl::Connect(const KURL& url, const String& protocol) {
return false;
}
+ if (GetBaseFetchContext()->ShouldBlockGateWayAttacks(execution_context_->GetSecurityContext().AddressSpace(), url)) {
+ if (GetBaseFetchContext()->ShouldBlockGateWayAttacks(execution_context_->AddressSpace(), url)) {
+ has_initiated_opening_handshake_ = false;
+ return false;
+ }
@ -191,7 +166,7 @@ diff --git a/third_party/blink/renderer/modules/websockets/websocket_common.cc b
}
+ network::mojom::IPAddressSpace requestor_space =
+ execution_context->GetSecurityContext().AddressSpace();
+ execution_context->AddressSpace();
+ if (ShouldBlockGateWayAttacks(requestor_space, url_)) {
+ state_ = kClosed;
+ exception_state.ThrowSecurityError(
@ -199,7 +174,7 @@ diff --git a/third_party/blink/renderer/modules/websockets/websocket_common.cc b
+ return ConnectResult::kException;
+ }
+
if (!execution_context->GetContentSecurityPolicyForWorld()
if (!execution_context->GetContentSecurityPolicyForCurrentWorld()
->AllowConnectToSource(url_, url_, RedirectStatus::kNoRedirect)) {
state_ = kClosed;
@@ -135,6 +144,24 @@ WebSocketCommon::ConnectResult WebSocketCommon::Connect(

View file

@ -47,7 +47,7 @@ diff --git a/chrome/browser/after_startup_task_utils.cc b/chrome/browser/after_s
using content::BrowserThread;
using content::WebContents;
using content::WebContentsObserver;
@@ -136,6 +138,9 @@ void SetBrowserStartupIsComplete() {
@@ -138,6 +140,9 @@ void SetBrowserStartupIsComplete() {
g_after_startup_tasks.Get().clear();
g_after_startup_tasks.Get().shrink_to_fit();
@ -91,7 +91,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
@@ -1052,6 +1052,34 @@ BrowserProcessImpl::component_updater() {
@@ -1043,6 +1043,34 @@ BrowserProcessImpl::component_updater() {
return component_updater_.get();
}
@ -129,7 +129,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
@@ -181,6 +181,7 @@ class BrowserProcessImpl : public BrowserProcess,
@@ -180,6 +180,7 @@ class BrowserProcessImpl : public BrowserProcess,
#endif
component_updater::ComponentUpdateService* component_updater() override;
@ -137,7 +137,7 @@ diff --git a/chrome/browser/browser_process_impl.h b/chrome/browser/browser_proc
#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
component_updater::SupervisedUserWhitelistInstaller*
supervised_user_whitelist_installer() override;
@@ -368,6 +369,8 @@ class BrowserProcessImpl : public BrowserProcess,
@@ -360,6 +361,8 @@ class BrowserProcessImpl : public BrowserProcess,
// but some users of component updater only install per-user.
std::unique_ptr<component_updater::ComponentUpdateService> component_updater_;
@ -149,7 +149,7 @@ diff --git a/chrome/browser/browser_process_impl.h b/chrome/browser/browser_proc
diff --git a/chrome/browser/chrome_browser_main.cc b/chrome/browser/chrome_browser_main.cc
--- a/chrome/browser/chrome_browser_main.cc
+++ b/chrome/browser/chrome_browser_main.cc
@@ -1570,6 +1570,8 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
@@ -1581,6 +1581,8 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
if (!parsed_command_line().HasSwitch(switches::kDisableComponentUpdate)) {
component_updater::RegisterComponentsForUpdate(profile_->IsOffTheRecord(),
profile_->GetPrefs());
@ -161,15 +161,15 @@ diff --git a/chrome/browser/chrome_browser_main.cc b/chrome/browser/chrome_brows
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
@@ -64,7 +64,6 @@
@@ -65,7 +65,6 @@
#include "chrome/browser/hid/chrome_hid_delegate.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/router/media_router_feature.h"
#include "chrome/browser/media/router/presentation/presentation_service_delegate_impl.h"
#include "chrome/browser/media/router/presentation/receiver_presentation_service_delegate_impl.h"
@@ -216,7 +215,6 @@
@@ -219,7 +218,6 @@
#include "components/metrics/client_info.h"
#include "components/metrics_services_manager/metrics_services_manager.h"
#include "components/net_log/chrome_net_log.h"
@ -177,7 +177,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
#include "components/page_load_metrics/browser/metrics_web_contents_observer.h"
#include "components/payments/content/payment_request_display_manager.h"
#include "components/performance_manager/embedder/performance_manager_registry.h"
@@ -3899,16 +3897,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
@@ -3931,16 +3929,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
content::NavigationHandle* handle) {
std::vector<std::unique_ptr<content::NavigationThrottle>> throttles;
@ -194,7 +194,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
#if BUILDFLAG(ENABLE_PLUGINS)
MaybeAddThrottle(FlashDownloadInterception::MaybeCreateThrottleFor(handle),
&throttles);
@@ -4021,10 +4009,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
@@ -4054,10 +4042,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
&throttles);
#endif
@ -965,7 +965,7 @@ 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
@@ -375,6 +375,17 @@ ContentSubresourceFilterThrottleManager::
@@ -379,6 +379,17 @@ ContentSubresourceFilterThrottleManager::
throttle->NotifyPageActivationWithRuleset(EnsureRulesetHandle(),
ad_tagging_state);
}
@ -1037,7 +1037,7 @@ diff --git a/components/subresource_filter/content/browser/ruleset_service.cc b/
+ IndexedRulesetVersion version = IndexAndWriteRulesetInternal(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, false);
+ base::DeleteFile(unindexed_ruleset_info.ruleset_path);
+ }
+ return version;
+}
@ -1337,7 +1337,7 @@ diff --git a/components/subresource_filter/core/common/common_features.cc b/comp
diff --git a/content/browser/frame_host/navigation_throttle_runner.cc b/content/browser/frame_host/navigation_throttle_runner.cc
--- a/content/browser/frame_host/navigation_throttle_runner.cc
+++ b/content/browser/frame_host/navigation_throttle_runner.cc
@@ -123,11 +123,6 @@ void NavigationThrottleRunner::RegisterNavigationThrottles() {
@@ -124,11 +124,6 @@ void NavigationThrottleRunner::RegisterNavigationThrottles() {
devtools_instrumentation::CreateNavigationThrottles(request)) {
AddThrottle(std::move(throttle));
}

View file

@ -27,7 +27,7 @@ diff --git a/chrome/browser/ui/browser_ui_prefs.cc b/chrome/browser/ui/browser_u
diff --git a/third_party/blink/renderer/modules/peerconnection/peer_connection_dependency_factory.cc b/third_party/blink/renderer/modules/peerconnection/peer_connection_dependency_factory.cc
--- a/third_party/blink/renderer/modules/peerconnection/peer_connection_dependency_factory.cc
+++ b/third_party/blink/renderer/modules/peerconnection/peer_connection_dependency_factory.cc
@@ -421,12 +421,13 @@ PeerConnectionDependencyFactory::CreatePortAllocator(
@@ -418,12 +418,13 @@ PeerConnectionDependencyFactory::CreatePortAllocator(
port_config.enable_nonproxied_udp = false;
break;
case DEFAULT:

View file

@ -11,7 +11,7 @@ diff --git a/gpu/config/gpu_finch_features.cc b/gpu/config/gpu_finch_features.cc
--- a/gpu/config/gpu_finch_features.cc
+++ b/gpu/config/gpu_finch_features.cc
@@ -15,7 +15,11 @@ namespace features {
#if defined(OS_ANDROID)
// Use android AImageReader when playing videos with MediaPlayer.
const base::Feature kAImageReaderMediaPlayer{"AImageReaderMediaPlayer",
+#ifdef ARCH_CPU_ARM64
@ -20,12 +20,12 @@ diff --git a/gpu/config/gpu_finch_features.cc b/gpu/config/gpu_finch_features.cc
base::FEATURE_ENABLED_BY_DEFAULT};
+#endif
// Used only by webview to disable SurfaceControl.
const base::Feature kDisableSurfaceControlForWebview{
#if defined(OS_ANDROID)
// Used to limit GL version to 2.0 for skia raster on Android.
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
@@ -544,7 +544,11 @@ const base::Feature kMediaDrmPreprovisioningAtStartup{
@@ -549,7 +549,11 @@ const base::Feature kMediaDrmPreprovisioningAtStartup{
// Enables the Android Image Reader path for Video decoding(for AVDA and MCVD)
const base::Feature kAImageReaderVideoOutput{"AImageReaderVideoOutput",

View file

@ -9,7 +9,7 @@ Subject: Disable DRM media origin IDs preprovisioning
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
@@ -533,7 +533,7 @@ const base::Feature kMediaDrmPersistentLicense{
@@ -538,7 +538,7 @@ const base::Feature kMediaDrmPersistentLicense{
// MediaDrmBridge. If disabled, MediaDrmBridge will get unprovisioned origin IDs
// which will trigger provisioning process after MediaDrmBridge is created.
const base::Feature kMediaDrmPreprovisioning{"MediaDrmPreprovisioning",

View file

@ -40,7 +40,7 @@ diff --git a/chrome/browser/ui/omnibox/chrome_omnibox_navigation_observer.cc b/c
diff --git a/chrome/browser/ui/omnibox/chrome_omnibox_navigation_observer.h b/chrome/browser/ui/omnibox/chrome_omnibox_navigation_observer.h
--- a/chrome/browser/ui/omnibox/chrome_omnibox_navigation_observer.h
+++ b/chrome/browser/ui/omnibox/chrome_omnibox_navigation_observer.h
@@ -127,7 +127,7 @@ class ChromeOmniboxNavigationObserver : public OmniboxNavigationObserver,
@@ -126,7 +126,7 @@ class ChromeOmniboxNavigationObserver : public OmniboxNavigationObserver,
// Creates a URL loader for |destination_url| and stores it in |loader_|.
// Does not start the loader.

View file

@ -11,7 +11,7 @@ Do not consider Jelly Bean unsupported
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/OmahaBase.java b/chrome/android/java/src/org/chromium/chrome/browser/omaha/OmahaBase.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/omaha/OmahaBase.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/omaha/OmahaBase.java
@@ -157,7 +157,7 @@ public class OmahaBase {
@@ -160,7 +160,7 @@ public class OmahaBase {
/** See {@link #sIsDisabled}. */
static boolean isDisabled() {

View file

@ -9,7 +9,7 @@ Subject: Disable all promo dialogs
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
@@ -307,7 +307,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator implements Native
@@ -406,7 +406,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator implements Native
* displayed.
*/
private boolean triggerPromo(boolean intentWithEffect) {
@ -18,7 +18,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab
SharedPreferencesManager preferenceManager = SharedPreferencesManager.getInstance();
// Promos can only be shown when we start with ACTION_MAIN intent and
// after FRE is complete. Native initialization can finish before the FRE flow is
@@ -338,8 +338,8 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator implements Native
@@ -437,8 +437,8 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator implements Native
preferenceManager.writeBoolean(
ChromePreferenceKeys.PROMOS_SKIPPED_ON_FIRST_START, true);
}

View file

@ -9,7 +9,7 @@ Subject: Disable autofill assistant by default
diff --git a/chrome/android/features/autofill_assistant/public/java/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantPreferencesUtil.java b/chrome/android/features/autofill_assistant/public/java/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantPreferencesUtil.java
--- a/chrome/android/features/autofill_assistant/public/java/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantPreferencesUtil.java
+++ b/chrome/android/features/autofill_assistant/public/java/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantPreferencesUtil.java
@@ -15,7 +15,7 @@ class AutofillAssistantPreferencesUtil {
@@ -22,7 +22,7 @@ class AutofillAssistantPreferencesUtil {
/** Checks whether the Autofill Assistant switch preference in settings is on. */
static boolean isAutofillAssistantSwitchOn() {
return SharedPreferencesManager.getInstance().readBoolean(
@ -17,7 +17,7 @@ diff --git a/chrome/android/features/autofill_assistant/public/java/src/org/chro
+ ChromePreferenceKeys.AUTOFILL_ASSISTANT_ENABLED, false);
}
/** Checks whether the Autofill Assistant onboarding has been accepted. */
/** Returns whether the user has seen a lite script before or not. */
--
2.17.1

View file

@ -16,8 +16,8 @@ diff --git a/components/feed/feed_feature_list.cc b/components/feed/feed_feature
- "InterestFeedContentSuggestions", base::FEATURE_ENABLED_BY_DEFAULT};
+ "InterestFeedContentSuggestions", base::FEATURE_DISABLED_BY_DEFAULT};
// InterestFeedV2 takes precedence over InterestFeedContentSuggestions.
const base::Feature kInterestFeedV2{"InterestFeedV2",
base::FEATURE_DISABLED_BY_DEFAULT};
// InterestFeedV2 is cached in ChromeCachedFlags. If the default value here is
// changed, please update the cached one's default value in CachedFeatureFlags.
--
2.17.1

View file

@ -60,7 +60,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
diff --git a/components/variations/service/variations_service.cc b/components/variations/service/variations_service.cc
--- a/components/variations/service/variations_service.cc
+++ b/components/variations/service/variations_service.cc
@@ -243,17 +243,7 @@ bool GetInstanceManipulations(const net::HttpResponseHeaders* headers,
@@ -236,17 +236,7 @@ bool GetInstanceManipulations(const net::HttpResponseHeaders* headers,
// Variations seed fetching is only enabled in official Chrome builds, if a URL
// is specified on the command line, and for testing.
bool IsFetchingEnabled() {

View file

@ -11,9 +11,9 @@ Subject: Disable media router and remoting by default
diff --git a/chrome/browser/media/router/media_router_feature.cc b/chrome/browser/media/router/media_router_feature.cc
--- a/chrome/browser/media/router/media_router_feature.cc
+++ b/chrome/browser/media/router/media_router_feature.cc
@@ -50,17 +50,16 @@ const PrefService::Preference* GetMediaRouterPref(
@@ -67,17 +67,16 @@ bool MediaRouterEnabled(content::BrowserContext* context) {
#endif // !defined(OFFICIAL_BUILD) && !defined(OS_ANDROID)
bool MediaRouterEnabled(content::BrowserContext* context) {
#if defined(OS_ANDROID) || BUILDFLAG(ENABLE_EXTENSIONS)
- const PrefService::Preference* pref = GetMediaRouterPref(context);
- // Only use the pref value if it set from a mandatory policy.
@ -40,7 +40,7 @@ diff --git a/chrome/browser/media/router/media_router_feature.cc b/chrome/browse
diff --git a/chrome/browser/profiles/profile.cc b/chrome/browser/profiles/profile.cc
--- a/chrome/browser/profiles/profile.cc
+++ b/chrome/browser/profiles/profile.cc
@@ -345,7 +345,7 @@ void Profile::RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
@@ -340,7 +340,7 @@ void Profile::RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
prefs::kMediaRouterFirstRunFlowAcknowledged,
false,
user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);

View file

@ -10,7 +10,7 @@ Subject: Disable metrics on all I/O threads
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
@@ -944,7 +944,7 @@ void BrowserProcessImpl::RegisterPrefs(PrefRegistrySimple* registry) {
@@ -935,7 +935,7 @@ void BrowserProcessImpl::RegisterPrefs(PrefRegistrySimple* registry) {
#endif // defined(OS_CHROMEOS)
registry->RegisterBooleanPref(metrics::prefs::kMetricsReportingEnabled,

View file

@ -11,7 +11,7 @@ a corresponding user option to individually disable their usage.
diff --git a/components/url_formatter/url_formatter.cc b/components/url_formatter/url_formatter.cc
--- a/components/url_formatter/url_formatter.cc
+++ b/components/url_formatter/url_formatter.cc
@@ -479,13 +479,13 @@ ComponentResult IDNToUnicodeOneComponent(
@@ -469,13 +469,13 @@ ComponentResult IDNToUnicodeOneComponent(
} // namespace
const FormatUrlType kFormatUrlOmitNothing = 0;

View file

@ -99,7 +99,7 @@ diff --git a/chrome/browser/ui/android/safe_browsing/password_reuse_dialog_view_
diff --git a/components/password_manager/core/browser/BUILD.gn b/components/password_manager/core/browser/BUILD.gn
--- a/components/password_manager/core/browser/BUILD.gn
+++ b/components/password_manager/core/browser/BUILD.gn
@@ -12,9 +12,9 @@ if (is_android) {
@@ -11,9 +11,9 @@ if (is_android) {
# TODO(crbug.com/1006430): Fix password reuse detection not fully functional on
# Android.

View file

@ -9,7 +9,7 @@ Subject: Disable plugins enumeration
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
@@ -1482,10 +1482,8 @@ WebContentSettingsClient* LocalFrame::GetContentSettingsClient() {
@@ -1650,10 +1650,8 @@ WebContentSettingsClient* LocalFrame::GetContentSettingsClient() {
}
PluginData* LocalFrame::GetPluginData() const {

View file

@ -3,8 +3,8 @@ Date: Tue, 8 Jan 2019 08:54:50 +0100
Subject: Disable previews by default
---
components/previews/core/previews_features.cc | 7 +------
1 file changed, 1 insertion(+), 6 deletions(-)
components/previews/core/previews_features.cc | 5 -----
1 file changed, 5 deletions(-)
diff --git a/components/previews/core/previews_features.cc b/components/previews/core/previews_features.cc
--- a/components/previews/core/previews_features.cc
@ -13,13 +13,12 @@ diff --git a/components/previews/core/previews_features.cc b/components/previews
// are enabled are controlled by other features.
const base::Feature kPreviews {
"Previews",
-#if defined(OS_ANDROID) || defined(OS_LINUX)
-#if defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_CHROMEOS)
- // Previews allowed for Android (but also allow on Linux for dev/debug).
- base::FEATURE_ENABLED_BY_DEFAULT
-#else // !defined(OS_ANDROID) || defined(OS_LINUX)
- base::FEATURE_DISABLED_BY_DEFAULT
-#endif // defined(OS_ANDROID) || defined(OS_LINUX)
+ base::FEATURE_DISABLED_BY_DEFAULT
-#else // !defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_CHROMEOS)
base::FEATURE_DISABLED_BY_DEFAULT
-#endif // defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_CHROMEOS)
};
// Enables the Offline previews on android slow connections.

View file

@ -8,17 +8,17 @@ bookmarks, never reach signin thresholds.
chrome/android/chrome_java_resources.gni | 1 -
...rsonalized_signin_promo_view_bookmarks.xml | 30 -----
.../bookmarks/BookmarkItemsAdapter.java | 30 +----
.../bookmarks/BookmarkPromoHeader.java | 125 +-----------------
.../bookmarks/BookmarkPromoHeader.java | 124 +-----------------
.../browser/signin/SigninPromoController.java | 19 +--
5 files changed, 5 insertions(+), 200 deletions(-)
5 files changed, 5 insertions(+), 199 deletions(-)
delete mode 100644 chrome/android/java/res/layout/personalized_signin_promo_view_bookmarks.xml
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
@@ -977,7 +977,6 @@ chrome_java_resources = [
"java/res/layout/payment_request_spinny.xml",
"java/res/layout/payments_request_editor_textview.xml",
@@ -980,7 +980,6 @@ chrome_java_resources = [
"java/res/layout/passwords_error_dialog.xml",
"java/res/layout/passwords_progress_dialog.xml",
"java/res/layout/personalized_signin_promo_view_body.xml",
- "java/res/layout/personalized_signin_promo_view_bookmarks.xml",
"java/res/layout/personalized_signin_promo_view_header.xml",
@ -63,7 +63,7 @@ deleted file mode 100644
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkItemsAdapter.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkItemsAdapter.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkItemsAdapter.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkItemsAdapter.java
@@ -22,7 +22,6 @@ import org.chromium.chrome.R;
@@ -21,7 +21,6 @@ import org.chromium.chrome.R;
import org.chromium.chrome.browser.bookmarks.BookmarkBridge.BookmarkItem;
import org.chromium.chrome.browser.bookmarks.BookmarkBridge.BookmarkModelObserver;
import org.chromium.chrome.browser.bookmarks.BookmarkRow.Location;
@ -71,7 +71,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
import org.chromium.chrome.browser.sync.ProfileSyncService;
import org.chromium.components.bookmarks.BookmarkId;
import org.chromium.components.bookmarks.BookmarkType;
@@ -63,7 +62,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkItem>
@@ -62,7 +61,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkItem>
// ViewType.PERSONALIZED_SIGNIN_PROMO, ViewType.SYNC_PROMO, or ViewType.INVALID_PROMO
private int mPromoHeaderType = ViewType.INVALID_PROMO;
private BookmarkDelegate mDelegate;
@ -79,7 +79,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
private String mSearchText;
private BookmarkId mCurrentFolder;
private ProfileSyncService mProfileSyncService;
@@ -190,9 +188,9 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkItem>
@@ -185,9 +183,9 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkItem>
case ViewType.PERSONALIZED_SIGNIN_PROMO:
// fall through
case ViewType.PERSONALIZED_SYNC_PROMO:
@ -91,7 +91,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
case ViewType.FOLDER:
return createViewHolderHelper(parent, R.layout.bookmark_folder_row);
case ViewType.BOOKMARK:
@@ -206,11 +204,7 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkItem>
@@ -201,11 +199,7 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkItem>
@Override
public void onBindViewHolder(ViewHolder holder, int position) {
if (holder.getItemViewType() == ViewType.PERSONALIZED_SIGNIN_PROMO) {
@ -103,7 +103,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
} else if (!(holder.getItemViewType() == ViewType.SYNC_PROMO)) {
BookmarkRow row = ((BookmarkRow) holder.itemView);
BookmarkId id = getIdByPosition(position);
@@ -239,7 +233,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkItem>
@@ -234,7 +228,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkItem>
case ViewType.PERSONALIZED_SIGNIN_PROMO:
// fall through
case ViewType.PERSONALIZED_SYNC_PROMO:
@ -111,7 +111,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
break;
default:
// Other view holders don't have special recycling code.
@@ -265,7 +258,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkItem>
@@ -260,7 +253,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkItem>
updateHeader(!topLevelFoldersShowing());
};
@ -119,7 +119,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
populateTopLevelFoldersList();
mElements = new ArrayList<>();
@@ -281,7 +273,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkItem>
@@ -275,7 +267,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkItem>
mDelegate.getModel().removeObserver(mBookmarkModelObserver);
mDelegate.getSelectionDelegate().removeObserver(this);
mDelegate = null;
@ -127,7 +127,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
mProfileSyncService.removeSyncStateChangedListener(this);
}
@@ -407,23 +398,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkItem>
@@ -385,23 +376,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkItem>
return;
} else if (currentUIState == BookmarkUIState.STATE_SEARCHING) {
mPromoHeaderType = ViewType.INVALID_PROMO;
@ -154,9 +154,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPromoHeader.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPromoHeader.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPromoHeader.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPromoHeader.java
@@ -21,15 +21,9 @@ import org.chromium.chrome.browser.flags.ChromeFeatureList;
import org.chromium.chrome.browser.preferences.ChromePreferenceKeys;
@@ -22,15 +22,9 @@ import org.chromium.chrome.browser.preferences.ChromePreferenceKeys;
import org.chromium.chrome.browser.preferences.SharedPreferencesManager;
import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.signin.IdentityServicesProvider;
-import org.chromium.chrome.browser.signin.PersonalizedSigninPromoView;
import org.chromium.chrome.browser.signin.ProfileDataCache;
@ -167,10 +167,10 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
import org.chromium.chrome.browser.signin.SyncPromoView;
-import org.chromium.chrome.browser.sync.AndroidSyncSettings;
-import org.chromium.chrome.browser.sync.AndroidSyncSettings.AndroidSyncSettingsObserver;
import org.chromium.components.signin.AccountManagerFacade;
import org.chromium.components.signin.AccountManagerFacadeProvider;
import org.chromium.components.signin.AccountsChangeObserver;
import org.chromium.components.signin.base.CoreAccountInfo;
@@ -44,7 +38,7 @@ import java.lang.annotation.RetentionPolicy;
@@ -46,7 +40,7 @@ import java.lang.annotation.RetentionPolicy;
* Class that manages all the logic and UI behind the signin promo header in the bookmark
* content UI. The header is shown only on certain situations, (e.g., not signed in).
*/
@ -179,34 +179,35 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
ProfileDataCache.Observer, AccountsChangeObserver {
/**
* Specifies the various states in which the Bookmarks promo can be.
@@ -65,7 +59,6 @@ class BookmarkPromoHeader implements AndroidSyncSettingsObserver, SignInStateObs
@@ -67,7 +61,6 @@ class BookmarkPromoHeader implements AndroidSyncSettingsObserver, SignInStateObs
private static @Nullable @PromoState Integer sPromoStateForTests;
private final Context mContext;
- private final SigninManager mSignInManager;
private final AccountManagerFacade mAccountManagerFacade;
private final Runnable mPromoHeaderChangeAction;
private @Nullable ProfileDataCache mProfileDataCache;
@@ -80,11 +73,6 @@ class BookmarkPromoHeader implements AndroidSyncSettingsObserver, SignInStateObs
@@ -83,12 +76,6 @@ class BookmarkPromoHeader implements AndroidSyncSettingsObserver, SignInStateObs
mContext = context;
mPromoHeaderChangeAction = promoHeaderChangeAction;
- AndroidSyncSettings.get().registerObserver(this);
-
- mSignInManager = IdentityServicesProvider.get().getSigninManager();
- mSignInManager = IdentityServicesProvider.get().getSigninManager(
- Profile.getLastUsedRegularProfile());
- mSignInManager.addSignInStateObserver(this);
-
mAccountManagerFacade = AccountManagerFacadeProvider.getInstance();
mPromoState = calculatePromoState();
if (mPromoState == PromoState.PROMO_SYNC) {
SharedPreferencesManager.getInstance().incrementInt(
@@ -110,15 +98,11 @@ class BookmarkPromoHeader implements AndroidSyncSettingsObserver, SignInStateObs
@@ -116,15 +103,11 @@ class BookmarkPromoHeader implements AndroidSyncSettingsObserver, SignInStateObs
* Clean ups the class. Must be called once done using this class.
*/
void destroy() {
- AndroidSyncSettings.get().unregisterObserver(this);
-
if (mSigninPromoController != null) {
AccountManagerFacadeProvider.getInstance().removeObserver(this);
mAccountManagerFacade.removeObserver(this);
mProfileDataCache.removeObserver(this);
mSigninPromoController.onPromoDestroyed();
}
@ -215,7 +216,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
}
/**
@@ -129,18 +113,6 @@ class BookmarkPromoHeader implements AndroidSyncSettingsObserver, SignInStateObs
@@ -135,18 +118,6 @@ class BookmarkPromoHeader implements AndroidSyncSettingsObserver, SignInStateObs
return mPromoState;
}
@ -234,7 +235,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
/**
* @return Sync promo header {@link ViewHolder} instance that can be used with
* {@link RecyclerView}.
@@ -152,56 +124,11 @@ class BookmarkPromoHeader implements AndroidSyncSettingsObserver, SignInStateObs
@@ -158,54 +129,11 @@ class BookmarkPromoHeader implements AndroidSyncSettingsObserver, SignInStateObs
return new ViewHolder(view) {};
}
@ -243,15 +244,13 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
- * @param view The view to be configured.
- */
- void setupPersonalizedSigninPromo(PersonalizedSigninPromoView view) {
- SigninPromoUtil.setupPromoViewFromCache(mSigninPromoController, mProfileDataCache, view,
- this::setPersonalizedSigninPromoDeclined);
- SigninPromoUtil.setupSigninPromoViewFromCache(mSigninPromoController, mProfileDataCache,
- view, this::setPersonalizedSigninPromoDeclined);
- }
-
- void setupPersonalizedSyncPromo(PersonalizedSigninPromoView view) {
- setupPersonalizedSigninPromo(view);
- view.getStatusMessage().setVisibility(View.VISIBLE);
- view.getChooseAccountButton().setVisibility(View.GONE);
- view.getSigninButton().setText(R.string.sync_promo_turn_on_sync);
- SigninPromoUtil.setupSyncPromoViewFromCache(mSigninPromoController, mProfileDataCache, view,
- this::setPersonalizedSigninPromoDeclined);
- }
-
- /**
@ -292,11 +291,11 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
}
private @PromoState int calculatePromoState() {
@@ -209,30 +136,6 @@ class BookmarkPromoHeader implements AndroidSyncSettingsObserver, SignInStateObs
@@ -213,30 +141,6 @@ class BookmarkPromoHeader implements AndroidSyncSettingsObserver, SignInStateObs
return sPromoStateForTests;
}
- if (!AndroidSyncSettings.get().isMasterSyncEnabled()) {
- if (!AndroidSyncSettings.get().doesMasterSyncSettingAllowChromeSync()) {
- return PromoState.PROMO_NONE;
- }
-
@ -323,7 +322,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
return PromoState.PROMO_NONE;
}
@@ -254,29 +157,6 @@ class BookmarkPromoHeader implements AndroidSyncSettingsObserver, SignInStateObs
@@ -258,29 +162,6 @@ class BookmarkPromoHeader implements AndroidSyncSettingsObserver, SignInStateObs
mProfileDataCache.addObserver(this);
}
@ -353,7 +352,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
// ProfileDataCache.Observer implementation.
@Override
public void onProfileDataUpdated(String accountId) {
@@ -290,7 +170,6 @@ class BookmarkPromoHeader implements AndroidSyncSettingsObserver, SignInStateObs
@@ -294,7 +175,6 @@ class BookmarkPromoHeader implements AndroidSyncSettingsObserver, SignInStateObs
}
private void triggerPromoUpdate() {

View file

@ -12,7 +12,7 @@ Subject: Disable references to fonts.googleapis.com
diff --git a/components/dom_distiller/content/browser/dom_distiller_viewer_source.cc b/components/dom_distiller/content/browser/dom_distiller_viewer_source.cc
--- a/components/dom_distiller/content/browser/dom_distiller_viewer_source.cc
+++ b/components/dom_distiller/content/browser/dom_distiller_viewer_source.cc
@@ -337,7 +337,7 @@ bool DomDistillerViewerSource::ShouldServiceRequest(
@@ -291,7 +291,7 @@ bool DomDistillerViewerSource::ShouldServiceRequest(
std::string DomDistillerViewerSource::GetContentSecurityPolicy(
network::mojom::CSPDirectiveName directive) {
if (directive == network::mojom::CSPDirectiveName::StyleSrc) {
@ -20,7 +20,7 @@ diff --git a/components/dom_distiller/content/browser/dom_distiller_viewer_sourc
+ return "style-src 'self';";
} else if (directive == network::mojom::CSPDirectiveName::ChildSrc) {
return "child-src *;";
}
} else if (directive ==
diff --git a/components/dom_distiller/core/html/preview.html b/components/dom_distiller/core/html/preview.html
--- a/components/dom_distiller/core/html/preview.html
+++ b/components/dom_distiller/core/html/preview.html
@ -36,7 +36,7 @@ diff --git a/components/dom_distiller/core/html/preview.html b/components/dom_di
diff --git a/components/dom_distiller/core/javascript/dom_distiller_viewer.js b/components/dom_distiller/core/javascript/dom_distiller_viewer.js
--- a/components/dom_distiller/core/javascript/dom_distiller_viewer.js
+++ b/components/dom_distiller/core/javascript/dom_distiller_viewer.js
@@ -116,7 +116,7 @@ function maybeSetWebFont() {
@@ -109,7 +109,7 @@ function maybeSetWebFont() {
}
const e = document.createElement('link');

File diff suppressed because it is too large Load diff

View file

@ -22,7 +22,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
@@ -461,7 +461,7 @@ void SetRuntimeFeaturesFromCommandLine(const base::CommandLine& command_line) {
@@ -491,7 +491,7 @@ void SetRuntimeFeaturesFromCommandLine(const base::CommandLine& command_line) {
{wrf::EnableWebGPU, switches::kEnableUnsafeWebGPU, true},
{wrf::EnablePresentationAPI, switches::kDisablePresentationAPI, false},
{wrf::EnableTextFragmentAnchor, switches::kDisableScrollToTextFragment,

View file

@ -9,7 +9,7 @@ Subject: Disable seed-based field trials
diff --git a/components/variations/service/variations_field_trial_creator.cc b/components/variations/service/variations_field_trial_creator.cc
--- a/components/variations/service/variations_field_trial_creator.cc
+++ b/components/variations/service/variations_field_trial_creator.cc
@@ -536,8 +536,10 @@ bool VariationsFieldTrialCreator::SetupFieldTrials(
@@ -521,8 +521,10 @@ bool VariationsFieldTrialCreator::SetupFieldTrials(
#endif // BUILDFLAG(FIELDTRIAL_TESTING_ENABLED)
bool used_seed = false;
if (!used_testing_config) {

View file

@ -15,7 +15,7 @@ leak information through the TextClassifier set by OEM, if any
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
@@ -376,7 +376,7 @@ const base::Feature kChromeSharingHubV15{"ChromeSharingHubV15",
@@ -396,7 +396,7 @@ const base::Feature kChromeSharingHubV15{"ChromeSharingHubV15",
base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kChromeSmartSelection{"ChromeSmartSelection",
@ -27,7 +27,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
diff --git a/content/public/android/java/src/org/chromium/content/browser/selection/SelectionPopupControllerImpl.java b/content/public/android/java/src/org/chromium/content/browser/selection/SelectionPopupControllerImpl.java
--- a/content/public/android/java/src/org/chromium/content/browser/selection/SelectionPopupControllerImpl.java
+++ b/content/public/android/java/src/org/chromium/content/browser/selection/SelectionPopupControllerImpl.java
@@ -815,7 +815,7 @@ public class SelectionPopupControllerImpl extends ActionModeCallbackHelper
@@ -814,7 +814,7 @@ public class SelectionPopupControllerImpl extends ActionModeCallbackHelper
menu.removeItem(R.id.select_action_menu_share);
}

View file

@ -9,7 +9,7 @@ Subject: Disable some signed exchange features
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
@@ -562,7 +562,7 @@ const base::Feature kSignedExchangePrefetchCacheForNavigations{
@@ -609,7 +609,7 @@ const base::Feature kSignedExchangePrefetchCacheForNavigations{
// Signed Exchange Reporting for distributors
// https://www.chromestatus.com/features/5687904902840320
const base::Feature kSignedExchangeReportingForDistributors{
@ -18,7 +18,7 @@ diff --git a/content/public/common/content_features.cc b/content/public/common/c
// Subresource prefetching+loading via Signed HTTP Exchange
// https://www.chromestatus.com/features/5126805474246656
@@ -572,7 +572,7 @@ const base::Feature kSignedExchangeSubresourcePrefetch{
@@ -619,7 +619,7 @@ const base::Feature kSignedExchangeSubresourcePrefetch{
// Origin-Signed HTTP Exchanges (for WebPackage Loading)
// https://www.chromestatus.com/features/5745285984681984
const base::Feature kSignedHTTPExchange{"SignedHTTPExchange",

View file

@ -11,19 +11,19 @@ Subject: Disable support for RAR files inspection
diff --git a/chrome/browser/safe_browsing/download_protection/file_analyzer.cc b/chrome/browser/safe_browsing/download_protection/file_analyzer.cc
--- a/chrome/browser/safe_browsing/download_protection/file_analyzer.cc
+++ b/chrome/browser/safe_browsing/download_protection/file_analyzer.cc
@@ -87,7 +87,7 @@ void FileAnalyzer::Start(const base::FilePath& target_path,
@@ -90,7 +90,7 @@ void FileAnalyzer::Start(const base::FilePath& target_path,
if (inspection_type == DownloadFileType::ZIP) {
StartExtractZipFeatures();
} else if (inspection_type == DownloadFileType::RAR) {
- StartExtractRarFeatures();
+ LOG(WARNING) << "Safebrowser inspection of rar files is disabled in this build";
#if defined(OS_MACOSX)
#if defined(OS_MAC)
} else if (inspection_type == DownloadFileType::DMG) {
StartExtractDmgFeatures();
diff --git a/chrome/common/safe_browsing/BUILD.gn b/chrome/common/safe_browsing/BUILD.gn
--- a/chrome/common/safe_browsing/BUILD.gn
+++ b/chrome/common/safe_browsing/BUILD.gn
@@ -52,38 +52,6 @@ if (safe_browsing_mode == 1) {
@@ -41,38 +41,6 @@ if (safe_browsing_mode == 1) {
public_deps = [ "//components/safe_browsing/core:csd_proto" ]
}
@ -62,7 +62,7 @@ diff --git a/chrome/common/safe_browsing/BUILD.gn b/chrome/common/safe_browsing/
source_set("disk_image_type_sniffer_mac") {
sources = [
"disk_image_type_sniffer_mac.cc",
@@ -150,7 +118,6 @@ source_set("safe_browsing") {
@@ -135,7 +103,6 @@ source_set("safe_browsing") {
":archive_analyzer_results",
":binary_feature_extractor",
":download_type_util",
@ -79,9 +79,9 @@ diff --git a/chrome/services/file_util/safe_archive_analyzer.cc b/chrome/service
#include "chrome/common/safe_browsing/archive_analyzer_results.h"
-#include "chrome/common/safe_browsing/rar_analyzer.h"
#include "chrome/common/safe_browsing/zip_analyzer.h"
#include "mojo/public/cpp/bindings/strong_binding.h"
@@ -48,8 +47,7 @@ void SafeArchiveAnalyzer::AnalyzeRarFile(base::File rar_file,
#if defined(OS_MAC)
@@ -47,8 +46,7 @@ void SafeArchiveAnalyzer::AnalyzeRarFile(base::File rar_file,
AnalyzeRarFileCallback callback) {
DCHECK(rar_file.IsValid());

View file

@ -3,41 +3,40 @@ Date: Mon, 11 Nov 2019 23:09:48 +0100
Subject: Disable sync services menu entry
---
chrome/android/java/res/xml/main_preferences.xml | 6 ------
chrome/android/java/res/xml/privacy_preferences.xml | 8 --------
2 files changed, 14 deletions(-)
chrome/android/java/res/xml/main_preferences.xml | 8 --------
chrome/android/java/res/xml/privacy_preferences.xml | 5 -----
2 files changed, 13 deletions(-)
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
@@ -14,12 +14,6 @@
@@ -23,14 +23,6 @@
android:key="sign_in"
android:order="1"
android:order="3"
android:title="@string/sign_in_to_chrome"/>
- <org.chromium.components.browser_ui.settings.ChromeBasePreference
- android:key="sync_and_services"
- android:order="2"
- android:order="4"
- android:layout="@layout/account_management_account_row"
- android:title="@string/prefs_sync_and_services"
- android:fragment="org.chromium.chrome.browser.sync.settings.SyncAndServicesSettings"/>
<PreferenceCategory
android:key="basics_section"
- <!-- manage_sync and google_services replace sync_and_services if MOBILE_IDENTITY_CONSISTENCY
- is enabled. -->
<org.chromium.components.browser_ui.settings.ChromeBasePreference
android:key="manage_sync"
android:order="5"
diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml
--- a/chrome/android/java/res/xml/privacy_preferences.xml
+++ b/chrome/android/java/res/xml/privacy_preferences.xml
@@ -33,12 +33,4 @@
android:title="@string/clear_browsing_data_title"
android:summary="@string/clear_browsing_data_summary"
android:fragment="org.chromium.chrome.browser.browsing_data.ClearBrowsingDataTabsFragment" />
- <Preference
- android:key="sync_and_services_link_divider"
- android:layout="@layout/divider_preference"
- android:selectable="false"/>
@@ -40,9 +40,4 @@
android:summary="@string/prefs_safe_browsing_summary"
android:fragment="org.chromium.chrome.browser.safe_browsing.settings.SecuritySettingsFragment"
android:order="6"/>
- <org.chromium.components.browser_ui.settings.TextMessagePreference
- android:key="sync_and_services_link"
- android:summary="@string/privacy_sync_and_services_link"
- app:allowDividerBelow="false" />
- app:allowDividerBelow="false"
- android:order="7"/>
</PreferenceScreen>
--
2.17.1

View file

@ -10,7 +10,7 @@ author: Chad Miller <chad.miller@canonical.com>
diff --git a/components/content_settings/core/browser/cookie_settings.cc b/components/content_settings/core/browser/cookie_settings.cc
--- a/components/content_settings/core/browser/cookie_settings.cc
+++ b/components/content_settings/core/browser/cookie_settings.cc
@@ -63,7 +63,7 @@ void CookieSettings::GetCookieSettings(
@@ -65,7 +65,7 @@ void CookieSettings::GetCookieSettings(
void CookieSettings::RegisterProfilePrefs(
user_prefs::PrefRegistrySyncable* registry) {
registry->RegisterBooleanPref(

View file

@ -3,15 +3,15 @@ Date: Thu, 27 Feb 2020 23:23:59 +0100
Subject: Do not compile QR code sharing
---
chrome/android/java/AndroidManifest.xml | 16 ------------
.../ChromeProvidedSharingOptionsProvider.java | 25 -------------------
chrome/browser/share/android/java_sources.gni | 18 -------------
3 files changed, 59 deletions(-)
chrome/android/java/AndroidManifest.xml | 16 ---------------
.../ChromeProvidedSharingOptionsProvider.java | 20 -------------------
chrome/browser/share/android/java_sources.gni | 18 -----------------
3 files changed, 54 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
@@ -729,22 +729,6 @@ by a child template that "extends" this file.
@@ -740,22 +740,6 @@ by a child template that "extends" this file.
</intent-filter>
</activity>
@ -37,44 +37,39 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro
diff --git a/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/share_sheet/ChromeProvidedSharingOptionsProvider.java b/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/share_sheet/ChromeProvidedSharingOptionsProvider.java
--- a/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/share_sheet/ChromeProvidedSharingOptionsProvider.java
+++ b/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/share_sheet/ChromeProvidedSharingOptionsProvider.java
@@ -22,7 +22,6 @@ import org.chromium.chrome.browser.preferences.Pref;
import org.chromium.chrome.browser.preferences.PrefServiceBridge;
@@ -23,7 +23,6 @@ import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.send_tab_to_self.SendTabToSelfShareActivity;
import org.chromium.chrome.browser.share.ChromeShareExtras;
import org.chromium.chrome.browser.share.link_to_text.LinkToTextCoordinator;
-import org.chromium.chrome.browser.share.qrcode.QrCodeCoordinator;
import org.chromium.chrome.browser.share.screenshot.ScreenshotCoordinator;
import org.chromium.chrome.browser.share.share_sheet.ShareSheetPropertyModelBuilder.ContentType;
import org.chromium.chrome.browser.tab.Tab;
@@ -145,10 +144,6 @@ class ChromeProvidedSharingOptionsProvider {
mOrderedFirstPartyOptions.add(createCopyTextFirstPartyOption());
@@ -151,10 +150,6 @@ class ChromeProvidedSharingOptionsProvider {
&& ChromeFeatureList.isEnabled(ChromeFeatureList.CHROME_SHARE_HIGHLIGHTS_ANDROID)) {
mOrderedFirstPartyOptions.add(createHighlightsFirstPartyOption());
}
mOrderedFirstPartyOptions.add(createSendTabToSelfFirstPartyOption());
- if (ChromeFeatureList.isEnabled(ChromeFeatureList.CHROME_SHARE_QRCODE)
- && !mTabProvider.get().getWebContents().isIncognito()) {
- mOrderedFirstPartyOptions.add(createQrCodeFirstPartyOption());
- }
if (mPrefServiceBridge.getBoolean(Pref.PRINTING_ENABLED)) {
if (UserPrefs.get(Profile.getLastUsedRegularProfile()).getBoolean(Pref.PRINTING_ENABLED)) {
mOrderedFirstPartyOptions.add(createPrintingFirstPartyOption());
}
@@ -261,26 +256,6 @@ class ChromeProvidedSharingOptionsProvider {
@@ -265,21 +260,6 @@ class ChromeProvidedSharingOptionsProvider {
ContentType.IMAGE));
}
- private FirstPartyOption createQrCodeFirstPartyOption() {
- PropertyModel propertyModel = ShareSheetPropertyModelBuilder.createPropertyModel(
- AppCompatResources.getDrawable(mActivity, R.drawable.qr_code),
- mActivity.getResources().getString(R.string.qr_code_share_icon_label),
- (currentActivity)
- -> {
- mActivity.getResources().getString(R.string.qr_code_share_icon_label), (view) -> {
- RecordUserAction.record("SharingHubAndroid.QRCodeSelected");
- RecordHistogram.recordMediumTimesHistogram(
- "Sharing.SharingHubAndroid.TimeToShare",
- System.currentTimeMillis() - mShareStartTime);
- recordTimeToShare(mShareStartTime);
- mBottomSheetController.hideContent(mBottomSheetContent, true);
- QrCodeCoordinator qrCodeCoordinator = new QrCodeCoordinator(mActivity, mUrl);
- qrCodeCoordinator.show();
- },
- /*isFirstParty=*/true);
- });
- return new FirstPartyOption(propertyModel,
- Arrays.asList(ContentType.LINK_PAGE_VISIBLE, ContentType.LINK_PAGE_NOT_VISIBLE,
- ContentType.IMAGE));
@ -88,8 +83,8 @@ diff --git a/chrome/browser/share/android/java_sources.gni b/chrome/browser/shar
+++ b/chrome/browser/share/android/java_sources.gni
@@ -8,24 +8,6 @@ share_java_sources = [
"//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/BitmapDownloadRequest.java",
"//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/BitmapUriRequest.java",
"//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/clipboard/ClipboardImageFileProvider.java",
"//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/link_to_text/LinkToTextCoordinator.java",
- "//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/qrcode/QRCodeGenerationRequest.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",

View file

@ -9,7 +9,7 @@ Subject: Do not store passwords by default
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
@@ -206,10 +206,10 @@ FormData SimplifiedFormDataFromFormStructure(
@@ -207,10 +207,10 @@ FormData SimplifiedFormDataFromFormStructure(
void PasswordManager::RegisterProfilePrefs(
user_prefs::PrefRegistrySyncable* registry) {
registry->RegisterBooleanPref(

View file

@ -0,0 +1,50 @@
From: csagan5 <32685696+csagan5@users.noreply.github.com>
Date: Sat, 26 Sep 2020 14:23:19 +0100
Subject: Enable DoH
---
.../chrome/browser/privacy/secure_dns/SecureDnsBridge.java | 2 +-
chrome/common/chrome_features.cc | 6 +++---
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/chrome/browser/privacy/java/src/org/chromium/chrome/browser/privacy/secure_dns/SecureDnsBridge.java b/chrome/browser/privacy/java/src/org/chromium/chrome/browser/privacy/secure_dns/SecureDnsBridge.java
--- a/chrome/browser/privacy/java/src/org/chromium/chrome/browser/privacy/secure_dns/SecureDnsBridge.java
+++ b/chrome/browser/privacy/java/src/org/chromium/chrome/browser/privacy/secure_dns/SecureDnsBridge.java
@@ -46,7 +46,7 @@ class SecureDnsBridge {
// Must match features::kDnsOverHttpsShowUiParam.
final String showUiParam = "ShowUi";
// Must match the default value for this param.
- final boolean showUiParamDefault = false;
+ final boolean showUiParamDefault = true;
return ChromeFeatureList.getFieldTrialParamByFeatureAsBoolean(
ChromeFeatureList.DNS_OVER_HTTPS, showUiParam, showUiParamDefault);
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
@@ -263,7 +263,7 @@ const base::Feature kDesktopPWAsWithoutExtensions{
// Enable DNS over HTTPS (DoH).
const base::Feature kDnsOverHttps{"DnsOverHttps",
- base::FEATURE_DISABLED_BY_DEFAULT};
+ base::FEATURE_ENABLED_BY_DEFAULT};
// Provides a mechanism to remove providers from the dropdown list in the
// settings UI. Separate multiple provider ids with commas. See the
@@ -274,11 +274,11 @@ const base::FeatureParam<std::string> kDnsOverHttpsDisabledProvidersParam{
// Set whether fallback to insecure DNS is allowed by default. This setting may
// be overridden for individual transactions.
const base::FeatureParam<bool> kDnsOverHttpsFallbackParam{&kDnsOverHttps,
- "Fallback", true};
+ "Fallback", false};
// Sets whether the DoH setting is displayed in the settings UI.
const base::FeatureParam<bool> kDnsOverHttpsShowUiParam{&kDnsOverHttps,
- "ShowUi", false};
+ "ShowUi", true};
// Supply one or more space-separated DoH server URI templates to use when this
// feature is enabled. If no templates are specified, then a hardcoded mapping
--
2.17.1

View file

@ -10,7 +10,7 @@ Subject: Enable SPPI for devices with enough memory
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
@@ -637,11 +637,7 @@ const base::Feature kShowTrustedPublisherURL{"ShowTrustedPublisherURL",
@@ -690,11 +690,7 @@ const base::Feature kShowTrustedPublisherURL{"ShowTrustedPublisherURL",
// browser_features, as they are only used on the browser side.
const base::Feature kSitePerProcess {
"site-per-process",

View file

@ -11,19 +11,19 @@ Unexpire #darken-websites-checkbox-in-themes-setting
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
@@ -783,7 +783,7 @@
@@ -898,7 +898,7 @@
{
"name": "darken-websites-checkbox-in-themes-setting",
"owners": [ "lazzzis@google.com", "twellington" ],
"name": "disable-keepalive-fetch",
"owners": [ "yhirano" ],
- "expiry_milestone": 83
+ "expiry_milestone": -1
},
{
"name": "data-saver-server-previews",
"name": "disable-office-editing-component-app",
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
@@ -432,7 +432,7 @@ const base::Feature kContextualSearchTranslations{
@@ -452,7 +452,7 @@ const base::Feature kContextualSearchTranslations{
"ContextualSearchTranslations", base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kDarkenWebsitesCheckboxInThemesSetting{

View file

@ -42,7 +42,7 @@ Excerpt from https://github.com/bromite/bromite/issues/226
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
@@ -288,6 +288,10 @@ config("compiler") {
@@ -290,6 +290,10 @@ config("compiler") {
}
}

View file

@ -1,37 +0,0 @@
From: csagan5 <32685696+csagan5@users.noreply.github.com>
Date: Fri, 7 Aug 2020 13:41:21 +0200
Subject: Enable improved cookie controls by default
---
components/content_settings/core/common/features.cc | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
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
@@ -11,7 +11,7 @@ namespace content_settings {
// Enables an improved UI for third-party cookie blocking in incognito mode.
const base::Feature kImprovedCookieControls{"ImprovedCookieControls",
- base::FEATURE_DISABLED_BY_DEFAULT};
+ base::FEATURE_ENABLED_BY_DEFAULT};
// Default setting for improved cookie controls.
const base::FeatureParam<bool> kImprovedCookieControlsDefaultInIncognito{
@@ -20,10 +20,10 @@ const base::FeatureParam<bool> kImprovedCookieControlsDefaultInIncognito{
// Enables an improved UI for existing third-party cookie blocking users.
const base::Feature kImprovedCookieControlsForThirdPartyCookieBlocking{
"ImprovedCookieControlsForThirdPartyCookieBlocking",
- base::FEATURE_DISABLED_BY_DEFAULT};
+ base::FEATURE_ENABLED_BY_DEFAULT};
const base::Feature kDisallowWildcardsInPluginContentSettings{
"DisallowWildcardsInPluginContentSettings",
base::FEATURE_ENABLED_BY_DEFAULT};
-} // namespace content_settings
\ No newline at end of file
+} // namespace content_settings
--
2.17.1

View file

@ -15,7 +15,7 @@ Expose show-legacy-tls-warnings flag on Android as well
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
@@ -5366,11 +5366,9 @@ const FeatureEntry kFeatureEntries[] = {
@@ -5790,11 +5790,9 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(features::kElasticOverscrollWin)},
#endif

View file

@ -9,7 +9,7 @@ Subject: Enable prefetch-privacy-changes by default
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
@@ -283,7 +283,7 @@ const base::Feature kFontAccess{"FontAccess",
@@ -303,7 +303,7 @@ const base::Feature kWebComponentsV0{"WebComponentsV0",
// Prefetch request properties are updated to be privacy-preserving. See
// crbug.com/988956.
const base::Feature kPrefetchPrivacyChanges{"PrefetchPrivacyChanges",

View file

@ -3,21 +3,21 @@ Date: Fri, 31 Jul 2020 08:28:35 +0200
Subject: Enable reduced-referrer-granularity by default
---
content/public/common/content_features.cc | 2 +-
third_party/blink/common/features.cc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
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
@@ -456,7 +456,7 @@ const base::Feature kProactivelySwapBrowsingInstance{
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
@@ -698,7 +698,7 @@ const base::Feature kCompositingOptimizations{
// Reduce the amount of information in the default 'referer' header for
// cross-origin requests.
const base::Feature kReducedReferrerGranularity{
- "ReducedReferrerGranularity", base::FEATURE_DISABLED_BY_DEFAULT};
+ "ReducedReferrerGranularity", base::FEATURE_ENABLED_BY_DEFAULT};
// Controls whether FileURLLoaderFactory can fetch additional files based on the
// isolated world's origin. This feature is disabled by default because we want
// Enables the user activated exponential delay in the ContentCapture task.
const base::Feature kContentCaptureUserActivatedDelay = {
--
2.17.1

View file

@ -16,8 +16,8 @@ diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/fea
- base::FEATURE_DISABLED_BY_DEFAULT};
+ base::FEATURE_ENABLED_BY_DEFAULT};
// When enabled, use the maximum possible bounds in compositing overlap testing
// for fixed position elements.
const base::Feature kMeasureMemoryExperiment{"MeasureMemoryExperiment",
base::FEATURE_DISABLED_BY_DEFAULT};
--
2.17.1

View file

@ -9,7 +9,7 @@ Subject: Fix crash when accessing page info / site settings
diff --git a/components/permissions/permission_manager.cc b/components/permissions/permission_manager.cc
--- a/components/permissions/permission_manager.cc
+++ b/components/permissions/permission_manager.cc
@@ -682,6 +682,10 @@ PermissionResult PermissionManager::GetPermissionStatusHelper(
@@ -676,6 +676,10 @@ PermissionResult PermissionManager::GetPermissionStatusHelper(
if (status != CONTENT_SETTING_DEFAULT)
return PermissionResult(status, PermissionStatusSource::UNSPECIFIED);
PermissionContextBase* context = GetPermissionContext(permission);

View file

@ -26,8 +26,8 @@ diff --git a/storage/browser/quota/quota_features.cc b/storage/browser/quota/quo
- &kIncognitoDynamicQuota, "IncognitoQuotaRatioUpperBound", 0.2};
+ &kIncognitoDynamicQuota, "IncognitoQuotaRatioUpperBound", 0.3};
} // namespace features
} // namespace storage
// Enables Storage Pressure Event.
const base::Feature kStoragePressureEvent{"StoragePressureEvent",
--
2.17.1

View file

@ -9,7 +9,7 @@ Subject: Hide passwords manager link
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java
@@ -284,7 +284,7 @@ public class PasswordSettings
@@ -316,7 +316,7 @@ public class PasswordSettings
return;
}
@ -18,7 +18,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage
PreferenceGroup passwordParent;
if (mSearchQuery == null) {
@@ -360,7 +360,7 @@ public class PasswordSettings
@@ -392,7 +392,7 @@ public class PasswordSettings
return;
}

View file

@ -9,13 +9,13 @@ Subject: Hide send reports checkbox
diff --git a/chrome/android/java/res/layout/fre_tosanduma.xml b/chrome/android/java/res/layout/fre_tosanduma.xml
--- a/chrome/android/java/res/layout/fre_tosanduma.xml
+++ b/chrome/android/java/res/layout/fre_tosanduma.xml
@@ -70,7 +70,7 @@
@@ -91,7 +91,7 @@
android:layout_height="wrap_content"
android:lineSpacingMultiplier="1.4"
android:text="@string/fre_send_report_check"
- android:textAppearance="@style/TextAppearance.TextMedium.Primary" />
+ android:textAppearance="@style/TextAppearance.TextMedium.Primary" android:visibility="gone" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
</LinearLayout>
--

View file

@ -11,9 +11,9 @@ Patch from https://github.com/Eloston/ungoogled-chromium/issues/814#issuecomment
diff --git a/components/omnibox/browser/autocomplete_result.cc b/components/omnibox/browser/autocomplete_result.cc
--- a/components/omnibox/browser/autocomplete_result.cc
+++ b/components/omnibox/browser/autocomplete_result.cc
@@ -76,7 +76,8 @@ struct MatchGURLHash {
@@ -70,7 +70,8 @@ struct MatchGURLHash {
// static
size_t AutocompleteResult::GetMaxMatches(bool input_from_omnibox_focus) {
size_t AutocompleteResult::GetMaxMatches(bool is_zero_suggest) {
#if (defined(OS_ANDROID))
- constexpr size_t kDefaultMaxAutocompleteMatches = 5;
+ // changed from 6, this needs to be double the value of default_max_matches_per_provider from components/omnibox/browser/omnibox_field_trial.cc
@ -24,7 +24,7 @@ diff --git a/components/omnibox/browser/autocomplete_result.cc b/components/omni
diff --git a/components/omnibox/browser/omnibox_field_trial.cc b/components/omnibox/browser/omnibox_field_trial.cc
--- a/components/omnibox/browser/omnibox_field_trial.cc
+++ b/components/omnibox/browser/omnibox_field_trial.cc
@@ -361,11 +361,11 @@ void OmniboxFieldTrial::GetDemotionsByType(
@@ -382,11 +382,11 @@ void OmniboxFieldTrial::GetDemotionsByType(
size_t OmniboxFieldTrial::GetProviderMaxMatches(
AutocompleteProvider::Type provider) {
@ -38,7 +38,7 @@ diff --git a/components/omnibox/browser/omnibox_field_trial.cc b/components/omni
return default_max_matches_per_provider;
std::string param_value = base::GetFieldTrialParamValueByFeature(
@@ -392,7 +392,7 @@ size_t OmniboxFieldTrial::GetProviderMaxMatches(
@@ -413,7 +413,7 @@ size_t OmniboxFieldTrial::GetProviderMaxMatches(
else if (k == provider)
return v;
}

View file

@ -21,7 +21,7 @@ Send a random key press to circumvent idle status detection
diff --git a/third_party/blink/renderer/core/dom/BUILD.gn b/third_party/blink/renderer/core/dom/BUILD.gn
--- a/third_party/blink/renderer/core/dom/BUILD.gn
+++ b/third_party/blink/renderer/core/dom/BUILD.gn
@@ -140,6 +140,8 @@ blink_core_sources("dom") {
@@ -178,6 +178,8 @@ blink_core_sources("dom") {
"global_event_handlers.h",
"icon_url.cc",
"icon_url.h",
@ -33,7 +33,7 @@ diff --git a/third_party/blink/renderer/core/dom/BUILD.gn b/third_party/blink/re
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
@@ -264,6 +264,7 @@
@@ -273,6 +273,7 @@
#include "third_party/blink/renderer/core/page/scrolling/root_scroller_controller.h"
#include "third_party/blink/renderer/core/page/scrolling/scroll_state_callback.h"
#include "third_party/blink/renderer/core/page/scrolling/scrolling_coordinator.h"
@ -41,7 +41,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink
#include "third_party/blink/renderer/core/page/scrolling/snap_coordinator.h"
#include "third_party/blink/renderer/core/page/scrolling/text_fragment_anchor.h"
#include "third_party/blink/renderer/core/page/scrolling/top_document_root_scroller_controller.h"
@@ -328,6 +329,8 @@
@@ -338,6 +339,8 @@
#include "third_party/blink/renderer/platform/wtf/text/string_buffer.h"
#include "third_party/blink/renderer/platform/wtf/text/text_encoding_registry.h"
@ -50,7 +50,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink
#ifndef NDEBUG
using WeakDocumentSet = blink::HeapHashSet<blink::WeakMember<blink::Document>>;
static WeakDocumentSet& liveDocumentSet();
@@ -6803,6 +6806,61 @@ void Document::MarkFirstPaint() {
@@ -6874,6 +6877,61 @@ void Document::MarkFirstPaint() {
MaybeExecuteDelayedAsyncScripts();
}
@ -112,7 +112,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink
void Document::FinishedParsing() {
DCHECK(!GetScriptableDocumentParser() || !parser_->IsParsing());
DCHECK(!GetScriptableDocumentParser() || ready_state_ != kLoading);
@@ -6858,6 +6916,10 @@ void Document::FinishedParsing() {
@@ -6929,6 +6987,10 @@ void Document::FinishedParsing() {
frame->Loader().FinishedParsing();
@ -126,7 +126,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink
diff --git a/third_party/blink/renderer/core/dom/document.h b/third_party/blink/renderer/core/dom/document.h
--- a/third_party/blink/renderer/core/dom/document.h
+++ b/third_party/blink/renderer/core/dom/document.h
@@ -1692,6 +1692,9 @@ class CORE_EXPORT Document : public ContainerNode,
@@ -1670,6 +1670,9 @@ class CORE_EXPORT Document : public ContainerNode,
void AddAXContext(AXContext*);
void RemoveAXContext(AXContext*);
@ -161,7 +161,7 @@ new file mode 100644
diff --git a/third_party/blink/renderer/core/html/html_script_element.cc b/third_party/blink/renderer/core/html/html_script_element.cc
--- a/third_party/blink/renderer/core/html/html_script_element.cc
+++ b/third_party/blink/renderer/core/html/html_script_element.cc
@@ -167,6 +167,11 @@ void HTMLScriptElement::setTextContent(
@@ -168,6 +168,11 @@ void HTMLScriptElement::setTextContent(
}
}
@ -176,7 +176,7 @@ diff --git a/third_party/blink/renderer/core/html/html_script_element.cc b/third
diff --git a/third_party/blink/renderer/core/html/html_script_element.h b/third_party/blink/renderer/core/html/html_script_element.h
--- a/third_party/blink/renderer/core/html/html_script_element.h
+++ b/third_party/blink/renderer/core/html/html_script_element.h
@@ -54,6 +54,7 @@ class CORE_EXPORT HTMLScriptElement final : public HTMLElement,
@@ -53,6 +53,7 @@ class CORE_EXPORT HTMLScriptElement final : public HTMLElement,
void setInnerText(const StringOrTrustedScript&, ExceptionState&) override;
void setTextContent(const StringOrTrustedScript&, ExceptionState&) override;
void setTextContent(const String&) override;

View file

@ -10,14 +10,13 @@ Subject: Modify default preferences
chrome/browser/profiles/profile.cc | 2 +-
.../settings/reset_page/reset_profile_dialog.html | 2 +-
chrome/browser/ui/browser_ui_prefs.cc | 4 ++--
chrome/browser/ui/navigation_correction_tab_observer.cc | 2 +-
.../ui/webui/local_discovery/local_discovery_ui.cc | 4 ----
chrome/service/cloud_print/connector_settings.cc | 2 +-
components/autofill/core/browser/autofill_manager.cc | 9 +++------
components/autofill/core/common/autofill_prefs.cc | 2 +-
components/bookmarks/browser/bookmark_utils.cc | 4 ++--
.../safe_browsing/core/common/safe_browsing_prefs.cc | 4 ++--
14 files changed, 18 insertions(+), 25 deletions(-)
13 files changed, 17 insertions(+), 24 deletions(-)
diff --git a/chrome/browser/background/background_mode_manager.cc b/chrome/browser/background/background_mode_manager.cc
--- a/chrome/browser/background/background_mode_manager.cc
@ -34,7 +33,7 @@ diff --git a/chrome/browser/background/background_mode_manager.cc b/chrome/brows
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
@@ -1277,7 +1277,7 @@ void ChromeContentBrowserClient::RegisterLocalStatePrefs(
@@ -1290,7 +1290,7 @@ void ChromeContentBrowserClient::RegisterLocalStatePrefs(
void ChromeContentBrowserClient::RegisterProfilePrefs(
user_prefs::PrefRegistrySyncable* registry) {
registry->RegisterBooleanPref(prefs::kDisable3DAPIs, false);
@ -70,7 +69,7 @@ diff --git a/chrome/browser/net/prediction_options.h b/chrome/browser/net/predic
diff --git a/chrome/browser/profiles/profile.cc b/chrome/browser/profiles/profile.cc
--- a/chrome/browser/profiles/profile.cc
+++ b/chrome/browser/profiles/profile.cc
@@ -262,7 +262,7 @@ const char Profile::kProfileKey[] = "__PROFILE__";
@@ -257,7 +257,7 @@ const char Profile::kProfileKey[] = "__PROFILE__";
void Profile::RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
registry->RegisterBooleanPref(
prefs::kSearchSuggestEnabled,
@ -108,22 +107,10 @@ diff --git a/chrome/browser/ui/browser_ui_prefs.cc b/chrome/browser/ui/browser_u
registry->RegisterDictionaryPref(prefs::kBrowserWindowPlacement);
registry->RegisterDictionaryPref(prefs::kBrowserWindowPlacementPopup);
registry->RegisterDictionaryPref(prefs::kAppWindowPlacement);
diff --git a/chrome/browser/ui/navigation_correction_tab_observer.cc b/chrome/browser/ui/navigation_correction_tab_observer.cc
--- a/chrome/browser/ui/navigation_correction_tab_observer.cc
+++ b/chrome/browser/ui/navigation_correction_tab_observer.cc
@@ -59,7 +59,7 @@ void NavigationCorrectionTabObserver::SetAllowEnableCorrectionsForTesting(
void NavigationCorrectionTabObserver::RegisterProfilePrefs(
user_prefs::PrefRegistrySyncable* prefs) {
prefs->RegisterBooleanPref(embedder_support::kAlternateErrorPagesEnabled,
- true,
+ false,
user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
}
diff --git a/chrome/browser/ui/webui/local_discovery/local_discovery_ui.cc b/chrome/browser/ui/webui/local_discovery/local_discovery_ui.cc
--- a/chrome/browser/ui/webui/local_discovery/local_discovery_ui.cc
+++ b/chrome/browser/ui/webui/local_discovery/local_discovery_ui.cc
@@ -109,10 +109,6 @@ void LocalDiscoveryUI::RegisterProfilePrefs(
@@ -147,10 +147,6 @@ void LocalDiscoveryUI::RegisterProfilePrefs(
registry->RegisterBooleanPref(prefs::kLocalDiscoveryEnabled, true);
registry->RegisterBooleanPref(
prefs::kLocalDiscoveryNotificationsEnabled,
@ -149,7 +136,7 @@ diff --git a/chrome/service/cloud_print/connector_settings.cc b/chrome/service/c
diff --git a/components/autofill/core/browser/autofill_manager.cc b/components/autofill/core/browser/autofill_manager.cc
--- a/components/autofill/core/browser/autofill_manager.cc
+++ b/components/autofill/core/browser/autofill_manager.cc
@@ -948,10 +948,7 @@ void AutofillManager::OnQueryFormFieldAutofillImpl(
@@ -955,10 +955,7 @@ void AutofillManager::OnQueryFormFieldAutofillImpl(
// suggestions available.
// TODO(mathp): Differentiate between number of suggestions available
// (current metric) and number shown to the user.
@ -161,7 +148,7 @@ diff --git a/components/autofill/core/browser/autofill_manager.cc b/components/a
}
}
@@ -1587,8 +1584,8 @@ void AutofillManager::Reset() {
@@ -1593,8 +1590,8 @@ void AutofillManager::Reset() {
#if defined(OS_ANDROID) || defined(OS_IOS)
autofill_assistant_.Reset();
#endif
@ -205,7 +192,7 @@ diff --git a/components/bookmarks/browser/bookmark_utils.cc b/components/bookmar
diff --git a/components/safe_browsing/core/common/safe_browsing_prefs.cc b/components/safe_browsing/core/common/safe_browsing_prefs.cc
--- a/components/safe_browsing/core/common/safe_browsing_prefs.cc
+++ b/components/safe_browsing/core/common/safe_browsing_prefs.cc
@@ -189,9 +189,9 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) {
@@ -205,9 +205,9 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) {
registry->RegisterBooleanPref(
prefs::kSafeBrowsingSawInterstitialScoutReporting, false);
registry->RegisterBooleanPref(

View file

@ -56,9 +56,9 @@ Added flag --fingerprinting-canvas-image-data-noise to disable Canvas image data
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -2098,6 +2098,7 @@ static_library("browser") {
"//services/data_decoder/public/cpp",
@@ -2132,6 +2132,7 @@ static_library("browser") {
"//services/device/public/cpp:device_features",
"//services/device/public/cpp/serial:switches",
"//services/device/public/cpp/usb",
+ "//third_party/ungoogled:switches",
"//services/device/public/mojom",
@ -68,14 +68,14 @@ 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
@@ -164,6 +164,7 @@
#include "services/media_session/public/cpp/features.h"
#include "services/network/public/cpp/features.h"
#include "services/network/public/cpp/network_switches.h"
#include "services/service_manager/sandbox/features.h"
+#include "third_party/ungoogled/ungoogled_switches.h"
#include "services/service_manager/sandbox/switches.h"
#include "storage/browser/quota/quota_features.h"
#include "third_party/blink/public/common/experiments/memory_ablation_experiment.h"
#include "third_party/blink/public/common/features.h"
@@ -2017,12 +2018,24 @@ const FeatureEntry kFeatureEntries[] = {
@@ -2281,12 +2282,24 @@ const FeatureEntry kFeatureEntries[] = {
{"enable-webrtc-srtp-aes-gcm", flag_descriptions::kWebrtcSrtpAesGcmName,
flag_descriptions::kWebrtcSrtpAesGcmDescription, kOsAll,
SINGLE_VALUE_TYPE(switches::kEnableWebRtcSrtpAesGcm)},
@ -103,7 +103,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn
--- a/content/browser/BUILD.gn
+++ b/content/browser/BUILD.gn
@@ -216,6 +216,7 @@ jumbo_source_set("browser") {
@@ -221,6 +221,7 @@ source_set("browser") {
"//third_party/libyuv",
"//third_party/re2",
"//third_party/sqlite",
@ -114,7 +114,7 @@ diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn
diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc
--- a/content/browser/renderer_host/render_process_host_impl.cc
+++ b/content/browser/renderer_host/render_process_host_impl.cc
@@ -224,6 +224,7 @@
@@ -223,6 +223,7 @@
#include "third_party/blink/public/common/user_agent/user_agent_metadata.h"
#include "third_party/blink/public/mojom/disk_allocator.mojom.h"
#include "third_party/blink/public/public_buildflags.h"
@ -122,7 +122,7 @@ diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content
#include "third_party/skia/include/core/SkBitmap.h"
#include "ui/accessibility/accessibility_switches.h"
#include "ui/base/ui_base_switches.h"
@@ -3294,6 +3295,9 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer(
@@ -3333,6 +3334,9 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer(
switches::kDisablePreferCompositingToLCDText,
switches::kDisableDatabases,
switches::kDisableFileSystem,
@ -135,7 +135,7 @@ diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content
diff --git a/content/child/BUILD.gn b/content/child/BUILD.gn
--- a/content/child/BUILD.gn
+++ b/content/child/BUILD.gn
@@ -123,6 +123,7 @@ target(link_target_type, "child") {
@@ -125,6 +125,7 @@ target(link_target_type, "child") {
"//third_party/blink/public/common",
"//third_party/blink/public/strings",
"//third_party/ced",
@ -146,7 +146,7 @@ diff --git a/content/child/BUILD.gn b/content/child/BUILD.gn
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
@@ -26,6 +26,7 @@
@@ -28,6 +28,7 @@
#include "services/network/public/cpp/features.h"
#include "services/network/public/cpp/network_switches.h"
#include "third_party/blink/public/common/features.h"
@ -154,7 +154,7 @@ diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.
#include "third_party/blink/public/common/switches.h"
#include "third_party/blink/public/platform/web_runtime_features.h"
#include "ui/accessibility/accessibility_features.h"
@@ -535,6 +536,13 @@ void SetCustomizedRuntimeFeaturesFromCombinedArgs(
@@ -582,6 +583,13 @@ void SetCustomizedRuntimeFeaturesFromCombinedArgs(
// They're moved here to distinguish them from actual base checks
WebRuntimeFeatures::EnableOverlayScrollbars(ui::IsOverlayScrollbarEnabled());
@ -171,7 +171,7 @@ diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.
diff --git a/third_party/blink/public/platform/web_runtime_features.h b/third_party/blink/public/platform/web_runtime_features.h
--- a/third_party/blink/public/platform/web_runtime_features.h
+++ b/third_party/blink/public/platform/web_runtime_features.h
@@ -223,6 +223,9 @@ class WebRuntimeFeatures {
@@ -224,6 +224,9 @@ class WebRuntimeFeatures {
BLINK_PLATFORM_EXPORT static void EnableTranslateService(bool);
BLINK_PLATFORM_EXPORT static void EnableGetDisplayMedia(bool);
BLINK_PLATFORM_EXPORT static void EnableAllowSyncXHRInPageDismissal(bool);
@ -184,7 +184,7 @@ diff --git a/third_party/blink/public/platform/web_runtime_features.h b/third_pa
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
@@ -35,6 +35,7 @@
@@ -41,6 +41,7 @@
#include "base/auto_reset.h"
#include "base/macros.h"
#include "base/optional.h"
@ -192,7 +192,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink
#include "base/time/time.h"
#include "cc/input/overscroll_behavior.h"
#include "cc/input/scroll_snap_data.h"
@@ -2513,6 +2514,23 @@ void Document::UpdateStyleAndLayoutTree() {
@@ -2475,6 +2476,23 @@ void Document::UpdateStyleAndLayoutTree() {
#if DCHECK_IS_ON()
AssertLayoutTreeUpdated(*this);
#endif
@ -219,7 +219,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink
diff --git a/third_party/blink/renderer/core/dom/document.h b/third_party/blink/renderer/core/dom/document.h
--- a/third_party/blink/renderer/core/dom/document.h
+++ b/third_party/blink/renderer/core/dom/document.h
@@ -451,6 +451,10 @@ class CORE_EXPORT Document : public ContainerNode,
@@ -438,6 +438,10 @@ class CORE_EXPORT Document : public ContainerNode,
has_xml_declaration_ = has_xml_declaration ? 1 : 0;
}
@ -230,7 +230,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.h b/third_party/blink/
String visibilityState() const;
bool IsPageVisible() const;
bool hidden() const;
@@ -1974,6 +1978,9 @@ class CORE_EXPORT Document : public ContainerNode,
@@ -1943,6 +1947,9 @@ class CORE_EXPORT Document : public ContainerNode,
base::ElapsedTimer start_time_;
@ -243,7 +243,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.h b/third_party/blink/
diff --git a/third_party/blink/renderer/core/dom/element.cc b/third_party/blink/renderer/core/dom/element.cc
--- a/third_party/blink/renderer/core/dom/element.cc
+++ b/third_party/blink/renderer/core/dom/element.cc
@@ -2031,6 +2031,11 @@ DOMRectList* Element::getClientRects() {
@@ -2019,6 +2019,11 @@ DOMRectList* Element::getClientRects() {
DCHECK(element_layout_object);
GetDocument().AdjustFloatQuadsForScrollAndAbsoluteZoom(
quads, *element_layout_object);
@ -255,7 +255,7 @@ diff --git a/third_party/blink/renderer/core/dom/element.cc b/third_party/blink/
return MakeGarbageCollected<DOMRectList>(quads);
}
@@ -2048,6 +2053,9 @@ DOMRect* Element::getBoundingClientRect() {
@@ -2036,6 +2041,9 @@ DOMRect* Element::getBoundingClientRect() {
DCHECK(element_layout_object);
GetDocument().AdjustFloatRectForScrollAndAbsoluteZoom(result,
*element_layout_object);
@ -357,7 +357,7 @@ diff --git a/third_party/blink/renderer/modules/canvas/canvas2d/canvas_rendering
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
@@ -1552,7 +1552,9 @@ jumbo_component("platform") {
@@ -1548,7 +1548,9 @@ component("platform") {
"//third_party/blink/renderer:non_test_config",
]
@ -368,7 +368,7 @@ diff --git a/third_party/blink/renderer/platform/BUILD.gn b/third_party/blink/re
public_deps = [
":blink_platform_public_deps",
@@ -1593,6 +1595,7 @@ jumbo_component("platform") {
@@ -1592,6 +1594,7 @@ component("platform") {
"//third_party/blink/public/strings",
"//third_party/blink/renderer/platform/wtf",
"//third_party/ced",
@ -379,8 +379,8 @@ diff --git a/third_party/blink/renderer/platform/BUILD.gn b/third_party/blink/re
diff --git a/third_party/blink/renderer/platform/exported/web_runtime_features.cc b/third_party/blink/renderer/platform/exported/web_runtime_features.cc
--- a/third_party/blink/renderer/platform/exported/web_runtime_features.cc
+++ b/third_party/blink/renderer/platform/exported/web_runtime_features.cc
@@ -709,4 +709,16 @@ void WebRuntimeFeatures::EnableContentIndex(bool enable) {
RuntimeEnabledFeatures::SetContentIndexEnabled(enable);
@@ -729,4 +729,16 @@ void WebRuntimeFeatures::EnableConversionMeasurementInfraSupport(bool enable) {
RuntimeEnabledFeatures::SetConversionMeasurementInfraSupportEnabled(enable);
}
+void WebRuntimeFeatures::EnableFingerprintingClientRectsNoise(bool enable) {
@ -446,10 +446,10 @@ diff --git a/third_party/blink/renderer/platform/graphics/static_bitmap_image.cc
#include "v8/include/v8.h"
namespace blink {
@@ -128,7 +132,162 @@ bool StaticBitmapImage::CopyToByteArray(
DCHECK(read_pixels_successful ||
!sk_image->bounds().intersect(SkIRect::MakeXYWH(
rect.X(), rect.Y(), info.width(), info.height())));
@@ -129,7 +133,162 @@ bool StaticBitmapImage::CopyToByteArray(
.bounds()
.intersect(SkIRect::MakeXYWH(rect.X(), rect.Y(), info.width(),
info.height())));
+
+ if (read_pixels_successful && RuntimeEnabledFeatures::FingerprintingCanvasImageDataNoiseEnabled()) {
+ ShuffleSubchannelColorData(dst.data(), info, rect.X(), rect.Y());
@ -624,7 +624,7 @@ diff --git a/third_party/blink/renderer/platform/graphics/static_bitmap_image.h
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
@@ -752,6 +752,15 @@
@@ -795,6 +795,15 @@
origin_trial_feature_name: "FeaturePolicyReporting",
status: "experimental"
},

View file

@ -9,7 +9,7 @@ Subject: Open YouTube links in Bromite
diff --git a/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalNavigationHandler.java b/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalNavigationHandler.java
--- a/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalNavigationHandler.java
+++ b/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalNavigationHandler.java
@@ -493,6 +493,7 @@ public class ExternalNavigationHandler {
@@ -499,6 +499,7 @@ public class ExternalNavigationHandler {
startActivity(intent, false, mDelegate);
return OverrideUrlLoadingResult.OVERRIDE_WITH_EXTERNAL_INTENT;
}
@ -17,7 +17,7 @@ diff --git a/components/external_intents/android/java/src/org/chromium/component
}
private static void loadUrlWithReferrer(
@@ -1060,6 +1061,13 @@ public class ExternalNavigationHandler {
@@ -1153,6 +1154,13 @@ public class ExternalNavigationHandler {
return OverrideUrlLoadingResult.OVERRIDE_WITH_ASYNC_ACTION;
}

View file

@ -0,0 +1,52 @@
From: csagan5 <32685696+csagan5@users.noreply.github.com>
Date: Wed, 23 Sep 2020 14:47:44 +0200
Subject: Password service build fixes
---
.../safe_browsing/chrome_password_protection_service.h | 2 --
.../password_protection/password_protection_request.cc | 2 --
.../password_protection/password_protection_service.h | 5 -----
3 files changed, 9 deletions(-)
diff --git a/chrome/browser/safe_browsing/chrome_password_protection_service.h b/chrome/browser/safe_browsing/chrome_password_protection_service.h
--- a/chrome/browser/safe_browsing/chrome_password_protection_service.h
+++ b/chrome/browser/safe_browsing/chrome_password_protection_service.h
@@ -250,8 +250,6 @@ class ChromePasswordProtectionService : public PasswordProtectionService {
// |NOT_SIGNED_IN|.
LoginReputationClientRequest::PasswordReuseEvent::SyncAccountType
GetSyncAccountType() const override;
- safe_browsing::LoginReputationClientRequest::UrlDisplayExperiment
- GetUrlDisplayExperiment() const override;
// Stores |verdict| in the cache based on its |trigger_type|, |url|,
// reused |password_type|, |verdict| and |receive_time|.
diff --git a/components/safe_browsing/content/password_protection/password_protection_request.cc b/components/safe_browsing/content/password_protection/password_protection_request.cc
--- a/components/safe_browsing/content/password_protection/password_protection_request.cc
+++ b/components/safe_browsing/content/password_protection/password_protection_request.cc
@@ -132,8 +132,6 @@ PasswordProtectionRequest::PasswordProtectionRequest(
password_type_ != PasswordType::SAVED_PASSWORD ||
!matching_reused_credentials_.empty());
request_proto_->set_trigger_type(trigger_type_);
- *request_proto_->mutable_url_display_experiment() =
- pps->GetUrlDisplayExperiment();
}
PasswordProtectionRequest::~PasswordProtectionRequest() {
diff --git a/components/safe_browsing/content/password_protection/password_protection_service.h b/components/safe_browsing/content/password_protection/password_protection_service.h
--- a/components/safe_browsing/content/password_protection/password_protection_service.h
+++ b/components/safe_browsing/content/password_protection/password_protection_service.h
@@ -423,11 +423,6 @@ class PasswordProtectionService : public history::HistoryServiceObserver {
virtual LoginReputationClientRequest::PasswordReuseEvent::SyncAccountType
GetSyncAccountType() const = 0;
- // Get information about Delayed Warnings and Omnibox URL display experiments.
- // This information is sent in PhishGuard pings.
- virtual LoginReputationClientRequest::UrlDisplayExperiment
- GetUrlDisplayExperiment() const = 0;
-
// Returns the reason why a ping is not sent based on the |trigger_type|,
// |url| and |password_type|. Crash if |CanSendPing| is true.
virtual RequestOutcome GetPingNotSentReason(
--
2.17.1

View file

@ -27,7 +27,7 @@ diff --git a/net/base/load_flags_list.h b/net/base/load_flags_list.h
diff --git a/net/dns/dns_transaction.cc b/net/dns/dns_transaction.cc
--- a/net/dns/dns_transaction.cc
+++ b/net/dns/dns_transaction.cc
@@ -419,7 +419,7 @@ class DnsHTTPAttempt : public DnsAttempt, public URLRequest::Delegate {
@@ -418,7 +418,7 @@ class DnsHTTPAttempt : public DnsAttempt, public URLRequest::Delegate {
// Disable secure DNS for any DoH server hostname lookups to avoid deadlock.
request_->SetDisableSecureDns(true);
request_->SetLoadFlags(request_->load_flags() | LOAD_DISABLE_CACHE |
@ -62,7 +62,7 @@ diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_reque
AddExtraHeaders();
AddCookieHeaderAndStart();
@@ -532,10 +536,12 @@ void URLRequestHttpJob::AddExtraHeaders() {
@@ -538,10 +542,12 @@ void URLRequestHttpJob::AddExtraHeaders() {
} else {
// Advertise "br" encoding only if transferred data is opaque to proxy.
bool advertise_brotli = false;
@ -79,7 +79,7 @@ diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_reque
}
}
@@ -553,7 +559,7 @@ void URLRequestHttpJob::AddExtraHeaders() {
@@ -559,7 +565,7 @@ void URLRequestHttpJob::AddExtraHeaders() {
}
}

View file

@ -3,27 +3,42 @@ Date: Sun, 3 Nov 2019 08:22:29 +0100
Subject: Remove SMS integration
---
.../browser/sms/SmsUserConsentReceiver.java | 33 ++-----------------
.../browser/sms/SmsVerificationReceiver.java | 30 ++---------------
.../content/browser/sms/Wrappers.java | 14 +-------
3 files changed, 6 insertions(+), 71 deletions(-)
.../PasswordManagerLauncher.java | 3 --
.../browser/sms/SmsUserConsentReceiver.java | 42 ++-----------------
.../browser/sms/SmsVerificationReceiver.java | 30 +------------
.../content/browser/sms/Wrappers.java | 14 +------
4 files changed, 7 insertions(+), 82 deletions(-)
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/PasswordManagerLauncher.java b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/PasswordManagerLauncher.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/PasswordManagerLauncher.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/PasswordManagerLauncher.java
@@ -6,9 +6,6 @@ package org.chromium.chrome.browser.password_manager;
import android.app.Activity;
-import com.google.android.gms.common.ConnectionResult;
-import com.google.android.gms.common.GoogleApiAvailability;
-
import org.chromium.base.ContextUtils;
import org.chromium.base.annotations.CalledByNative;
import org.chromium.base.metrics.RecordHistogram;
diff --git a/content/public/android/java/src/org/chromium/content/browser/sms/SmsUserConsentReceiver.java b/content/public/android/java/src/org/chromium/content/browser/sms/SmsUserConsentReceiver.java
--- a/content/public/android/java/src/org/chromium/content/browser/sms/SmsUserConsentReceiver.java
+++ b/content/public/android/java/src/org/chromium/content/browser/sms/SmsUserConsentReceiver.java
@@ -12,11 +12,6 @@ import android.content.IntentFilter;
@@ -12,12 +12,6 @@ import android.content.IntentFilter;
import androidx.annotation.VisibleForTesting;
-import com.google.android.gms.auth.api.phone.SmsRetriever;
-import com.google.android.gms.common.api.CommonStatusCodes;
-import com.google.android.gms.common.api.Status;
-import com.google.android.gms.tasks.OnFailureListener;
-import com.google.android.gms.tasks.Task;
-
import org.chromium.base.ContextUtils;
import org.chromium.base.Log;
import org.chromium.base.annotations.CalledByNative;
@@ -45,18 +40,6 @@ public class SmsUserConsentReceiver extends BroadcastReceiver {
@@ -46,18 +40,6 @@ public class SmsUserConsentReceiver extends BroadcastReceiver {
mSmsProviderAndroid = smsProviderAndroid;
mContext = new Wrappers.SmsReceiverContext(ContextUtils.getApplicationContext());
@ -42,7 +57,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/sms/Sm
}
@CalledByNative
@@ -69,7 +52,6 @@ public class SmsUserConsentReceiver extends BroadcastReceiver {
@@ -70,7 +52,6 @@ public class SmsUserConsentReceiver extends BroadcastReceiver {
private void destroy() {
if (DEBUG) Log.d(TAG, "Destroying SmsUserConsentReceiver.");
mDestroyed = true;
@ -50,7 +65,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/sms/Sm
}
@Override
@@ -82,7 +64,7 @@ public class SmsUserConsentReceiver extends BroadcastReceiver {
@@ -83,7 +64,7 @@ public class SmsUserConsentReceiver extends BroadcastReceiver {
return;
}
@ -59,7 +74,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/sms/Sm
return;
}
@@ -114,28 +96,19 @@ public class SmsUserConsentReceiver extends BroadcastReceiver {
@@ -115,35 +96,20 @@ public class SmsUserConsentReceiver extends BroadcastReceiver {
if (DEBUG) Log.d(TAG, "Timeout");
SmsUserConsentReceiverJni.get().onTimeout(mSmsProviderAndroid);
break;
@ -74,14 +89,22 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/sms/Sm
- } else if (resultCode == Activity.RESULT_CANCELED) {
- if (DEBUG) Log.d(TAG, "Activity result cancelled.");
- }
+ Log.d(TAG, "Activity result discarded.");
+ if (DEBUG) Log.d(TAG, "Activity result discarded.");
}
@CalledByNative
private void listen(WindowAndroid windowAndroid) {
mWindowAndroid = windowAndroid;
- Task<Void> task = getClient().startSmsUserConsent(null);
-
- task.addOnFailureListener(new OnFailureListener() {
- @Override
- public void onFailure(Exception e) {
- Log.e(TAG, "Task failed to start", e);
- }
- });
- if (DEBUG) Log.d(TAG, "Installed task");
+ Log.d(TAG, "Ignored task");
}
private Wrappers.SmsRetrieverClientWrapper getClient() {

View file

@ -3,13 +3,13 @@ Date: Fri, 21 Aug 2020 22:39:23 +0200
Subject: Remove blocklisted URLs upon bookmark creation
---
.../chromium/chrome/browser/ChromeActivity.java | 15 +++++++++++++++
.../chrome/browser/app/ChromeActivity.java | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
@@ -123,6 +123,8 @@ import org.chromium.chrome.browser.settings.SettingsLauncher;
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
@@ -134,6 +134,8 @@ import org.chromium.chrome.browser.settings.SettingsLauncher;
import org.chromium.chrome.browser.settings.SettingsLauncherImpl;
import org.chromium.chrome.browser.share.ShareDelegate;
import org.chromium.chrome.browser.share.ShareDelegateImpl;
@ -18,7 +18,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.
import org.chromium.chrome.browser.tab.AccessibilityVisibilityHandler;
import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.tab.TabDelegateFactory;
@@ -228,6 +230,7 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -241,6 +243,7 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
private TabContentManager mTabContentManager;
private UmaSessionStats mUmaSessionStats;
private ContextReporter mContextReporter;
@ -26,7 +26,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.
private boolean mPartnerBrowserRefreshNeeded;
@@ -1203,6 +1206,11 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -1186,6 +1189,11 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
mCompositorViewHolder = null;
}
@ -38,7 +38,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.
onDestroyInternal();
if (mDidAddPolicyChangeListener) {
@@ -1437,6 +1445,13 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -1416,6 +1424,13 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
return;
}
@ -47,7 +47,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.
+ mMostVisitedSites =
+ SuggestionsDependencyFactory.getInstance().createMostVisitedSites(Profile.getLastUsedRegularProfile());
+ }
+ mMostVisitedSites.removeBlacklistedUrl(tabToBookmark.getOriginalUrl());
+ mMostVisitedSites.removeBlocklistedUrl(tabToBookmark.getOriginalUrl());
+
// Note we get user bookmark ID over just a bookmark ID here: Managed bookmarks can't be
// edited. If the current URL is only bookmarked by managed bookmarks, this will return

View file

@ -5,7 +5,7 @@ Subject: Remove dependency on auth, signin, dynamic and tasks
---
chrome/android/BUILD.gn | 8 --
chrome/android/features/media_router/BUILD.gn | 2 -
.../media/router/ChromeMediaRouter.java | 7 +-
.../media/router/ChromeMediaRouter.java | 18 +---
chrome/android/java/AndroidManifest.xml | 9 --
.../org/chromium/chrome/browser/AppHooks.java | 14 +---
.../chrome/browser/ChromeVersionInfo.java | 12 +--
@ -29,13 +29,12 @@ Subject: Remove dependency on auth, signin, dynamic and tasks
services/device/geolocation/BUILD.gn | 2 -
services/shape_detection/BUILD.gn | 2 -
third_party/android_deps/BUILD.gn | 41 ----------
third_party/cacheinvalidation/BUILD.gn | 1 -
27 files changed, 16 insertions(+), 272 deletions(-)
26 files changed, 16 insertions(+), 282 deletions(-)
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
--- a/chrome/android/BUILD.gn
+++ b/chrome/android/BUILD.gn
@@ -272,9 +272,6 @@ android_library("chrome_java") {
@@ -263,9 +263,6 @@ android_library("chrome_java") {
":partner_location_descriptor_proto_java",
":update_proto_java",
":usage_stats_proto_java",
@ -45,7 +44,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
"//base:base_java",
"//base:jni_java",
"//chrome/android/features/keyboard_accessory:public_java",
@@ -717,8 +714,6 @@ junit_binary("chrome_junit_tests") {
@@ -739,8 +736,6 @@ junit_binary("chrome_junit_tests") {
":chrome_app_java_resources",
":chrome_java",
":partner_location_descriptor_proto_java",
@ -54,7 +53,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
"//base:base_java",
"//base:base_java_test_support",
"//base:base_junit_test_support",
@@ -895,9 +890,6 @@ android_library("chrome_test_java") {
@@ -928,9 +923,6 @@ android_library("chrome_test_java") {
":chrome_test_util_java",
":native_java_unittests_java",
":partner_location_descriptor_proto_java",
@ -67,8 +66,8 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
diff --git a/chrome/android/features/media_router/BUILD.gn b/chrome/android/features/media_router/BUILD.gn
--- a/chrome/android/features/media_router/BUILD.gn
+++ b/chrome/android/features/media_router/BUILD.gn
@@ -10,8 +10,6 @@ import("//chrome/common/features.gni")
android_library("java") {
@@ -11,8 +11,6 @@ android_library("java") {
resources_package = "org.chromium.chrome.media.router"
deps = [
":java_resources",
- "$google_play_services_package:google_play_services_base_java",
@ -89,21 +88,32 @@ diff --git a/chrome/android/features/media_router/java/src/org/chromium/chrome/b
import org.chromium.base.ContextUtils;
import org.chromium.base.Log;
import org.chromium.base.StrictModeContext;
@@ -43,9 +40,7 @@ public class ChromeMediaRouter implements MediaRouteManager {
int googleApiAvailabilityResult =
AppHooks.get().isGoogleApiAvailableWithMinApkVersion(
MIN_GOOGLE_PLAY_SERVICES_APK_VERSION);
@@ -39,20 +36,7 @@ public class ChromeMediaRouter implements MediaRouteManager {
new MediaRouteProvider.Factory() {
@Override
public void addProviders(MediaRouteManager manager) {
- int googleApiAvailabilityResult =
- GoogleApiAvailability.getInstance().isGooglePlayServicesAvailable(
- ContextUtils.getApplicationContext(),
- MIN_GOOGLE_PLAY_SERVICES_APK_VERSION);
- if (googleApiAvailabilityResult != ConnectionResult.SUCCESS) {
- GoogleApiAvailability.getInstance().showErrorNotification(
- ContextUtils.getApplicationContext(), googleApiAvailabilityResult);
+ if (true) {
return;
}
MediaRouteProvider cafProvider = CafMediaRouteProvider.create(manager);
- return;
- }
- MediaRouteProvider cafProvider = CafMediaRouteProvider.create(manager);
- manager.addMediaRouteProvider(cafProvider);
- MediaRouteProvider remotingProvider =
- CafRemotingMediaRouteProvider.create(manager);
- manager.addMediaRouteProvider(remotingProvider);
+ return;
}
};
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
@@ -746,15 +746,6 @@ by a child template that "extends" this file.
@@ -757,15 +757,6 @@ by a child template that "extends" this file.
</intent-filter>
</activity>
@ -129,10 +139,10 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/AppHooks.java b
-import com.google.android.gms.common.ConnectionResult;
-import com.google.android.gms.common.GoogleApiAvailability;
-
import org.chromium.base.Callback;
import org.chromium.base.ContextUtils;
import org.chromium.base.annotations.CalledByNative;
@@ -304,16 +301,7 @@ public abstract class AppHooks {
import org.chromium.chrome.browser.banners.AppDetailsDelegate;
@@ -325,16 +322,7 @@ public abstract class AppHooks {
* same as {@link GoogleApiAvailability#isGooglePlayServicesAvailable()}.
*/
public int isGoogleApiAvailableWithMinApkVersion(int minApkVersion) {
@ -499,7 +509,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/gcore/GoogleApi
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/UpdateStatusProvider.java b/chrome/android/java/src/org/chromium/chrome/browser/omaha/UpdateStatusProvider.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/omaha/UpdateStatusProvider.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/omaha/UpdateStatusProvider.java
@@ -21,8 +21,6 @@ import androidx.annotation.NonNull;
@@ -19,8 +19,6 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
@ -508,7 +518,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/UpdateSta
import org.chromium.base.ActivityState;
import org.chromium.base.ApplicationStatus;
import org.chromium.base.ApplicationStatus.ActivityStateListener;
@@ -465,13 +463,7 @@ public class UpdateStatusProvider implements ActivityStateListener {
@@ -456,13 +454,7 @@ public class UpdateStatusProvider implements ActivityStateListener {
}
private boolean isGooglePlayStoreAvailable(Context context) {
@ -522,20 +532,11 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/UpdateSta
+ return false;
}
@TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR2)
private long getSize(StatFs statFs) {
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/PasswordManagerLauncher.java b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/PasswordManagerLauncher.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/PasswordManagerLauncher.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/PasswordManagerLauncher.java
@@ -6,8 +6,6 @@ package org.chromium.chrome.browser.password_manager;
import android.app.Activity;
-import com.google.android.gms.common.ConnectionResult;
-
import org.chromium.base.annotations.CalledByNative;
import org.chromium.base.metrics.RecordHistogram;
import org.chromium.chrome.browser.AppHooks;
@@ -89,20 +87,6 @@ public class PasswordManagerLauncher {
@@ -93,22 +93,6 @@ public class PasswordManagerLauncher {
}
private static boolean tryShowingTheGooglePasswordManager(Activity activity) {
@ -546,7 +547,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage
- int minGooglePlayServicesVersion = ChromeFeatureList.getFieldTrialParamByFeatureAsInt(
- GOOGLE_ACCOUNT_PWM_UI, MIN_GOOGLE_PLAY_SERVICES_VERSION_PARAM,
- DEFAULT_MIN_GOOGLE_PLAY_SERVICES_APK_VERSION);
- if (AppHooks.get().isGoogleApiAvailableWithMinApkVersion(minGooglePlayServicesVersion)
-
- if (GoogleApiAvailability.getInstance().isGooglePlayServicesAvailable(
- ContextUtils.getApplicationContext(), minGooglePlayServicesVersion)
- != ConnectionResult.SUCCESS) {
- return false;
- }
@ -560,7 +563,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage
diff --git a/chrome/test/android/BUILD.gn b/chrome/test/android/BUILD.gn
--- a/chrome/test/android/BUILD.gn
+++ b/chrome/test/android/BUILD.gn
@@ -239,8 +239,6 @@ android_library("chrome_java_test_support") {
@@ -249,8 +249,6 @@ android_library("chrome_java_test_support") {
"javatests/src/org/chromium/chrome/test/util/browser/webapps/WebappTestPage.java",
]
deps = [
@ -572,7 +575,7 @@ diff --git a/chrome/test/android/BUILD.gn b/chrome/test/android/BUILD.gn
diff --git a/components/background_task_scheduler/BUILD.gn b/components/background_task_scheduler/BUILD.gn
--- a/components/background_task_scheduler/BUILD.gn
+++ b/components/background_task_scheduler/BUILD.gn
@@ -119,10 +119,6 @@ if (is_android) {
@@ -120,10 +120,6 @@ if (is_android) {
deps = [
":background_task_scheduler_task_ids_java",
@ -586,7 +589,7 @@ diff --git a/components/background_task_scheduler/BUILD.gn b/components/backgrou
diff --git a/components/background_task_scheduler/internal/BUILD.gn b/components/background_task_scheduler/internal/BUILD.gn
--- a/components/background_task_scheduler/internal/BUILD.gn
+++ b/components/background_task_scheduler/internal/BUILD.gn
@@ -26,9 +26,6 @@ if (is_android) {
@@ -25,9 +25,6 @@ if (is_android) {
deps = [
":proto_java",
@ -596,7 +599,7 @@ diff --git a/components/background_task_scheduler/internal/BUILD.gn b/components
"//base:base_java",
"//components/background_task_scheduler:background_task_scheduler_task_ids_java",
"//components/background_task_scheduler:public_java",
@@ -96,9 +93,6 @@ if (is_android) {
@@ -95,9 +92,6 @@ if (is_android) {
deps = [
":internal_java",
@ -654,7 +657,7 @@ diff --git a/content/public/android/BUILD.gn b/content/public/android/BUILD.gn
diff --git a/content/test/BUILD.gn b/content/test/BUILD.gn
--- a/content/test/BUILD.gn
+++ b/content/test/BUILD.gn
@@ -2515,9 +2515,6 @@ if (is_android) {
@@ -2535,9 +2535,6 @@ if (is_android) {
testonly = true
sources = content_java_sources_needing_jni
deps = [
@ -667,7 +670,7 @@ diff --git a/content/test/BUILD.gn b/content/test/BUILD.gn
diff --git a/device/BUILD.gn b/device/BUILD.gn
--- a/device/BUILD.gn
+++ b/device/BUILD.gn
@@ -393,8 +393,6 @@ if (is_android) {
@@ -394,8 +394,6 @@ if (is_android) {
junit_binary("device_junit_tests") {
sources = [ "gamepad/android/junit/src/org/chromium/device/gamepad/GamepadMappingsTest.java" ]
deps = [
@ -679,7 +682,7 @@ diff --git a/device/BUILD.gn b/device/BUILD.gn
diff --git a/remoting/android/client_java_tmpl.gni b/remoting/android/client_java_tmpl.gni
--- a/remoting/android/client_java_tmpl.gni
+++ b/remoting/android/client_java_tmpl.gni
@@ -102,9 +102,6 @@ template("remoting_android_client_java_tmpl") {
@@ -104,9 +104,6 @@ template("remoting_android_client_java_tmpl") {
if (defined(invoker.play_services_package)) {
deps += [
@ -728,7 +731,7 @@ diff --git a/services/shape_detection/BUILD.gn b/services/shape_detection/BUILD.
diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD.gn
--- a/third_party/android_deps/BUILD.gn
+++ b/third_party/android_deps/BUILD.gn
@@ -995,37 +995,6 @@ java_prebuilt("com_android_tools_build_jetifier_jetifier_processor_java") {
@@ -1137,37 +1137,6 @@ java_prebuilt("com_android_tools_build_jetifier_jetifier_processor_java") {
]
}
@ -766,7 +769,7 @@ diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD.
# This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
android_aar_prebuilt("google_play_services_gcm_java") {
aar_path = "libs/com_google_android_gms_play_services_gcm/play-services-gcm-17.0.0.aar"
@@ -1044,16 +1013,6 @@ android_aar_prebuilt("google_play_services_gcm_java") {
@@ -1186,16 +1155,6 @@ android_aar_prebuilt("google_play_services_gcm_java") {
strip_drawables = true
}
@ -783,17 +786,6 @@ diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD.
# This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
android_aar_prebuilt("com_google_android_material_material_java") {
aar_path =
diff --git a/third_party/cacheinvalidation/BUILD.gn b/third_party/cacheinvalidation/BUILD.gn
--- a/third_party/cacheinvalidation/BUILD.gn
+++ b/third_party/cacheinvalidation/BUILD.gn
@@ -133,7 +133,6 @@ if (is_android) {
jacoco_never_instrument = true
deps = [
":cacheinvalidation_proto_java",
- "$google_play_services_package:google_play_services_tasks_java",
"//base:base_java",
"//third_party/android_protobuf:protobuf_nano_javalib",
]
--
2.17.1

View file

@ -3,11 +3,8 @@ Date: Sat, 2 Nov 2019 09:29:52 +0100
Subject: Remove dependency on com.google.android.gcm
---
third_party/android_sdk/BUILD.gn | 3 --
.../client/android2/AndroidManifest.xml | 35 -------------------
.../AndroidMessageReceiverService.java | 17 ---------
.../channel/AndroidMessageSenderService.java | 3 +-
4 files changed, 1 insertion(+), 57 deletions(-)
third_party/android_sdk/BUILD.gn | 3 ---
1 file changed, 3 deletions(-)
diff --git a/third_party/android_sdk/BUILD.gn b/third_party/android_sdk/BUILD.gn
--- a/third_party/android_sdk/BUILD.gn
@ -20,113 +17,6 @@ diff --git a/third_party/android_sdk/BUILD.gn b/third_party/android_sdk/BUILD.gn
- jar_path = "//third_party/android_sdk/public/extras/google/gcm/gcm-client/dist/gcm.jar"
- }
}
diff --git a/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/external/client/android2/AndroidManifest.xml b/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/external/client/android2/AndroidManifest.xml
--- a/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/external/client/android2/AndroidManifest.xml
+++ b/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/external/client/android2/AndroidManifest.xml
@@ -4,10 +4,6 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.google.ipc.invalidation.client.android2">
- <!-- App receives GCM messages. -->
- <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
- <!-- GCM connects to Google Services. -->
- <uses-permission android:name="android.permission.INTERNET" />
<!-- Keeps the processor from sleeping when a message is received. -->
<uses-permission android:name="android.permission.WAKE_LOCK" />
@@ -16,40 +12,9 @@
<service android:exported="false"
android:name="com.google.ipc.invalidation.ticl.android2.TiclService"/>
- <!-- Ticl sender. -->
- <service android:exported="false"
- android:name="com.google.ipc.invalidation.ticl.android2.channel.AndroidMessageSenderService"/>
-
<!-- Receiver for scheduler alarms. -->
<receiver android:exported="false"
android:name="com.google.ipc.invalidation.ticl.android2.AndroidInternalScheduler$AlarmReceiver"/>
- <!-- GCM Broadcast Receiver -->
- <receiver android:exported="true"
- android:name="com.google.ipc.invalidation.external.client.contrib.MultiplexingGcmListener$GCMReceiver"
- android:permission="com.google.android.c2dm.permission.SEND">
- <intent-filter>
- <action android:name="com.google.android.c2dm.intent.RECEIVE" />
- <action android:name="com.google.android.c2dm.intent.REGISTRATION" />
- <category android:name="com.google.ipc.invalidation.ticl.android2" />
- </intent-filter>
- </receiver>
-
- <!-- GCM multiplexer -->
- <service android:exported="false"
- android:name="com.google.ipc.invalidation.external.client.contrib.MultiplexingGcmListener">
- <meta-data android:name="sender_ids" android:value="ipc.invalidation@gmail.com"/>
- </service>
-
- <!-- Invalidation service multiplexed GCM receiver -->
- <service android:exported="false"
- android:name="com.google.ipc.invalidation.ticl.android2.channel.AndroidMessageReceiverService"
- android:enabled="true"/>
- <receiver android:exported="false"
- android:name="com.google.ipc.invalidation.ticl.android2.channel.AndroidMessageReceiverService$Receiver">
- <intent-filter>
- <action android:name="com.google.ipc.invalidation.gcmmplex.EVENT" />
- </intent-filter>
- </receiver>
</application>
</manifest>
diff --git a/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidMessageReceiverService.java b/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidMessageReceiverService.java
--- a/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidMessageReceiverService.java
+++ b/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidMessageReceiverService.java
@@ -15,7 +15,6 @@
*/
package com.google.ipc.invalidation.ticl.android2.channel;
-import com.google.android.gcm.GCMRegistrar;
import com.google.ipc.invalidation.external.client.SystemResources.Logger;
import com.google.ipc.invalidation.external.client.android.service.AndroidLogger;
import com.google.ipc.invalidation.external.client.contrib.MultiplexingGcmListener;
@@ -126,20 +125,4 @@ public class AndroidMessageReceiverService extends MultiplexingGcmListener.Abstr
// now, there is nothing to do.
}
- /**
- * Initializes GCM as a convenience method for tests. In production, applications should handle
- * this.
- */
- public static void initializeGcmForTest(Context context, Logger logger, String senderId) {
- // Initialize GCM.
- GCMRegistrar.checkDevice(context);
- GCMRegistrar.checkManifest(context);
- String regId = GCMRegistrar.getRegistrationId(context);
- if (regId.isEmpty()) {
- logger.info("Not registered with GCM; registering");
- GCMRegistrar.register(context, senderId);
- } else {
- logger.fine("Already registered with GCM: %s", regId);
- }
- }
}
diff --git a/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidMessageSenderService.java b/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidMessageSenderService.java
--- a/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidMessageSenderService.java
+++ b/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidMessageSenderService.java
@@ -15,7 +15,6 @@
*/
package com.google.ipc.invalidation.ticl.android2.channel;
-import com.google.android.gcm.GCMRegistrar;
import com.google.ipc.invalidation.common.GcmSharedConstants;
import com.google.ipc.invalidation.external.client.SystemResources.Logger;
import com.google.ipc.invalidation.external.client.android.service.AndroidLogger;
@@ -395,7 +394,7 @@ public class AndroidMessageSenderService extends IntentService {
// No client key when using old style registration id.
clientKey = "";
try {
- registrationId = GCMRegistrar.getRegistrationId(context);
+ registrationId = null;
} catch (RuntimeException exception) {
// GCMRegistrar#getRegistrationId occasionally throws a runtime exception. Catching the
// exception rather than crashing.
--
2.17.1

View file

@ -14,7 +14,7 @@ Subject: Remove dependency on com.google.android.gms.auth
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
--- a/chrome/android/BUILD.gn
+++ b/chrome/android/BUILD.gn
@@ -272,7 +272,6 @@ android_library("chrome_java") {
@@ -263,7 +263,6 @@ android_library("chrome_java") {
":partner_location_descriptor_proto_java",
":update_proto_java",
":usage_stats_proto_java",
@ -93,7 +93,7 @@ diff --git a/content/public/android/BUILD.gn b/content/public/android/BUILD.gn
diff --git a/content/test/BUILD.gn b/content/test/BUILD.gn
--- a/content/test/BUILD.gn
+++ b/content/test/BUILD.gn
@@ -2515,7 +2515,6 @@ if (is_android) {
@@ -2535,7 +2535,6 @@ if (is_android) {
testonly = true
sources = content_java_sources_needing_jni
deps = [
@ -104,7 +104,7 @@ diff --git a/content/test/BUILD.gn b/content/test/BUILD.gn
diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD.gn
--- a/third_party/android_deps/BUILD.gn
+++ b/third_party/android_deps/BUILD.gn
@@ -996,53 +996,6 @@ java_prebuilt("com_android_tools_build_jetifier_jetifier_processor_java") {
@@ -1138,53 +1138,6 @@ java_prebuilt("com_android_tools_build_jetifier_jetifier_processor_java") {
]
}

View file

@ -22,17 +22,17 @@ Subject: Remove dependency on com.google.android.gms.cast
.../remoting/FlingingControllerAdapter.java | 74 -------------
.../caf/remoting/RemotingMediaSource.java | 8 +-
.../remoting/RemotingSessionController.java | 26 -----
chrome/android/java/AndroidManifest.xml | 28 -----
chrome/android/java/AndroidManifest.xml | 27 -----
.../settings/PasswordSettings.java | 14 ---
.../modules/chrome_feature_modules.gni | 3 -
chrome/test/android/cast_emulator/BUILD.gn | 1 -
third_party/android_deps/BUILD.gn | 39 -------
24 files changed, 29 insertions(+), 814 deletions(-)
24 files changed, 29 insertions(+), 813 deletions(-)
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
--- a/chrome/android/BUILD.gn
+++ b/chrome/android/BUILD.gn
@@ -274,14 +274,11 @@ android_library("chrome_java") {
@@ -265,14 +265,11 @@ android_library("chrome_java") {
":usage_stats_proto_java",
"$google_play_services_package:google_play_services_base_java",
"$google_play_services_package:google_play_services_basement_java",
@ -47,7 +47,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
"//chrome/android/modules/image_editor/provider:java",
"//chrome/android/modules/image_editor/public:java",
"//chrome/android/modules/stack_unwinder/provider:java",
@@ -722,8 +719,6 @@ junit_binary("chrome_junit_tests") {
@@ -744,8 +741,6 @@ junit_binary("chrome_junit_tests") {
":partner_location_descriptor_proto_java",
"$google_play_services_package:google_play_services_base_java",
"$google_play_services_package:google_play_services_basement_java",
@ -56,7 +56,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
"//base:base_java",
"//base:base_java_test_support",
"//base:base_junit_test_support",
@@ -902,8 +897,6 @@ android_library("chrome_test_java") {
@@ -935,8 +930,6 @@ android_library("chrome_test_java") {
":partner_location_descriptor_proto_java",
"$google_play_services_package:google_play_services_base_java",
"$google_play_services_package:google_play_services_basement_java",
@ -68,7 +68,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
diff --git a/chrome/android/features/media_router/BUILD.gn b/chrome/android/features/media_router/BUILD.gn
--- a/chrome/android/features/media_router/BUILD.gn
+++ b/chrome/android/features/media_router/BUILD.gn
@@ -12,8 +12,6 @@ android_library("java") {
@@ -13,8 +13,6 @@ android_library("java") {
":java_resources",
"$google_play_services_package:google_play_services_base_java",
"$google_play_services_package:google_play_services_basement_java",
@ -77,7 +77,7 @@ diff --git a/chrome/android/features/media_router/BUILD.gn b/chrome/android/feat
"//base:base_java",
"//base:jni_java",
"//chrome/android:chrome_java",
@@ -123,9 +121,6 @@ junit_binary("media_router_junit_tests") {
@@ -130,9 +128,6 @@ junit_binary("media_router_junit_tests") {
deps = [
":java",
@ -656,7 +656,7 @@ diff --git a/chrome/android/features/media_router/java/src/org/chromium/chrome/b
- this, CastSession.class);
-
mPendingCreateRouteRequestInfo = new CreateRouteRequestInfo(source, sink, presentationId,
origin, tabId, isIncognito, nativeRequestId, targetRouteInfo);
origin, tabId, isOffTheRecord, nativeRequestId, targetRouteInfo);
@@ -212,100 +205,6 @@ public abstract class CafBaseMediaRouteProvider
removeRoute(routeId, /* error= */ null);
@ -1452,7 +1452,7 @@ diff --git a/chrome/android/features/media_router/java/src/org/chromium/chrome/b
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
@@ -164,12 +164,6 @@ by a child template that "extends" this file.
@@ -165,12 +165,6 @@ by a child template that "extends" this file.
<meta-data android:name="com.google.ar.core" android:value="optional" />
{% endif %}
@ -1465,7 +1465,7 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro
<!-- Note: All activities directly or indirectly derived from ChromeActivity
must specify android:hardwareAccelerated="false".
@@ -672,16 +666,6 @@ by a child template that "extends" this file.
@@ -683,16 +677,6 @@ by a child template that "extends" this file.
</intent-filter>
</activity>
@ -1482,11 +1482,10 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro
<!-- This activity is used to restart the main Chrome process. Should never be exported. -->
<activity android:name="org.chromium.chrome.browser.BrowserRestartActivity"
android:launchMode="singleInstance"
@@ -1094,18 +1078,6 @@ by a child template that "extends" this file.
{% endif %}
@@ -1107,17 +1091,6 @@ by a child template that "extends" this file.
{% block extra_application_definitions %}
-
- <!-- Media route controllers to use for remote playback (cast).
- This is here, rather than in code, since it varies between upstream and downstream,
- yet we need this list of classes in the notification service, which belongs upstream
@ -1498,21 +1497,21 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro
- <meta-data android:name="org.chromium.content.browser.REMOTE_MEDIA_PLAYERS"
- android:value="org.chromium.chrome.browser.media.remote.DefaultMediaRouteController"/>
-
{% endblock %}
{% block extra_application_definitions_for_test %}
{% endblock %}
<!-- Downloads Google Sans from GMS Core -->
<meta-data android:name="preloaded_fonts"
android:resource="@array/preloaded_google_sans_fonts" />
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java
@@ -35,7 +35,6 @@ import org.chromium.chrome.browser.profiles.Profile;
@@ -42,7 +42,6 @@ import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.settings.ChromeManagedPreferenceDelegate;
import org.chromium.chrome.browser.settings.SettingsLauncher;
import org.chromium.chrome.browser.settings.SettingsLauncherImpl;
-import org.chromium.chrome.modules.cablev2_authenticator.CableAuthenticatorModuleProvider;
-import org.chromium.chrome.browser.webauthn.CableAuthenticatorModuleProvider;
import org.chromium.components.browser_ui.settings.ChromeBaseCheckBoxPreference;
import org.chromium.components.browser_ui.settings.ChromeBasePreference;
import org.chromium.components.browser_ui.settings.ChromeSwitchPreference;
@@ -509,19 +508,6 @@ public class PasswordSettings
@@ -558,19 +557,6 @@ public class PasswordSettings
}
private void displaySecurityKeyLink() {
@ -1566,7 +1565,7 @@ diff --git a/chrome/test/android/cast_emulator/BUILD.gn b/chrome/test/android/ca
diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD.gn
--- a/third_party/android_deps/BUILD.gn
+++ b/third_party/android_deps/BUILD.gn
@@ -1026,45 +1026,6 @@ android_aar_prebuilt("google_play_services_basement_java") {
@@ -1168,45 +1168,6 @@ android_aar_prebuilt("google_play_services_basement_java") {
input_jars_paths = [ "$android_sdk/optional/org.apache.http.legacy.jar" ]
}

View file

@ -5,26 +5,24 @@ Subject: Remove dependency on com.google.android.gms.gcm
It also disalbes Snippets, auto-update of offline pages and launching browser from background service.
The snippets are already disabled in native codes, this will disable it on Java level.
---
chrome/android/BUILD.gn | 3 -
.../browser/ChromeBackgroundService.java | 4 -
.../ntp/snippets/SnippetsLauncher.java | 2 +-
.../gcm/ChromeGcmListenerService.java | 58 +-----------
components/background_task_scheduler/BUILD.gn | 1 -
.../internal/BUILD.gn | 2 -
.../BackgroundTaskGcmTaskService.java | 78 +---------------
...ackgroundTaskSchedulerFactoryInternal.java | 6 +-
...kgroundTaskSchedulerGcmNetworkManager.java | 14 +--
third_party/cacheinvalidation/BUILD.gn | 1 -
.../android2/AndroidManifestUpdatedGcm.xml | 20 -----
.../channel/AndroidGcmController.java | 42 +--------
.../AndroidInstanceIDListenerService.java | 13 +--
.../channel/GcmRegistrationTaskService.java | 89 +------------------
14 files changed, 11 insertions(+), 322 deletions(-)
chrome/android/BUILD.gn | 3 -
.../browser/ChromeBackgroundService.java | 4 -
.../ntp/snippets/SnippetsLauncher.java | 2 +-
.../gcm/ChromeGcmListenerService.java | 220 ------------------
components/background_task_scheduler/BUILD.gn | 1 -
.../internal/BUILD.gn | 3 -
.../BackgroundTaskGcmTaskService.java | 160 -------------
...ackgroundTaskSchedulerFactoryInternal.java | 6 +-
...kgroundTaskSchedulerGcmNetworkManager.java | 55 -----
9 files changed, 2 insertions(+), 452 deletions(-)
delete mode 100644 chrome/android/java/src/org/chromium/chrome/browser/services/gcm/ChromeGcmListenerService.java
delete mode 100644 components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskGcmTaskService.java
delete mode 100644 components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskSchedulerGcmNetworkManager.java
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
--- a/chrome/android/BUILD.gn
+++ b/chrome/android/BUILD.gn
@@ -277,7 +277,6 @@ android_library("chrome_java") {
@@ -268,7 +268,6 @@ android_library("chrome_java") {
"$google_play_services_package:google_play_services_cast_framework_java",
"$google_play_services_package:google_play_services_cast_java",
"$google_play_services_package:google_play_services_fido_java",
@ -32,7 +30,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
"$google_play_services_package:google_play_services_iid_java",
"$google_play_services_package:google_play_services_tasks_java",
"//base:base_java",
@@ -910,7 +909,6 @@ android_library("chrome_test_java") {
@@ -943,7 +942,6 @@ android_library("chrome_test_java") {
"$google_play_services_package:google_play_services_cast_framework_java",
"$google_play_services_package:google_play_services_cast_java",
"$google_play_services_package:google_play_services_fido_java",
@ -40,7 +38,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
"$google_play_services_package:google_play_services_iid_java",
"$google_play_services_package:google_play_services_tasks_java",
"//base:base_java",
@@ -1808,7 +1806,6 @@ android_library("browser_java_test_support") {
@@ -1870,7 +1868,6 @@ android_library("browser_java_test_support") {
]
deps = [
":chrome_java",
@ -75,24 +73,47 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/Sn
/**
* Create a SnippetsLauncher object, which is owned by C++.
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/services/gcm/ChromeGcmListenerService.java b/chrome/android/java/src/org/chromium/chrome/browser/services/gcm/ChromeGcmListenerService.java
deleted file mode 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/services/gcm/ChromeGcmListenerService.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/services/gcm/ChromeGcmListenerService.java
@@ -10,7 +10,6 @@ import android.os.Build;
import android.os.Bundle;
import android.text.TextUtils;
+++ /dev/null
@@ -1,220 +0,0 @@
-// Copyright 2015 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package org.chromium.chrome.browser.services.gcm;
-
-import android.content.Context;
-import android.content.Intent;
-import android.os.Build;
-import android.os.Bundle;
-import android.text.TextUtils;
-
-import com.google.android.gms.gcm.GcmListenerService;
import com.google.ipc.invalidation.ticl.android2.channel.AndroidGcmController;
import org.chromium.base.ContextUtils;
@@ -33,62 +32,9 @@ import org.chromium.content_public.browser.UiThreadTaskTraits;
/**
* Receives Downstream messages and status of upstream messages from GCM.
*/
-
-import org.chromium.base.ContextUtils;
-import org.chromium.base.Log;
-import org.chromium.base.ThreadUtils;
-import org.chromium.base.task.PostTask;
-import org.chromium.chrome.browser.DeviceConditions;
-import org.chromium.chrome.browser.init.ChromeBrowserInitializer;
-import org.chromium.chrome.browser.init.ProcessInitializationHandler;
-import org.chromium.components.background_task_scheduler.BackgroundTaskSchedulerFactory;
-import org.chromium.components.background_task_scheduler.TaskIds;
-import org.chromium.components.background_task_scheduler.TaskInfo;
-import org.chromium.components.gcm_driver.GCMDriver;
-import org.chromium.components.gcm_driver.GCMMessage;
-import org.chromium.components.gcm_driver.InstanceIDFlags;
-import org.chromium.components.gcm_driver.LazySubscriptionsManager;
-import org.chromium.components.gcm_driver.SubscriptionFlagManager;
-import org.chromium.content_public.browser.UiThreadTaskTraits;
-
-/**
- * Receives Downstream messages and status of upstream messages from GCM.
- */
-public class ChromeGcmListenerService extends GcmListenerService {
+public class ChromeGcmListenerService {
private static final String TAG = "ChromeGcmListener";
- private static final String TAG = "ChromeGcmListener";
-
- @Override
- public void onCreate() {
- ProcessInitializationHandler.getInstance().initializePreNative();
@ -104,12 +125,6 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/services/gcm/Ch
- boolean hasCollapseKey = !TextUtils.isEmpty(data.getString("collapse_key"));
- GcmUma.recordDataMessageReceived(ContextUtils.getApplicationContext(), hasCollapseKey);
-
- String invalidationSenderId = AndroidGcmController.get(this).getSenderId();
- if (from.equals(invalidationSenderId)) {
- AndroidGcmController.get(this).onMessageReceived(data);
- return;
- }
-
- // Dispatch the message to the GCM Driver for native features.
- PostTask.runOrPostTask(UiThreadTaskTraits.DEFAULT, () -> {
- GCMMessage message = null;
@ -146,22 +161,146 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/services/gcm/Ch
- GcmUma.recordDeletedMessages(ContextUtils.getApplicationContext());
- }
-
/**
* Returns if we deliver the GCMMessage with a background service by calling
* Context#startService. This will only work if Android has put us in a whitelist to allow
@@ -218,7 +164,7 @@ public class ChromeGcmListenerService extends GcmListenerService {
static void dispatchMessageToDriver(GCMMessage message) {
ThreadUtils.assertOnUiThread();
ChromeBrowserInitializer.getInstance().handleSynchronousStartup();
- /**
- * Returns if we deliver the GCMMessage with a background service by calling
- * Context#startService. This will only work if Android has put us in a whitelist to allow
- * background services to be started.
- */
- private static boolean maybeBypassScheduler(GCMMessage message) {
- // Android only puts us on a whitelist for high priority messages.
- if (message.getOriginalPriority() != GCMMessage.Priority.HIGH) {
- return false;
- }
-
- final String subscriptionId = SubscriptionFlagManager.buildSubscriptionUniqueId(
- message.getAppId(), message.getSenderId());
- if (!SubscriptionFlagManager.hasFlags(subscriptionId, InstanceIDFlags.BYPASS_SCHEDULER)) {
- return false;
- }
-
- try {
- Context context = ContextUtils.getApplicationContext();
- Intent intent = new Intent(context, GCMBackgroundService.class);
- intent.putExtras(message.toBundle());
- context.startService(intent);
- return true;
- } catch (IllegalStateException e) {
- // Failed to start service, maybe we're not whitelisted? Fallback to using
- // BackgroundTaskScheduler to start Chrome.
- // TODO(knollr): Add metrics for this.
- Log.e(TAG, "Could not start background service", e);
- return false;
- }
- }
-
- /**
- * Returns if the |message| is sent from a lazy subscription and we persist it to be delivered
- * the next time Chrome is launched into foreground.
- */
- private static boolean maybePersistLazyMessage(GCMMessage message) {
- if (isFullBrowserLoaded()) {
- return false;
- }
-
- final String subscriptionId = LazySubscriptionsManager.buildSubscriptionUniqueId(
- message.getAppId(), message.getSenderId());
-
- boolean isSubscriptionLazy = LazySubscriptionsManager.isSubscriptionLazy(subscriptionId);
- boolean isHighPriority = message.getOriginalPriority() == GCMMessage.Priority.HIGH;
- // TODO(crbug.com/945402): Add metrics for the new high priority message logic.
- boolean shouldPersistMessage = isSubscriptionLazy && !isHighPriority;
- if (shouldPersistMessage) {
- LazySubscriptionsManager.persistMessage(subscriptionId, message);
- }
-
- return shouldPersistMessage;
- }
-
- /**
- * Schedules a background task via Job Scheduler to deliver the |message|. Delivery might get
- * delayed by Android if the device is currently in doze mode.
- */
- private static void scheduleBackgroundTask(GCMMessage message) {
- // TODO(peter): Add UMA for measuring latency introduced by the BackgroundTaskScheduler.
- TaskInfo backgroundTask =
- TaskInfo.createOneOffTask(TaskIds.GCM_BACKGROUND_TASK_JOB_ID, 0 /* immediately */)
- .setExtras(message.toBundle())
- .build();
- BackgroundTaskSchedulerFactory.getScheduler().schedule(
- ContextUtils.getApplicationContext(), backgroundTask);
- }
-
- private static void recordWebPushMetrics(GCMMessage message) {
- Context context = ContextUtils.getApplicationContext();
- boolean inIdleMode = DeviceConditions.isCurrentlyInIdleMode(context);
- boolean isHighPriority = message.getOriginalPriority() == GCMMessage.Priority.HIGH;
-
- @GcmUma.WebPushDeviceState
- int state;
- if (inIdleMode) {
- state = isHighPriority ? GcmUma.WebPushDeviceState.IDLE_HIGH_PRIORITY
- : GcmUma.WebPushDeviceState.IDLE_NOT_HIGH_PRIORITY;
- } else {
- state = isHighPriority ? GcmUma.WebPushDeviceState.NOT_IDLE_HIGH_PRIORITY
- : GcmUma.WebPushDeviceState.NOT_IDLE_NOT_HIGH_PRIORITY;
- }
- GcmUma.recordWebPushReceivedDeviceState(state);
- }
-
- /**
- * If Chrome is backgrounded, messages coming from lazy subscriptions are
- * persisted on disk and replayed next time Chrome is forgrounded. If Chrome is forgrounded or
- * if the message isn't coming from a lazy subscription, this method either schedules |message|
- * to be dispatched through the Job Scheduler, which we use on Android N and beyond, or
- * immediately dispatches the message on other versions of Android. Some subscriptions bypass
- * the Job Scheduler and use Context#startService instead if the |message| has a high priority.
- * Must be called on the UI thread both for the BackgroundTaskScheduler and for dispatching the
- * |message| to the GCMDriver.
- */
- static void scheduleOrDispatchMessageToDriver(GCMMessage message) {
- ThreadUtils.assertOnUiThread();
-
- // GCMMessage#getAppId never returns null.
- if (message.getAppId().startsWith("wp:")) {
- recordWebPushMetrics(message);
- }
-
- // Check if we should only persist the message for now.
- if (maybePersistLazyMessage(message)) {
- return;
- }
-
- // Dispatch message immediately on pre N versions of Android.
- if (Build.VERSION.SDK_INT < Build.VERSION_CODES.N) {
- dispatchMessageToDriver(message);
- return;
- }
-
- // Check if we should bypass the scheduler for high priority messages.
- if (!maybeBypassScheduler(message)) {
- scheduleBackgroundTask(message);
- }
- }
-
- /**
- * To be called when a GCM message is ready to be dispatched. Will initialise the native code
- * of the browser process, and forward the message to the GCM Driver. Must be called on the UI
- * thread.
- */
- static void dispatchMessageToDriver(GCMMessage message) {
- ThreadUtils.assertOnUiThread();
- ChromeBrowserInitializer.getInstance().handleSynchronousStartup();
- GCMDriver.dispatchMessage(message);
+ //GCMDriver.dispatchMessage(message);
}
private static boolean isFullBrowserLoaded() {
- }
-
- private static boolean isFullBrowserLoaded() {
- return ChromeBrowserInitializer.getInstance().isFullBrowserInitialized();
- }
-}
diff --git a/components/background_task_scheduler/BUILD.gn b/components/background_task_scheduler/BUILD.gn
--- a/components/background_task_scheduler/BUILD.gn
+++ b/components/background_task_scheduler/BUILD.gn
@@ -122,7 +122,6 @@ if (is_android) {
@@ -123,7 +123,6 @@ if (is_android) {
"$google_play_services_package:google_play_services_auth_base_java",
"$google_play_services_package:google_play_services_base_java",
"$google_play_services_package:google_play_services_basement_java",
@ -172,7 +311,15 @@ diff --git a/components/background_task_scheduler/BUILD.gn b/components/backgrou
diff --git a/components/background_task_scheduler/internal/BUILD.gn b/components/background_task_scheduler/internal/BUILD.gn
--- a/components/background_task_scheduler/internal/BUILD.gn
+++ b/components/background_task_scheduler/internal/BUILD.gn
@@ -28,7 +28,6 @@ if (is_android) {
@@ -11,7 +11,6 @@ if (is_android) {
android_library("internal_java") {
sources = [
"android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskBroadcastReceiver.java",
- "android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskGcmTaskService.java",
"android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskJobService.java",
"android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskSchedulerAlarmManager.java",
"android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskSchedulerDelegate.java",
@@ -28,7 +27,6 @@ if (is_android) {
":proto_java",
"$google_play_services_package:google_play_services_base_java",
"$google_play_services_package:google_play_services_basement_java",
@ -180,7 +327,7 @@ diff --git a/components/background_task_scheduler/internal/BUILD.gn b/components
"$google_play_services_package:google_play_services_tasks_java",
"//base:base_java",
"//components/background_task_scheduler:background_task_scheduler_task_ids_java",
@@ -99,7 +98,6 @@ if (is_android) {
@@ -99,7 +97,6 @@ if (is_android) {
":internal_java",
"$google_play_services_package:google_play_services_base_java",
"$google_play_services_package:google_play_services_basement_java",
@ -189,27 +336,38 @@ diff --git a/components/background_task_scheduler/internal/BUILD.gn b/components
"//base:base_java",
"//base:base_java_test_support",
diff --git a/components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskGcmTaskService.java b/components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskGcmTaskService.java
deleted file mode 100644
--- a/components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskGcmTaskService.java
+++ b/components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskGcmTaskService.java
@@ -8,10 +8,6 @@ import android.os.Build;
import androidx.annotation.VisibleForTesting;
+++ /dev/null
@@ -1,160 +0,0 @@
-// Copyright 2017 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package org.chromium.components.background_task_scheduler.internal;
-
-import android.os.Build;
-
-import androidx.annotation.VisibleForTesting;
-
-import com.google.android.gms.gcm.GcmNetworkManager;
-import com.google.android.gms.gcm.GcmTaskService;
-import com.google.android.gms.gcm.TaskParams;
-
import org.chromium.base.ContextUtils;
import org.chromium.base.Log;
import org.chromium.base.ThreadUtils;
@@ -23,16 +19,9 @@ import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
/** Delegates calls out to various tasks that need to run in the background. */
-import org.chromium.base.ContextUtils;
-import org.chromium.base.Log;
-import org.chromium.base.ThreadUtils;
-import org.chromium.components.background_task_scheduler.BackgroundTask;
-import org.chromium.components.background_task_scheduler.TaskParameters;
-
-import java.util.concurrent.CountDownLatch;
-import java.util.concurrent.TimeUnit;
-import java.util.concurrent.atomic.AtomicBoolean;
-
-/** Delegates calls out to various tasks that need to run in the background. */
-public class BackgroundTaskGcmTaskService extends GcmTaskService {
+public class BackgroundTaskGcmTaskService {
private static final String TAG = "BkgrdTaskGcmTS";
- private static final String TAG = "BkgrdTaskGcmTS";
-
- private BackgroundTaskSchedulerGcmNetworkManager.Clock mClock = System::currentTimeMillis;
-
- @VisibleForTesting
@ -217,13 +375,65 @@ diff --git a/components/background_task_scheduler/internal/android/java/src/org/
- mClock = clock;
- }
-
/** Class that waits for the processing to be done. */
private static class Waiter {
// Wakelock is only held for 3 minutes by default for GcmTaskService.
@@ -92,69 +81,4 @@ public class BackgroundTaskGcmTaskService extends GcmTaskService {
}
}
- /** Class that waits for the processing to be done. */
- private static class Waiter {
- // Wakelock is only held for 3 minutes by default for GcmTaskService.
- private static final long MAX_TIMEOUT_SECONDS = 179;
- private final CountDownLatch mLatch;
- private long mWaiterTimeoutSeconds;
- private boolean mIsRescheduleNeeded;
- private boolean mHasTaskTimedOut;
-
- public Waiter(long waiterTimeoutSeconds) {
- mLatch = new CountDownLatch(1);
- mWaiterTimeoutSeconds = Math.min(waiterTimeoutSeconds, MAX_TIMEOUT_SECONDS);
- }
-
- /** Start waiting for the processing to finish. */
- public void startWaiting() {
- try {
- mHasTaskTimedOut = !mLatch.await(mWaiterTimeoutSeconds, TimeUnit.SECONDS);
- } catch (InterruptedException e) {
- Log.d(TAG, "Waiter interrupted while waiting.");
- }
- }
-
- /** Called to finish waiting. */
- public void onWaitDone(boolean needsRescheduling) {
- mIsRescheduleNeeded = needsRescheduling;
- mLatch.countDown();
- }
-
- /** @return Whether last task timed out. */
- public boolean hasTaskTimedOut() {
- return mHasTaskTimedOut;
- }
-
- /** @return Whether task needs to be rescheduled. */
- public boolean isRescheduleNeeded() {
- return mIsRescheduleNeeded;
- }
- }
-
- private static class TaskFinishedCallbackGcmTaskService
- implements BackgroundTask.TaskFinishedCallback {
- private final Waiter mWaiter;
-
- public TaskFinishedCallbackGcmTaskService(Waiter waiter) {
- mWaiter = waiter;
- }
-
- @Override
- public void taskFinished(final boolean needsReschedule) {
- ThreadUtils.runOnUiThreadBlocking(new Runnable() {
- @Override
- public void run() {
- mWaiter.onWaitDone(needsReschedule);
- }
- });
- }
- }
-
- @Override
- public int onRunTask(TaskParams params) {
- final TaskParameters taskParams =
@ -289,7 +499,7 @@ diff --git a/components/background_task_scheduler/internal/android/java/src/org/
- BackgroundTaskSchedulerFactoryInternal.getScheduler().reschedule(
- ContextUtils.getApplicationContext());
- }
}
-}
diff --git a/components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskSchedulerFactoryInternal.java b/components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskSchedulerFactoryInternal.java
--- a/components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskSchedulerFactoryInternal.java
+++ b/components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskSchedulerFactoryInternal.java
@ -302,26 +512,54 @@ diff --git a/components/background_task_scheduler/internal/android/java/src/org/
- } else {
- return new BackgroundTaskSchedulerGcmNetworkManager();
- }
+ return new BackgroundTaskSchedulerJobService(); /* minSDK is 24 */
+ return new BackgroundTaskSchedulerJobService();
}
/**
diff --git a/components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskSchedulerGcmNetworkManager.java b/components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskSchedulerGcmNetworkManager.java
deleted file mode 100644
--- a/components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskSchedulerGcmNetworkManager.java
+++ b/components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskSchedulerGcmNetworkManager.java
@@ -21,7 +21,7 @@ import java.util.concurrent.TimeUnit;
* An implementation of {@link BackgroundTaskSchedulerDelegate} that uses the Play Services
* {@link GcmNetworkManager} to schedule jobs.
*/
+++ /dev/null
@@ -1,55 +0,0 @@
-// Copyright 2017 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package org.chromium.components.background_task_scheduler.internal;
-
-import android.content.Context;
-import android.os.Bundle;
-
-import androidx.annotation.NonNull;
-import androidx.annotation.VisibleForTesting;
-
-import org.chromium.base.Log;
-import org.chromium.base.ThreadUtils;
-import org.chromium.components.background_task_scheduler.TaskInfo;
-import org.chromium.components.background_task_scheduler.TaskParameters;
-
-import java.util.concurrent.TimeUnit;
-
-/**
- * An implementation of {@link BackgroundTaskSchedulerDelegate} that uses the Play Services
- * {@link GcmNetworkManager} to schedule jobs.
- */
-class BackgroundTaskSchedulerGcmNetworkManager implements BackgroundTaskSchedulerDelegate {
+class BackgroundTaskSchedulerGcmNetworkManager {
private static final String TAG = "BkgrdTaskSchedGcmNM";
/** Delta time for expiration checks, after the end time. */
@@ -37,18 +37,6 @@ class BackgroundTaskSchedulerGcmNetworkManager implements BackgroundTaskSchedule
sClock = clock;
}
- private static final String TAG = "BkgrdTaskSchedGcmNM";
-
- /** Delta time for expiration checks, after the end time. */
- static final long DEADLINE_DELTA_MS = 1000;
-
- /** Clock to use so we can mock time in tests. */
- public interface Clock { long currentTimeMillis(); }
-
- private static Clock sClock = System::currentTimeMillis;
-
- @VisibleForTesting
- static void setClockForTesting(Clock clock) {
- sClock = clock;
- }
-
- @Override
- public boolean schedule(Context context, @NonNull TaskInfo taskInfo) {
- ThreadUtils.assertOnUiThread();
@ -334,268 +572,10 @@ diff --git a/components/background_task_scheduler/internal/android/java/src/org/
- ThreadUtils.assertOnUiThread();
- }
-
private static String taskIdToTaskTag(int taskId) {
return Integer.toString(taskId);
}
diff --git a/third_party/cacheinvalidation/BUILD.gn b/third_party/cacheinvalidation/BUILD.gn
--- a/third_party/cacheinvalidation/BUILD.gn
+++ b/third_party/cacheinvalidation/BUILD.gn
@@ -133,7 +133,6 @@ if (is_android) {
jacoco_never_instrument = true
deps = [
":cacheinvalidation_proto_java",
- "$google_play_services_package:google_play_services_gcm_java",
"$google_play_services_package:google_play_services_iid_java",
"$google_play_services_package:google_play_services_tasks_java",
"//base:base_java",
diff --git a/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/external/client/android2/AndroidManifestUpdatedGcm.xml b/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/external/client/android2/AndroidManifestUpdatedGcm.xml
--- a/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/external/client/android2/AndroidManifestUpdatedGcm.xml
+++ b/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/external/client/android2/AndroidManifestUpdatedGcm.xml
@@ -24,17 +24,6 @@
<receiver android:exported="false"
android:name="com.google.ipc.invalidation.ticl2.android2.AndroidInternalScheduler$AlarmReceiver"/>
- <!-- GCM Broadcast Receiver -->
- <receiver android:exported="true"
- android:name="com.google.android.gms.gcm.GcmReceiver"
- android:permission="com.google.android.c2dm.permission.SEND">
- <intent-filter>
- <action android:name="com.google.android.c2dm.intent.RECEIVE" />
- <action android:name="com.google.android.c2dm.intent.REGISTRATION" />
- <category android:name="com.google.ipc.invalidation.client2.android2"/>
- </intent-filter>
- </receiver>
-
<!-- InstanceID Listener Service -->
<service android:exported="false"
android:name="com.google.ipc.invalidation.ticl2.android2.channel.AndroidInstanceIDListenerService">
@@ -42,14 +31,5 @@
<action android:name="com.google.android.gms.iid.InstanceID"/>
</intent-filter>
</service>
-
- <!-- GcmTaskService for registration -->
- <service android:name="com.google.ipc.invalidation.ticl2.android2.channel.GcmRegistrationTaskService"
- android:exported="true"
- android:permission="com.google.android.gms.permission.BIND_NETWORK_TASK_SERVICE" >
- <intent-filter>
- <action android:name="com.google.android.gms.gcm.ACTION_TASK_READY" />
- </intent-filter>
- </service>
</application>
</manifest>
diff --git a/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidGcmController.java b/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidGcmController.java
--- a/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidGcmController.java
+++ b/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidGcmController.java
@@ -15,8 +15,6 @@
*/
package com.google.ipc.invalidation.ticl.android2.channel;
-import com.google.android.gms.gcm.GcmNetworkManager;
-import com.google.android.gms.gcm.OneoffTask;
import com.google.ipc.invalidation.common.GcmSharedConstants;
import com.google.ipc.invalidation.external.client.SystemResources.Logger;
import com.google.ipc.invalidation.external.client.android.service.AndroidLogger;
@@ -50,7 +48,7 @@ public class AndroidGcmController {
private static AndroidGcmController androidGcmController;
- private GcmNetworkManager gcmNetworkManager;
+// private GcmNetworkManager gcmNetworkManager;
private Context context;
@@ -64,32 +62,12 @@ public class AndroidGcmController {
public static AndroidGcmController get(Context context) {
synchronized (lock) {
if (androidGcmController == null) {
- androidGcmController =
- new AndroidGcmController(context, GcmNetworkManager.getInstance(context));
+ androidGcmController = null;
}
}
return androidGcmController;
}
- /**
- * Override AndroidGcmController with a custom GcmNetworkManager in tests. This overrides the
- * existing instance of AndroidGcmController if any.
- *
- * @param context the application context.
- * @param gcmNetworkManager the custom GcmNetworkManager to use.
- */
- public static void overrideAndroidGcmControllerForTests(
- Context context, GcmNetworkManager gcmNetworkManager) {
- synchronized (lock) {
- androidGcmController = new AndroidGcmController(context, gcmNetworkManager);
- private static String taskIdToTaskTag(int taskId) {
- return Integer.toString(taskId);
- }
- }
-
- private AndroidGcmController(Context context, GcmNetworkManager gcmNetworkManager) {
- this.context = context;
- this.gcmNetworkManager = gcmNetworkManager;
- }
-
/**
* Returns true if no registration token is stored or the current application version is higher
* than the version for the token stored.
@@ -142,21 +120,7 @@ public class AndroidGcmController {
return;
}
- OneoffTask registrationTask =
- new OneoffTask.Builder()
- .setExecutionWindow(0, 1)
- .setTag(AndroidChannelConstants.GCM_REGISTRATION_TASK_SERVICE_TAG)
- .setService(GcmRegistrationTaskService.class)
- .build();
-
- try {
- gcmNetworkManager.schedule(registrationTask);
- } catch (IllegalArgumentException exception) {
- // Scheduling the service can throw an exception due to a framework error on Android when
- // the the look up for the GCMTaskService being scheduled to be run fails.
- // See crbug/548314.
- logger.warning("Failed to schedule GCM registration task. Exception: %s", exception);
- }
+ logger.warning("Failed to schedule GCM registration task.");
}
/**
diff --git a/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidInstanceIDListenerService.java b/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidInstanceIDListenerService.java
--- a/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidInstanceIDListenerService.java
+++ b/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidInstanceIDListenerService.java
@@ -15,7 +15,6 @@
*/
package com.google.ipc.invalidation.ticl.android2.channel;
-import com.google.android.gms.iid.InstanceIDListenerService;
import com.google.ipc.invalidation.external.client.SystemResources.Logger;
import com.google.ipc.invalidation.external.client.android.service.AndroidLogger;
@@ -23,16 +22,6 @@ import com.google.ipc.invalidation.external.client.android.service.AndroidLogger
* Implementation of {@link InstanceIDListenerService} to receive notifications from GCM to
* update the registration token.
*/
-public class AndroidInstanceIDListenerService extends InstanceIDListenerService {
+public class AndroidInstanceIDListenerService {
private static final Logger logger = AndroidLogger.forTag("InstanceIDListener");
-
- /**
- * Called when the token needs to updated. {@link AndroidGcmController#fetchToken} clears the
- * current token and schedules a task to fetch a new token.
- */
- @Override
- public void onTokenRefresh() {
- logger.info("Received token refresh request");
- AndroidGcmController.get(this).fetchToken();
- }
}
diff --git a/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/GcmRegistrationTaskService.java b/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/GcmRegistrationTaskService.java
--- a/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/GcmRegistrationTaskService.java
+++ b/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/GcmRegistrationTaskService.java
@@ -15,11 +15,6 @@
*/
package com.google.ipc.invalidation.ticl.android2.channel;
-import com.google.android.gms.gcm.GcmNetworkManager;
-import com.google.android.gms.gcm.GcmTaskService;
-import com.google.android.gms.gcm.GoogleCloudMessaging;
-import com.google.android.gms.gcm.TaskParams;
-import com.google.android.gms.iid.InstanceID;
import com.google.ipc.invalidation.common.GcmSharedConstants;
import com.google.ipc.invalidation.external.client.SystemResources.Logger;
import com.google.ipc.invalidation.external.client.android.service.AndroidLogger;
@@ -42,88 +37,6 @@ import java.io.IOException;
* failure to fetch the token, the task is rescheduled using the GcmNetworkManager which uses
* exponential back-offs to control when the task is executed.
*/
-public class GcmRegistrationTaskService extends GcmTaskService {
+public class GcmRegistrationTaskService {
private static final Logger logger = AndroidLogger.forTag("RegistrationTaskService");
-
- public InstanceID getInstanceID(Context context) {
- return InstanceID.getInstance(context);
- }
-
- /**
- * Called when the task is ready to be executed. Registers with GCM using
- * {@link InstanceID#getToken} and stores the registration token.
- *
- * <p>Returns {@link GcmNetworkManager#RESULT_SUCCESS} when the token is successfully retrieved.
- * On failure {@link GcmNetworkManager#RESULT_RESCHEDULE} is used which reschedules the service
- * to be executed again using exponential back-off.
- */
- @Override
- public int onRunTask(TaskParams params) {
- if (!AndroidChannelConstants.GCM_REGISTRATION_TASK_SERVICE_TAG.equals(params.getTag())) {
- logger.warning("Unknown task received with tag: %s", params.getTag());
- return GcmNetworkManager.RESULT_FAILURE;
- }
-
- String senderId = GcmSharedConstants.GCM_UPDATED_SENDER_ID;
- try {
- String token = getInstanceID(this).getToken(
- senderId, GoogleCloudMessaging.INSTANCE_ID_SCOPE, null);
- storeToken(token);
- return GcmNetworkManager.RESULT_SUCCESS;
- } catch (IOException exception) {
- logger.warning("Failed to get token for sender: %s. Exception : %s", senderId, exception);
- return GcmNetworkManager.RESULT_RESCHEDULE;
- } catch (SecurityException exception) {
- // InstanceID#getToken occasionally throws a security exception when trying send the
- // registration intent to GMSCore. Catching the exception here to prevent crashes.
- logger.warning("Security exception when fetching token: %s", exception);
- return GcmNetworkManager.RESULT_RESCHEDULE;
- }
- }
-
- /** Stores the registration token and the current application version in Shared Preferences. */
- private void storeToken(String token) {
- AndroidChannelPreferences.setRegistrationToken(token);
- AndroidChannelPreferences.setAppVersion(
- CommonUtils.getPackageVersion(this, getPackageName()));
- // Send the updated token to the server.
- updateServer();
- }
-
- /** Sends a message to the server to update the GCM registration token. */
- private void updateServer() {
- // Inform the sender service that the registration token has changed. If the sender service
- // had buffered a message because no registration token was previously available, this intent
- // will cause it to send that message.
- Intent sendBuffered = new Intent();
- final String ignoredData = "";
- sendBuffered.putExtra(AndroidChannelConstants.MESSAGE_SENDER_SVC_GCM_REGID_CHANGE, ignoredData);
-
- // Select the sender service to use for upstream message.
- if (AndroidChannelPreferences.getGcmChannelType() == GcmChannelType.GCM_UPSTREAM) {
- String upstreamServiceClass = new AndroidTiclManifest(this).getGcmUpstreamServiceClass();
- if (upstreamServiceClass == null) {
- logger.warning("GcmUpstreamSenderService class not found.");
- return;
- }
- sendBuffered.setClassName(this, upstreamServiceClass);
- } else {
- sendBuffered.setClass(this, AndroidMessageSenderService.class);
- }
- try {
- startService(sendBuffered);
- } catch (IllegalStateException exception) {
- logger.warning("Unable to send buffered message(s): %s", exception);
- }
-
- // Inform the Ticl service that the registration id has changed. This will cause it to send
- // a message to the data center and update the GCM registration id stored at the data center.
- Intent updateServer = ProtocolIntents.InternalDowncalls.newNetworkAddrChangeIntent();
- updateServer.setClassName(this, new AndroidTiclManifest(this).getTiclServiceClass());
- try {
- startService(updateServer);
- } catch (IllegalStateException exception) {
- logger.warning("Unable to inform server about new registration id: %s", exception);
- }
- }
}
-}
--
2.17.1

View file

@ -14,9 +14,9 @@ Subject: Remove dependency on com.google.android.play
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
--- a/chrome/android/BUILD.gn
+++ b/chrome/android/BUILD.gn
@@ -471,7 +471,6 @@ android_library("chrome_java") {
"//third_party/cacheinvalidation:cacheinvalidation_javalib",
"//third_party/cacheinvalidation:cacheinvalidation_proto_java",
@@ -482,7 +482,6 @@ android_library("chrome_java") {
"//third_party/blink/public/mojom:android_mojo_bindings_java",
"//third_party/blink/public/mojom:mojom_platform_java",
"//third_party/gif_player:gif_player_java",
- "//third_party/google_android_play_core:com_google_android_play_core_java",
"//ui/android:ui_java",
@ -36,7 +36,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/Fa
-
import org.chromium.base.ContextUtils;
import org.chromium.base.task.PostTask;
import org.chromium.chrome.browser.ChromeActivity;
import org.chromium.chrome.browser.app.ChromeActivity;
@@ -31,7 +26,7 @@ import java.lang.ref.WeakReference;
* wrapper isn't meant to be used for a full integration test, but simulating all of the possible
* error cases is a bit easier to do here.
@ -471,15 +471,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/Pl
diff --git a/components/module_installer/android/BUILD.gn b/components/module_installer/android/BUILD.gn
--- a/components/module_installer/android/BUILD.gn
+++ b/components/module_installer/android/BUILD.gn
@@ -36,7 +36,6 @@ android_library("module_installer_java") {
"//base:base_java",
@@ -37,7 +37,6 @@ android_library("module_installer_java") {
"//base:jni_java",
"//components/crash/android:java",
"//third_party/android_deps:androidx_annotation_annotation_java",
- "//third_party/google_android_play_core:com_google_android_play_core_java",
]
annotation_processor_deps = [ "//base/android/jni_generator:jni_processor" ]
@@ -59,7 +58,6 @@ junit_binary("module_installer_junit_tests") {
@@ -60,7 +59,6 @@ junit_binary("module_installer_junit_tests") {
"//base:base_java",
"//base:base_java_test_support",
"//base:base_junit_test_support",

View file

@ -16,14 +16,12 @@ Subject: Remove dependency on fido, iid, instantapps, location
services/device/geolocation/BUILD.gn | 1 -
.../geolocation/LocationProviderGmsCore.java | 103 +-----------------
third_party/android_deps/BUILD.gn | 75 -------------
third_party/cacheinvalidation/BUILD.gn | 1 -
.../android2/AndroidManifestUpdatedGcm.xml | 3 -
15 files changed, 15 insertions(+), 305 deletions(-)
13 files changed, 15 insertions(+), 301 deletions(-)
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
--- a/chrome/android/BUILD.gn
+++ b/chrome/android/BUILD.gn
@@ -276,8 +276,6 @@ android_library("chrome_java") {
@@ -267,8 +267,6 @@ android_library("chrome_java") {
"$google_play_services_package:google_play_services_basement_java",
"$google_play_services_package:google_play_services_cast_framework_java",
"$google_play_services_package:google_play_services_cast_java",
@ -32,7 +30,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
"$google_play_services_package:google_play_services_tasks_java",
"//base:base_java",
"//base:jni_java",
@@ -726,7 +724,6 @@ junit_binary("chrome_junit_tests") {
@@ -748,7 +746,6 @@ junit_binary("chrome_junit_tests") {
"$google_play_services_package:google_play_services_basement_java",
"$google_play_services_package:google_play_services_cast_framework_java",
"$google_play_services_package:google_play_services_cast_java",
@ -40,7 +38,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
"//base:base_java",
"//base:base_java_test_support",
"//base:base_junit_test_support",
@@ -907,8 +904,6 @@ android_library("chrome_test_java") {
@@ -940,8 +937,6 @@ android_library("chrome_test_java") {
"$google_play_services_package:google_play_services_basement_java",
"$google_play_services_package:google_play_services_cast_framework_java",
"$google_play_services_package:google_play_services_cast_java",
@ -52,7 +50,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
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
@@ -1755,9 +1755,6 @@ chrome_java_sources = [
@@ -1728,9 +1728,6 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/webapps/addtohomescreen/AddToHomescreenViewDelegate.java",
"java/src/org/chromium/chrome/browser/webauth/AuthenticatorFactory.java",
"java/src/org/chromium/chrome/browser/webauth/AuthenticatorImpl.java",
@ -65,7 +63,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/externalnav/ExternalNavigationDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java
@@ -282,12 +282,8 @@ public class ExternalNavigationDelegateImpl implements ExternalNavigationDelegat
@@ -216,12 +216,8 @@ public class ExternalNavigationDelegateImpl implements ExternalNavigationDelegat
@Override
public void maybeAdjustInstantAppExtras(Intent intent, boolean isIntentToInstantApp) {
@ -251,7 +249,7 @@ diff --git a/components/gcm_driver/instance_id/android/BUILD.gn b/components/gcm
"//base:base_java",
"//base:jni_java",
"//components/gcm_driver/android:gcm_driver_java",
@@ -33,7 +32,6 @@ android_library("instance_id_driver_java") {
@@ -34,7 +33,6 @@ android_library("instance_id_driver_java") {
android_library("instance_id_driver_test_support_java") {
deps = [
":instance_id_driver_java",
@ -347,7 +345,7 @@ diff --git a/components/gcm_driver/instance_id/android/java/src/org/chromium/com
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
@@ -750,7 +750,7 @@ const base::Feature kWebContentsOcclusion {
@@ -782,7 +782,7 @@ const base::Feature kWebContentsOcclusion {
// Controls whether the WebAuthentication API is enabled:
// https://w3c.github.io/webauthn
const base::Feature kWebAuth{"WebAuthentication",
@ -359,7 +357,7 @@ diff --git a/content/public/common/content_features.cc b/content/public/common/c
diff --git a/device/BUILD.gn b/device/BUILD.gn
--- a/device/BUILD.gn
+++ b/device/BUILD.gn
@@ -395,7 +395,6 @@ if (is_android) {
@@ -396,7 +396,6 @@ if (is_android) {
deps = [
"$google_play_services_package:google_play_services_base_java",
"$google_play_services_package:google_play_services_basement_java",
@ -552,7 +550,7 @@ diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD.
":org_robolectric_utils_java",
":org_robolectric_utils_reflector_java",
"//third_party/robolectric:android-all-10-robolectric-5803371_java",
@@ -1066,20 +1065,6 @@ android_aar_prebuilt("google_play_services_cast_framework_java") {
@@ -1208,20 +1207,6 @@ android_aar_prebuilt("google_play_services_cast_framework_java") {
strip_resources = !is_java_debug
}
@ -573,7 +571,7 @@ diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD.
# This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
android_aar_prebuilt("google_play_services_gcm_java") {
aar_path = "libs/com_google_android_gms_play_services_gcm/play-services-gcm-17.0.0.aar"
@@ -1098,52 +1083,6 @@ android_aar_prebuilt("google_play_services_gcm_java") {
@@ -1240,52 +1225,6 @@ android_aar_prebuilt("google_play_services_gcm_java") {
strip_drawables = true
}
@ -626,7 +624,7 @@ diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD.
# This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
android_aar_prebuilt("google_play_services_tasks_java") {
aar_path = "libs/com_google_android_gms_play_services_tasks/play-services-tasks-17.0.0.aar"
@@ -1454,20 +1393,6 @@ java_prebuilt("org_robolectric_shadows_multidex_java") {
@@ -1660,20 +1599,6 @@ java_prebuilt("org_robolectric_shadows_multidex_java") {
bypass_platform_checks = true
}
@ -647,30 +645,6 @@ diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD.
# This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
java_prebuilt("org_robolectric_utils_java") {
jar_path = "libs/org_robolectric_utils/utils-4.3.1.jar"
diff --git a/third_party/cacheinvalidation/BUILD.gn b/third_party/cacheinvalidation/BUILD.gn
--- a/third_party/cacheinvalidation/BUILD.gn
+++ b/third_party/cacheinvalidation/BUILD.gn
@@ -133,7 +133,6 @@ if (is_android) {
jacoco_never_instrument = true
deps = [
":cacheinvalidation_proto_java",
- "$google_play_services_package:google_play_services_iid_java",
"$google_play_services_package:google_play_services_tasks_java",
"//base:base_java",
"//third_party/android_protobuf:protobuf_nano_javalib",
diff --git a/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/external/client/android2/AndroidManifestUpdatedGcm.xml b/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/external/client/android2/AndroidManifestUpdatedGcm.xml
--- a/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/external/client/android2/AndroidManifestUpdatedGcm.xml
+++ b/third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/external/client/android2/AndroidManifestUpdatedGcm.xml
@@ -27,9 +27,6 @@
<!-- InstanceID Listener Service -->
<service android:exported="false"
android:name="com.google.ipc.invalidation.ticl2.android2.channel.AndroidInstanceIDListenerService">
- <intent-filter>
- <action android:name="com.google.android.gms.iid.InstanceID"/>
- </intent-filter>
</service>
</application>
</manifest>
--
2.17.1

View file

@ -9,7 +9,7 @@ Subject: Remove dependency on flags, places and stats
diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD.gn
--- a/third_party/android_deps/BUILD.gn
+++ b/third_party/android_deps/BUILD.gn
@@ -2102,37 +2102,6 @@ java_prebuilt("com_github_kevinstern_software_and_algorithms_java") {
@@ -2196,37 +2196,6 @@ java_prebuilt("com_github_kevinstern_software_and_algorithms_java") {
visibility = [ ":*" ]
}

View file

@ -494,7 +494,7 @@ diff --git a/services/shape_detection/android/java/src/org/chromium/shape_detect
diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD.gn
--- a/third_party/android_deps/BUILD.gn
+++ b/third_party/android_deps/BUILD.gn
@@ -1154,36 +1154,6 @@ android_aar_prebuilt("google_play_services_tasks_java") {
@@ -1296,36 +1296,6 @@ android_aar_prebuilt("google_play_services_tasks_java") {
strip_drawables = true
}
@ -531,7 +531,7 @@ diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD.
# This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
android_aar_prebuilt("com_google_android_material_material_java") {
aar_path =
@@ -2132,62 +2102,6 @@ java_prebuilt("com_github_kevinstern_software_and_algorithms_java") {
@@ -2226,62 +2196,6 @@ java_prebuilt("com_github_kevinstern_software_and_algorithms_java") {
visibility = [ ":*" ]
}

View file

@ -9,7 +9,7 @@ Subject: Remove google_services_gcm
diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD.gn
--- a/third_party/android_deps/BUILD.gn
+++ b/third_party/android_deps/BUILD.gn
@@ -995,24 +995,6 @@ java_prebuilt("com_android_tools_build_jetifier_jetifier_processor_java") {
@@ -1137,24 +1137,6 @@ java_prebuilt("com_android_tools_build_jetifier_jetifier_processor_java") {
]
}

View file

@ -4,8 +4,8 @@ Subject: Remove help menu item
---
chrome/android/java/res/menu/main_menu.xml | 2 --
.../src/org/chromium/chrome/browser/ChromeActivity.java | 9 ---------
.../org/chromium/chrome/browser/KeyboardShortcuts.java | 3 ---
.../org/chromium/chrome/browser/app/ChromeActivity.java | 9 ---------
.../chrome/browser/customtabs/BaseCustomTabActivity.java | 2 +-
.../browser/directactions/MenuDirectActionHandler.java | 2 --
5 files changed, 1 insertion(+), 17 deletions(-)
@ -13,19 +13,32 @@ Subject: Remove help menu item
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
+++ b/chrome/android/java/res/menu/main_menu.xml
@@ -83,8 +83,6 @@
android:icon="@drawable/reader_mode_prefs_icon" />
@@ -108,8 +108,6 @@
<item android:id="@+id/preferences_id"
android:title="@string/menu_settings" />
android:title="@string/menu_settings"
android:icon="@drawable/settings_cog" />
- <item android:id="@+id/help_id"
- android:title="@string/menu_help" />
- android:title="@string/menu_help"
android:icon="@drawable/help_outline" />
<item android:id="@+id/enter_vr_id"
android:title="@string/enter_vr" />
<item android:id="@+id/exit_id"
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
@@ -1908,15 +1908,6 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
android:title="@string/enter_vr"
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java b/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java
@@ -343,9 +343,6 @@ public class KeyboardShortcuts {
tab = activity.getActivityTab();
if (tab != null && tab.canGoForward()) tab.goForward();
return true;
- case CTRL | SHIFT | KeyEvent.KEYCODE_SLASH: // i.e. Ctrl+?
- activity.onMenuOrKeyboardAction(R.id.help_id, false);
- return true;
}
}
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
@@ -1887,15 +1887,6 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
final Tab currentTab = getActivityTab();
@ -41,19 +54,6 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.
if (id == R.id.open_history_menu_id) {
// 'currentTab' could only be null when opening history from start surface, which is
// not available on tablet.
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java b/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java
@@ -342,9 +342,6 @@ public class KeyboardShortcuts {
tab = activity.getActivityTab();
if (tab != null && tab.canGoForward()) tab.goForward();
return true;
- case CTRL | SHIFT | KeyEvent.KEYCODE_SLASH: // i.e. Ctrl+?
- activity.onMenuOrKeyboardAction(R.id.help_id, false);
- return true;
}
}
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/BaseCustomTabActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/BaseCustomTabActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/BaseCustomTabActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/BaseCustomTabActivity.java

View file

@ -16,27 +16,27 @@ ld.lld: error: undefined symbol: notifier::NotifierOptions::NotifierOptions()
>>> referenced by invalidation_service_util.cc:17 (../../components/invalidation/impl/invalidation_service_util.cc:17)
>>> impl/invalidation_service_util.o:(invalidation::ParseNotifierOptions(base::CommandLine const&)) in archive obj/components/invalidation/impl/libimpl.a
---
chrome/android/BUILD.gn | 3 +-
chrome/android/java/AndroidManifest.xml | 28 ------
.../android/java/res/xml/main_preferences.xml | 14 ---
.../chrome/browser/ChromeActivity.java | 34 -------
.../DataReductionPreferenceFragment.java | 24 ++---
.../privacy/settings/PrivacySettings.java | 6 --
.../chrome/browser/settings/MainSettings.java | 90 +------------------
.../chrome/browser/signin/SigninManager.java | 59 ++----------
.../browser/sync/AndroidSyncSettings.java | 24 +----
.../settings/SyncAndServicesSettings.java | 8 --
.../android/signin/signin_manager_android.cc | 1 -
.../strings/android_chrome_strings.grd | 15 ----
.../signin/SystemAccountManagerDelegate.java | 38 +-------
.../net/HttpNegotiateAuthenticator.java | 88 +-----------------
.../chromoting/base/OAuthTokenFetcher.java | 2 -
15 files changed, 25 insertions(+), 409 deletions(-)
chrome/android/BUILD.gn | 3 +-
chrome/android/java/AndroidManifest.xml | 18 ---
.../android/java/res/xml/main_preferences.xml | 9 --
.../chrome/browser/app/ChromeActivity.java | 34 ------
.../DataReductionPreferenceFragment.java | 24 +---
.../privacy/settings/PrivacySettings.java | 10 --
.../chrome/browser/settings/MainSettings.java | 108 +-----------------
.../chrome/browser/signin/SigninManager.java | 62 ++--------
.../browser/sync/AndroidSyncSettings.java | 24 +---
.../settings/SyncAndServicesSettings.java | 8 --
.../android/signin/signin_manager_android.cc | 1 -
.../strings/android_chrome_strings.grd | 12 --
.../signin/SystemAccountManagerDelegate.java | 38 +-----
.../net/HttpNegotiateAuthenticator.java | 88 +-------------
.../chromoting/base/OAuthTokenFetcher.java | 2 -
15 files changed, 27 insertions(+), 414 deletions(-)
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
--- a/chrome/android/BUILD.gn
+++ b/chrome/android/BUILD.gn
@@ -1364,8 +1364,7 @@ jinja_template_resources("chrome_public_apk_template_resources") {
@@ -1426,8 +1426,7 @@ jinja_template_resources("chrome_public_apk_template_resources") {
resources = [
"java/res_template/xml/file_paths.xml",
"java/res_template/xml/launchershortcuts.xml",
@ -49,7 +49,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.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
@@ -43,23 +43,17 @@ by a child template that "extends" this file.
@@ -44,23 +44,17 @@ by a child template that "extends" this file.
{% if target_sdk_version|int > 27 or target_sdk_version == "Q" %}
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
{% endif %}
@ -73,7 +73,7 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro
{% set enable_vr = enable_vr|default(0) %}
{% if enable_vr == "true" %}
<!-- Indicates use of Android's VR-mode, available only on Android N+. -->
@@ -100,8 +94,6 @@ by a child template that "extends" this file.
@@ -101,8 +95,6 @@ by a child template that "extends" this file.
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/>
@ -82,7 +82,7 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro
{% block extra_uses_permissions %}
{% endblock %}
@@ -870,16 +862,6 @@ by a child template that "extends" this file.
@@ -881,16 +873,6 @@ by a child template that "extends" this file.
android:resource="@xml/file_paths" />
</provider>
@ -99,58 +99,36 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro
<!-- Broadcast receiver that will be notified of account changes -->
<receiver android:name="org.chromium.chrome.browser.services.AccountsChangedReceiver">
<intent-filter>
@@ -987,16 +969,6 @@ by a child template that "extends" this file.
<service android:name="org.chromium.chrome.browser.services.gcm.InvalidationGcmUpstreamSender"
android:exported="false"/>
- <!-- Notification service for sync. -->
- <service android:name="com.google.ipc.invalidation.ticl.android2.TiclService"
- android:exported="false"/>
- <service android:name="com.google.ipc.invalidation.ticl.android2.channel.AndroidMessageSenderService"
- android:exported="false"/>
- <receiver android:name="com.google.ipc.invalidation.ticl.android2.AndroidInternalScheduler$AlarmReceiver"
- android:exported="false"/>
- <receiver android:name="com.google.ipc.invalidation.external.client.contrib.AndroidListener$AlarmReceiver"
- android:exported="false"/>
-
<!-- Android Notification service listener -->
<service android:name="org.chromium.chrome.browser.notifications.NotificationService"
android:exported="false"/>
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
@@ -6,15 +6,6 @@
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
android:orderingFromXml="false">
- <PreferenceCategory
- android:key="account_section"
- android:order="0"
- android:title="@string/prefs_section_account"/>
@@ -19,10 +19,6 @@
android:order="2"
android:title="@string/prefs_section_account_and_google_services"
app:isPreferenceVisible="false"/>
- <org.chromium.chrome.browser.sync.settings.SignInPreference
- android:key="sign_in"
- android:order="1"
- android:order="3"
- android:title="@string/sign_in_to_chrome"/>
-
<PreferenceCategory
android:key="basics_section"
android:order="3"
@@ -85,11 +76,6 @@
<org.chromium.components.browser_ui.settings.ChromeBasePreference
android:key="manage_sync"
android:order="5"
@@ -107,11 +103,6 @@
android:key="languages"
android:order="17"
android:order="21"
android:title="@string/language_settings"/>
- <org.chromium.components.browser_ui.settings.ChromeBasePreference
- android:fragment="org.chromium.chrome.browser.datareduction.settings.DataReductionPreferenceFragment"
- android:key="data_reduction"
- android:order="18"
- android:order="22"
- android:title="@string/data_reduction_title_lite_mode"/>
<org.chromium.components.browser_ui.settings.ChromeBasePreference
android:fragment="org.chromium.chrome.browser.download.settings.DownloadSettings"
android:key="downloads"
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
@@ -122,8 +122,6 @@ import org.chromium.chrome.browser.settings.SettingsLauncher;
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
@@ -132,8 +132,6 @@ import org.chromium.chrome.browser.settings.SettingsLauncher;
import org.chromium.chrome.browser.settings.SettingsLauncherImpl;
import org.chromium.chrome.browser.share.ShareDelegate;
import org.chromium.chrome.browser.share.ShareDelegateImpl;
@ -159,17 +137,17 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.
import org.chromium.chrome.browser.tab.AccessibilityVisibilityHandler;
import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.tab.TabDelegateFactory;
@@ -245,9 +243,6 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -257,9 +255,6 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
private boolean mRemoveWindowBackgroundDone;
protected AccessibilityVisibilityHandler mAccessibilityVisibilityHandler;
- // Observes when sync becomes ready to create the mContextReporter.
- private ProfileSyncService.SyncStateChangedListener mSyncStateChangedListener;
-
@Nullable
private ChromeFullscreenManager mFullscreenManager;
// The PictureInPictureController is initialized lazily https://crbug.com/729738.
private PictureInPictureController mPictureInPictureController;
@@ -868,28 +863,6 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -846,28 +841,6 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
private void createContextReporterIfNeeded() {
if (!mStarted) return; // Sync state reporting should work only in started state.
if (mContextReporter != null || getActivityTab() == null) return;
@ -198,7 +176,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.
}
@Override
@@ -955,13 +928,6 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -933,13 +906,6 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
if (GSAState.getInstance(this).isGsaAvailable() && !SysUtils.isLowEndDevice()) {
GSAAccountChangeListener.getInstance().disconnect();
}
@ -256,30 +234,27 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/datareduction/s
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
@@ -47,9 +47,6 @@ public class PrivacySettings
private static final String PREF_SECURE_DNS = "secure_dns";
private static final String PREF_DO_NOT_TRACK = "do_not_track";
private static final String PREF_CLEAR_BROWSING_DATA = "clear_browsing_data";
- private static final String PREF_SYNC_AND_SERVICES_LINK_DIVIDER =
- "sync_and_services_link_divider";
- private static final String PREF_SYNC_AND_SERVICES_LINK = "sync_and_services_link";
private ManagedPreferenceDelegate mManagedPreferenceDelegate;
@@ -77,9 +74,6 @@ public class PrivacySettings
@@ -84,16 +84,6 @@ public class PrivacySettings
Preference secureDnsPref = findPreference(PREF_SECURE_DNS);
secureDnsPref.setVisible(privacyPrefManager.isDnsOverHttpsUiEnabled());
secureDnsPref.setVisible(SecureDnsSettings.isUiEnabled());
- getPreferenceScreen().removePreference(findPreference(PREF_SYNC_AND_SERVICES_LINK_DIVIDER));
- getPreferenceScreen().removePreference(findPreference(PREF_SYNC_AND_SERVICES_LINK));
- Preference syncAndServicesLink = findPreference(PREF_SYNC_AND_SERVICES_LINK);
- NoUnderlineClickableSpan linkSpan = new NoUnderlineClickableSpan(getResources(), view -> {
- SettingsLauncher settingsLauncher = new SettingsLauncherImpl();
- settingsLauncher.launchSettingsActivity(getActivity(), SyncAndServicesSettings.class,
- SyncAndServicesSettings.createArguments(false));
- });
- syncAndServicesLink.setSummary(
- SpanApplier.applySpans(getString(R.string.privacy_sync_and_services_link),
- new SpanApplier.SpanInfo("<link>", "</link>", linkSpan)));
-
ChromeBaseCheckBoxPreference searchSuggestionsPref =
(ChromeBaseCheckBoxPreference) findPreference(PREF_SEARCH_SUGGESTIONS);
searchSuggestionsPref.setOnPreferenceChangeListener(this);
updateSummaries();
}
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java
@@ -17,19 +17,13 @@ import androidx.preference.PreferenceFragmentCompat;
@@ -18,10 +18,8 @@ import androidx.preference.PreferenceFragmentCompat;
import org.chromium.base.ContextUtils;
import org.chromium.chrome.R;
@ -289,29 +264,29 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe
-import org.chromium.chrome.browser.net.spdyproxy.DataReductionProxySettings;
import org.chromium.chrome.browser.night_mode.NightModeUtils;
import org.chromium.chrome.browser.offlinepages.prefetch.PrefetchConfiguration;
import org.chromium.chrome.browser.password_manager.ManagePasswordsReferrer;
import org.chromium.chrome.browser.password_manager.PasswordManagerLauncher;
import org.chromium.chrome.browser.password_check.PasswordCheck;
@@ -31,10 +29,6 @@ import org.chromium.chrome.browser.password_manager.PasswordManagerLauncher;
import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.safety_check.SafetyCheckSettingsFragment;
import org.chromium.chrome.browser.search_engines.TemplateUrlServiceFactory;
-import org.chromium.chrome.browser.signin.IdentityServicesProvider;
-import org.chromium.chrome.browser.signin.SigninManager;
-import org.chromium.chrome.browser.sync.ProfileSyncService;
-import org.chromium.chrome.browser.sync.settings.SignInPreference;
import org.chromium.chrome.browser.sync.settings.SyncPromoPreference;
import org.chromium.chrome.browser.sync.settings.SyncSettingsUtils;
import org.chromium.chrome.browser.tracing.settings.DeveloperSettings;
import org.chromium.components.browser_ui.settings.ChromeBasePreference;
@@ -45,18 +39,13 @@ import java.util.Map;
@@ -51,8 +45,7 @@ import java.util.Map;
* The main settings screen, shown when the user first opens Settings.
*/
public class MainSettings extends PreferenceFragmentCompat
- implements TemplateUrlService.LoadListener, ProfileSyncService.SyncStateChangedListener,
- SigninManager.SignInStateObserver {
- public static final String PREF_ACCOUNT_SECTION = "account_section";
- public static final String PREF_SIGN_IN = "sign_in";
- public static final String PREF_SYNC_AND_SERVICES = "sync_and_services";
+ implements TemplateUrlService.LoadListener {
public static final String PREF_SEARCH_ENGINE = "search_engine";
public static final String PREF_PASSWORDS = "passwords";
public static final String PREF_HOMEPAGE = "homepage";
public static final String PREF_SYNC_PROMO = "sync_promo";
public static final String PREF_ACCOUNT_SECTION = "account_section";
public static final String PREF_ACCOUNT_AND_GOOGLE_SERVICES_SECTION =
@@ -67,7 +60,6 @@ public class MainSettings extends PreferenceFragmentCompat
public static final String PREF_UI_THEME = "ui_theme";
public static final String PREF_PRIVACY = "privacy";
public static final String PREF_SAFETY_CHECK = "safety_check";
@ -319,27 +294,31 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe
public static final String PREF_NOTIFICATIONS = "notifications";
public static final String PREF_DOWNLOADS = "downloads";
public static final String PREF_DEVELOPER = "developer";
@@ -67,7 +56,6 @@ public class MainSettings extends PreferenceFragmentCompat
@@ -79,7 +71,6 @@ public class MainSettings extends PreferenceFragmentCompat
private final ManagedPreferenceDelegate mManagedPreferenceDelegate;
private final Map<String, Preference> mAllPreferences = new HashMap<>();
private SyncPromoPreference mSyncPromoPreference;
- private SignInPreference mSignInPreference;
private ChromeBasePreference mManageSync;
private @Nullable PasswordCheck mPasswordCheck;
public MainSettings() {
setHasOptionsMenu(true);
@@ -90,35 +78,16 @@ public class MainSettings extends PreferenceFragmentCompat
@Override
@@ -111,7 +102,6 @@ public class MainSettings extends PreferenceFragmentCompat
public void onDestroy() {
super.onDestroy();
mSyncPromoPreference.onPreferenceFragmentDestroyed();
- mSignInPreference.onPreferenceFragmentDestroyed();
}
// The component should only be destroyed when the activity has been closed by the user
// (e.g. by pressing on the back button) and not when the activity is temporarily destroyed
// by the system.
@@ -121,33 +111,11 @@ public class MainSettings extends PreferenceFragmentCompat
@Override
public void onStart() {
super.onStart();
- SigninManager signinManager = IdentityServicesProvider.get().getSigninManager();
- SigninManager signinManager = IdentityServicesProvider.get().getSigninManager(
- Profile.getLastUsedRegularProfile());
- if (signinManager.isSigninSupported()) {
- signinManager.addSignInStateObserver(this);
- mSyncPromoPreference.registerForUpdates();
- mSignInPreference.registerForUpdates();
- }
- ProfileSyncService syncService = ProfileSyncService.get();
@ -351,9 +330,11 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe
@Override
public void onStop() {
super.onStop();
- SigninManager signinManager = IdentityServicesProvider.get().getSigninManager();
- SigninManager signinManager = IdentityServicesProvider.get().getSigninManager(
- Profile.getLastUsedRegularProfile());
- if (signinManager.isSigninSupported()) {
- signinManager.removeSignInStateObserver(this);
- mSyncPromoPreference.unregisterForUpdates();
- mSignInPreference.unregisterForUpdates();
- }
- ProfileSyncService syncService = ProfileSyncService.get();
@ -363,7 +344,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe
}
@Override
@@ -146,12 +115,9 @@ public class MainSettings extends PreferenceFragmentCompat
@@ -182,12 +150,9 @@ public class MainSettings extends PreferenceFragmentCompat
cachePreferences();
@ -376,29 +357,42 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
// If we are on Android O+ the Notifications preference should lead to the Android
@@ -202,7 +168,6 @@ public class MainSettings extends PreferenceFragmentCompat
Preference preference = getPreferenceScreen().getPreference(index);
@@ -255,7 +220,6 @@ public class MainSettings extends PreferenceFragmentCompat
mAllPreferences.put(preference.getKey(), preference);
}
mSyncPromoPreference = (SyncPromoPreference) mAllPreferences.get(PREF_SYNC_PROMO);
- mSignInPreference = (SignInPreference) mAllPreferences.get(PREF_SIGN_IN);
mManageSync = (ChromeBasePreference) findPreference(PREF_MANAGE_SYNC);
}
private void setManagedPreferenceDelegateForPreference(String key) {
@@ -211,13 +176,6 @@ public class MainSettings extends PreferenceFragmentCompat
@@ -265,24 +229,12 @@ public class MainSettings extends PreferenceFragmentCompat
}
private void updatePreferences() {
- if (IdentityServicesProvider.get().getSigninManager().isSigninSupported()) {
- if (IdentityServicesProvider.get()
- .getSigninManager(Profile.getLastUsedRegularProfile())
- .isSigninSupported()) {
- addPreferenceIfAbsent(PREF_SIGN_IN);
- } else {
- removePreferenceIfPresent(PREF_SIGN_IN);
- }
-
- boolean hasPrimaryAccount = IdentityServicesProvider.get()
- .getIdentityManager(Profile.getLastUsedRegularProfile())
- .hasPrimaryAccount();
- boolean isSyncPromoHidden =
- mSyncPromoPreference.getState() == SyncPromoPreference.State.PROMO_HIDDEN;
+ boolean hasPrimaryAccount = false;
+ boolean isSyncPromoHidden = true;
mManageSync.setVisible(
ChromeFeatureList.isEnabled(ChromeFeatureList.MOBILE_IDENTITY_CONSISTENCY)
&& hasPrimaryAccount && isSyncPromoHidden);
- updateSyncAndServicesPreference();
updateSearchEnginePreference();
Preference homepagePref = addPreferenceIfAbsent(PREF_HOMEPAGE);
@@ -234,10 +192,6 @@ public class MainSettings extends PreferenceFragmentCompat
@@ -299,10 +251,6 @@ public class MainSettings extends PreferenceFragmentCompat
} else {
removePreferenceIfPresent(PREF_DEVELOPER);
}
@ -409,21 +403,23 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe
}
private Preference addPreferenceIfAbsent(String key) {
@@ -251,13 +205,6 @@ public class MainSettings extends PreferenceFragmentCompat
@@ -316,15 +264,6 @@ public class MainSettings extends PreferenceFragmentCompat
if (preference != null) getPreferenceScreen().removePreference(preference);
}
- private void updateSyncAndServicesPreference() {
- ChromeBasePreference syncAndServices =
- (ChromeBasePreference) findPreference(PREF_SYNC_AND_SERVICES);
- syncAndServices.setIcon(SyncSettingsUtils.getSyncStatusIcon(getActivity()));
- syncAndServices.setSummary(SyncSettingsUtils.getSyncStatusSummary(getActivity()));
- ChromeBasePreference preference = findPreference(
- ChromeFeatureList.isEnabled(ChromeFeatureList.MOBILE_IDENTITY_CONSISTENCY)
- ? PREF_MANAGE_SYNC
- : PREF_SYNC_AND_SERVICES);
- preference.setIcon(SyncSettingsUtils.getSyncStatusIcon(getActivity()));
- preference.setSummary(SyncSettingsUtils.getSyncStatusSummary(getActivity()));
- }
-
private void updateSearchEnginePreference() {
if (!TemplateUrlServiceFactory.get().isLoaded()) {
ChromeBasePreference searchEnginePref =
@@ -289,28 +236,6 @@ public class MainSettings extends PreferenceFragmentCompat
@@ -356,34 +295,6 @@ public class MainSettings extends PreferenceFragmentCompat
pref.setSummary(isOn ? R.string.text_on : R.string.text_off);
}
@ -441,8 +437,14 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe
- }
-
- private void onSignInPreferenceStateChanged() {
- // Remove "Account" section header if the personalized sign-in promo is shown.
- if (mSignInPreference.getState() == SignInPreference.State.PERSONALIZED_PROMO) {
- // Remove "Account" section header if the personalized sign-in promo is shown. Remove
- // "You and Google" section header if the personalized sync promo is shown.
- boolean isShowingPersonalizedPromo =
- mSignInPreference.getState() == SignInPreference.State.PERSONALIZED_PROMO;
- if (ChromeFeatureList.isEnabled(ChromeFeatureList.MOBILE_IDENTITY_CONSISTENCY)) {
- findPreference(PREF_ACCOUNT_AND_GOOGLE_SERVICES_SECTION)
- .setVisible(!isShowingPersonalizedPromo);
- } else if (isShowingPersonalizedPromo) {
- removePreferenceIfPresent(PREF_ACCOUNT_SECTION);
- } else {
- addPreferenceIfAbsent(PREF_ACCOUNT_SECTION);
@ -452,7 +454,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe
// TemplateUrlService.LoadListener implementation.
@Override
public void onTemplateUrlServiceLoaded() {
@@ -318,11 +243,6 @@ public class MainSettings extends PreferenceFragmentCompat
@@ -391,11 +302,6 @@ public class MainSettings extends PreferenceFragmentCompat
updateSearchEnginePreference();
}
@ -464,7 +466,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe
@VisibleForTesting
public ManagedPreferenceDelegate getManagedPreferenceDelegateForTest() {
return mManagedPreferenceDelegate;
@@ -332,9 +252,6 @@ public class MainSettings extends PreferenceFragmentCompat
@@ -405,9 +311,6 @@ public class MainSettings extends PreferenceFragmentCompat
return new ChromeManagedPreferenceDelegate() {
@Override
public boolean isPreferenceControlledByPolicy(Preference preference) {
@ -474,7 +476,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe
if (PREF_SEARCH_ENGINE.equals(preference.getKey())) {
return TemplateUrlServiceFactory.get().isDefaultSearchManaged();
}
@@ -343,11 +260,6 @@ public class MainSettings extends PreferenceFragmentCompat
@@ -416,11 +319,6 @@ public class MainSettings extends PreferenceFragmentCompat
@Override
public boolean isPreferenceClickDisabledByPolicy(Preference preference) {
@ -489,17 +491,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninManager.java b/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninManager.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninManager.java
@@ -23,9 +23,7 @@ import org.chromium.base.metrics.RecordUserAction;
@@ -23,7 +23,6 @@ import org.chromium.base.metrics.RecordUserAction;
import org.chromium.base.task.PostTask;
import org.chromium.chrome.browser.externalauth.ExternalAuthUtils;
import org.chromium.chrome.browser.sync.AndroidSyncSettings;
-import org.chromium.components.signin.AccountTrackerService;
import org.chromium.components.signin.AccountUtils;
-import org.chromium.components.signin.ChromeSigninController;
import org.chromium.components.signin.base.CoreAccountInfo;
import org.chromium.components.signin.identitymanager.ClearAccountsAction;
import org.chromium.components.signin.identitymanager.ConsentLevel;
@@ -51,7 +49,7 @@ import java.util.List;
@@ -50,7 +49,7 @@ import java.util.List;
* See chrome/browser/signin/signin_manager_android.h for more details.
*/
public class SigninManager
@ -508,7 +508,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninMa
private static final String TAG = "SigninManager";
/**
@@ -169,7 +167,6 @@ public class SigninManager
@@ -168,7 +167,6 @@ public class SigninManager
* This is not final, as destroy() updates this.
*/
private long mNativeSigninManagerAndroid;
@ -516,7 +516,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninMa
private final IdentityManager mIdentityManager;
private final IdentityMutator mIdentityMutator;
private final AndroidSyncSettings mAndroidSyncSettings;
@@ -207,24 +204,22 @@ public class SigninManager
@@ -206,24 +204,22 @@ public class SigninManager
*/
@CalledByNative
private static SigninManager create(long nativeSigninManagerAndroid,
@ -544,7 +544,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninMa
mIdentityManager = identityManager;
mIdentityMutator = identityMutator;
mAndroidSyncSettings = androidSyncSettings;
@@ -233,7 +228,6 @@ public class SigninManager
@@ -232,7 +228,6 @@ public class SigninManager
mSigninAllowedByPolicy =
SigninManagerJni.get().isSigninAllowedByPolicy(mNativeSigninManagerAndroid);
@ -552,7 +552,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninMa
mIdentityManager.addObserver(this);
reloadAllAccountsFromSystem();
@@ -246,7 +240,6 @@ public class SigninManager
@@ -245,7 +240,6 @@ public class SigninManager
@CalledByNative
public void destroy() {
mIdentityManager.removeObserver(this);
@ -560,7 +560,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninMa
mNativeSigninManagerAndroid = 0;
}
@@ -285,9 +278,7 @@ public class SigninManager
@@ -284,9 +278,7 @@ public class SigninManager
* Returns true if signin can be started now.
*/
public boolean isSignInAllowed() {
@ -571,7 +571,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninMa
}
/**
@@ -342,17 +333,6 @@ public class SigninManager
@@ -341,17 +333,6 @@ public class SigninManager
});
}
@ -589,7 +589,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninMa
/**
* Starts the sign-in flow, and executes the callback when finished.
*
@@ -421,11 +401,8 @@ public class SigninManager
@@ -420,11 +401,8 @@ public class SigninManager
}
private void progressSignInFlowSeedSystemAccounts() {
@ -603,7 +603,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninMa
}
/**
@@ -462,18 +439,6 @@ public class SigninManager
@@ -461,19 +439,6 @@ public class SigninManager
// The user should not be already signed in
assert !mIdentityManager.hasPrimaryAccount();
@ -613,27 +613,31 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninMa
- return;
- }
-
- // Cache the signed-in account name. This must be done after the native call, otherwise
- // sync tries to start without being signed in natively and crashes.
- ChromeSigninController.get().setSignedInAccountName(
- // TODO(https://crbug.com/1091858): Remove this after migrating the legacy code that uses
- // the sync account before the native is loaded.
- SigninPreferencesManager.getInstance().setLegacySyncAccountEmail(
- mSignInState.mCoreAccountInfo.getEmail());
-
- enableSync(mSignInState.mCoreAccountInfo);
-
if (mSignInState.mCallback != null) {
mSignInState.mCallback.onSignInComplete();
}
@@ -631,10 +596,8 @@ public class SigninManager
@@ -629,13 +594,8 @@ public class SigninManager
// Native sign-out must happen before resetting the account so data is deleted correctly.
// http://crbug.com/589028
- ChromeSigninController.get().setSignedInAccountName(null);
Log.d(TAG, "On native signout, wipe user data: " + mSignOutState.mShouldWipeUserData);
- // TODO(https://crbug.com/1091858): Remove this after migrating the legacy code that uses
- // the sync account before the native is loaded.
- SigninPreferencesManager.getInstance().setLegacySyncAccountEmail(null);
-
if (mSignOutState.mSignOutCallback != null) mSignOutState.mSignOutCallback.preWipeData();
disableSyncAndWipeData(mSignOutState.mShouldWipeUserData, this::finishSignOut);
- mAccountTrackerService.invalidateAccountSeedStatus(true);
}
void finishSignOut() {
@@ -694,14 +657,6 @@ public class SigninManager
@@ -695,14 +655,6 @@ public class SigninManager
SigninManagerJni.get().stopApplyingCloudPolicy(mNativeSigninManagerAndroid);
}
@ -651,7 +655,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninMa
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/sync/AndroidSyncSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/sync/AndroidSyncSettings.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/sync/AndroidSyncSettings.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/sync/AndroidSyncSettings.java
@@ -215,13 +215,7 @@ public class AndroidSyncSettings {
@@ -216,13 +216,7 @@ public class AndroidSyncSettings {
private void setChromeSyncEnabled(boolean value) {
synchronized (mLock) {
@ -666,7 +670,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/sync/AndroidSyn
}
notifyObservers();
}
@@ -302,19 +296,9 @@ public class AndroidSyncSettings {
@@ -307,19 +301,9 @@ public class AndroidSyncSettings {
boolean oldChromeSyncEnabled = mChromeSyncEnabled;
boolean oldMasterSyncEnabled = mMasterSyncEnabled;
@ -674,7 +678,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/sync/AndroidSyn
- if (mAccount != null) {
- mIsSyncable =
- mSyncContentResolverDelegate.getIsSyncable(mAccount, mContractAuthority)
- == 1;
- > 0;
- mChromeSyncEnabled = mSyncContentResolverDelegate.getSyncAutomatically(
- mAccount, mContractAuthority);
- } else {
@ -692,7 +696,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/sync/AndroidSyn
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/sync/settings/SyncAndServicesSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/sync/settings/SyncAndServicesSettings.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/sync/settings/SyncAndServicesSettings.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/sync/settings/SyncAndServicesSettings.java
@@ -165,15 +165,7 @@ public class SyncAndServicesSettings extends PreferenceFragmentCompat
@@ -170,15 +170,7 @@ public class SyncAndServicesSettings extends PreferenceFragmentCompat
mPrivacyPrefManager.migrateNetworkPredictionPreferences();
@ -711,7 +715,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/sync/settings/S
diff --git a/chrome/browser/android/signin/signin_manager_android.cc b/chrome/browser/android/signin/signin_manager_android.cc
--- a/chrome/browser/android/signin/signin_manager_android.cc
+++ b/chrome/browser/android/signin/signin_manager_android.cc
@@ -139,7 +139,6 @@ SigninManagerAndroid::SigninManagerAndroid(
@@ -140,7 +140,6 @@ SigninManagerAndroid::SigninManagerAndroid(
java_signin_manager_ = Java_SigninManager_create(
base::android::AttachCurrentThread(), reinterpret_cast<intptr_t>(this),
@ -722,13 +726,7 @@ diff --git a/chrome/browser/android/signin/signin_manager_android.cc b/chrome/br
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
@@ -261,18 +261,9 @@ CHAR-LIMIT guidelines:
</message>
<!-- Sign-in, sync and personalization preferences -->
- <message name="IDS_PREFS_SECTION_ACCOUNT" desc="Title for the group of account-related entries in Settings. [CHAR-LIMIT=32]">
- Account
- </message>
@@ -269,12 +269,6 @@ CHAR-LIMIT guidelines:
<message name="IDS_SIGN_IN_TO_CHROME" desc="Title for the button to sign in to Chrome using one's Google account. [CHAR-LIMIT=27]">
Sign in to Chrome
</message>
@ -741,7 +739,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
<message name="IDS_SIGNIN_PREF_SUMMARY" desc="Summary for the entry in Settings to sign in to Chrome, explaining benefits of signing in.">
Sync and personalize across devices
</message>
@@ -331,9 +322,6 @@ CHAR-LIMIT guidelines:
@@ -333,9 +327,6 @@ CHAR-LIMIT guidelines:
<message name="IDS_URL_KEYED_ANONYMIZED_DATA_SUMMARY" desc="Summary for a checkbox in Settings that controls non-personalized URL collection and informs the user about the data shared by this feature.">
Sends URLs of pages you visit to Google
</message>
@ -751,7 +749,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
<message name="IDS_CANCEL_SYNC_DIALOG_TITLE" desc="The title of a dialog that is shown when users tries closing 'Sync and Google services' preferences without confirming the changes.">
Cancel sync?
</message>
@@ -964,9 +952,6 @@ Your Google account may have other forms of browsing history like searches and a
@@ -1108,9 +1099,6 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_DATA_REDUCTION_DESCRIPTION_LITE_MODE" desc="Text describing how the Lite mode feature works. Seen only before the user has enabled the feature.">
When Lite mode is on, Chrome uses Google servers to make pages load faster. Lite mode rewrites very slow pages to load only essential content. Lite mode does not apply to Incognito tabs.
</message>

View file

@ -0,0 +1,26 @@
From: csagan5 <32685696+csagan5@users.noreply.github.com>
Date: Sun, 27 Sep 2020 09:24:16 +0200
Subject: Remove weblayer dependency on Play Services
---
weblayer/shell/android/BUILD.gn | 3 ---
1 file changed, 3 deletions(-)
diff --git a/weblayer/shell/android/BUILD.gn b/weblayer/shell/android/BUILD.gn
--- a/weblayer/shell/android/BUILD.gn
+++ b/weblayer/shell/android/BUILD.gn
@@ -36,11 +36,8 @@ android_library("weblayer_shell_java") {
testonly = true
resources_package = "org.chromium.weblayer.shell"
- # The play services dependency is necessary for the
- # google_play_services_version definition in the manifest.
deps = [
":weblayer_shell_resources",
- "$google_play_services_package:google_play_services_base_java",
"//base:base_java",
"//third_party/android_deps:android_support_v4_java",
"//third_party/android_deps:android_support_v7_appcompat_java",
--
2.17.1

View file

@ -9,7 +9,7 @@ Subject: Replace DoH probe domain with RIPE domain
diff --git a/net/dns/dns_transaction.cc b/net/dns/dns_transaction.cc
--- a/net/dns/dns_transaction.cc
+++ b/net/dns/dns_transaction.cc
@@ -838,7 +838,7 @@ class DnsTCPAttempt : public DnsAttempt {
@@ -837,7 +837,7 @@ class DnsTCPAttempt : public DnsAttempt {
// ----------------------------------------------------------------------------

View file

@ -13,7 +13,7 @@ See discussion at https://github.com/bromite/bromite/issues/445
diff --git a/gpu/config/gpu_driver_bug_list.json b/gpu/config/gpu_driver_bug_list.json
--- a/gpu/config/gpu_driver_bug_list.json
+++ b/gpu/config/gpu_driver_bug_list.json
@@ -3537,6 +3537,22 @@
@@ -3286,6 +3286,22 @@
"dont_delete_source_texture_for_egl_image"
]
},

View file

@ -20,7 +20,7 @@ Disable search-ready omnibox by default
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omnibox/suggestions/DropdownItemViewInfoListBuilder.java b/chrome/android/java/src/org/chromium/chrome/browser/omnibox/suggestions/DropdownItemViewInfoListBuilder.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/omnibox/suggestions/DropdownItemViewInfoListBuilder.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/omnibox/suggestions/DropdownItemViewInfoListBuilder.java
@@ -61,6 +61,7 @@ class DropdownItemViewInfoListBuilder {
@@ -62,6 +62,7 @@ class DropdownItemViewInfoListBuilder {
private int mDropdownHeight;
private boolean mEnableAdaptiveSuggestionsCount;
private boolean mBuiltListHasFullyConcealedElements;
@ -28,7 +28,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omnibox/suggest
DropdownItemViewInfoListBuilder() {
mPriorityOrderedSuggestionProcessors = new ArrayList<>();
@@ -89,8 +90,8 @@ class DropdownItemViewInfoListBuilder {
@@ -90,8 +91,8 @@ class DropdownItemViewInfoListBuilder {
() -> mShareDelegateSupplier == null ? null : mShareDelegateSupplier.get();
mHeaderProcessor = new HeaderProcessor(context, host, delegate);
@ -39,7 +39,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omnibox/suggest
registerSuggestionProcessor(
new AnswerSuggestionProcessor(context, host, textProvider, imageFetcherSupplier));
registerSuggestionProcessor(
@@ -218,6 +219,10 @@ class DropdownItemViewInfoListBuilder {
@@ -219,6 +220,10 @@ class DropdownItemViewInfoListBuilder {
/** Signals that native initialization has completed. */
void onNativeInitialized() {
@ -53,7 +53,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omnibox/suggest
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
@@ -2539,6 +2539,9 @@ const FeatureEntry kFeatureEntries[] = {
@@ -2811,6 +2811,9 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kAndroidAutofillAccessibilityName,
flag_descriptions::kAndroidAutofillAccessibilityDescription, kOsAndroid,
FEATURE_VALUE_TYPE(features::kAndroidAutofillAccessibility)},
@ -67,8 +67,8 @@ diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.js
--- a/chrome/browser/flag-metadata.json
+++ b/chrome/browser/flag-metadata.json
@@ -1884,6 +1884,11 @@
"owners": [ "peter", "finnur" ],
"expiry_milestone": 84
// with neural net palm detection.
"expiry_milestone": 90
},
+ {
+ "name": "enable-search-ready-omnibox",
@ -76,12 +76,12 @@ diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.js
+ "expiry_milestone": -1
+ },
{
"name": "enable-navigation-predictor",
"owners": [ "tbansal", "ryansturm", "instant-nav" ],
"name": "enable-parallel-downloading",
"owners": [ "qinmin", "xingliu", "dtrainor" ],
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
@@ -2890,6 +2890,11 @@ const char kSafeBrowsingUseLocalBlacklistsV2Description[] =
@@ -3109,6 +3109,11 @@ const char kSafeBrowsingUseLocalBlacklistsV2Description[] =
"process to check the Safe Browsing reputation of URLs without calling "
"into GmsCore for every URL.";
@ -96,7 +96,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -1673,6 +1673,9 @@ extern const char kReportFeedUserActionsDescription[];
@@ -1791,6 +1791,9 @@ extern const char kSafeBrowsingSecuritySectionUiAndroidDescription[];
extern const char kSafeBrowsingUseLocalBlacklistsV2Name[];
extern const char kSafeBrowsingUseLocalBlacklistsV2Description[];
@ -109,7 +109,7 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio
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
@@ -183,6 +183,7 @@ const base::Feature* kFeaturesExposedToJava[] = {
@@ -187,6 +187,7 @@ const base::Feature* kFeaturesExposedToJava[] = {
&kReachedCodeProfiler,
&kReaderModeInCCT,
&kReengagementNotification,
@ -117,7 +117,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
&kRelatedSearches,
&kRevampedContextMenu,
&kSearchEnginePromoExistingDevice,
@@ -552,6 +553,9 @@ const base::Feature kRelatedSearches{"RelatedSearches",
@@ -569,6 +570,9 @@ const base::Feature kRelatedSearches{"RelatedSearches",
const base::Feature kRevampedContextMenu{"RevampedContextMenu",
base::FEATURE_ENABLED_BY_DEFAULT};
@ -130,7 +130,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
@@ -104,6 +104,7 @@ extern const base::Feature kRelatedSearches;
@@ -106,6 +106,7 @@ extern const base::Feature kRelatedSearches;
extern const base::Feature kRevampedContextMenu;
extern const base::Feature kSearchEnginePromoExistingDevice;
extern const base::Feature kSearchEnginePromoNewDevice;
@ -141,7 +141,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
@@ -324,6 +324,7 @@ public abstract class ChromeFeatureList {
@@ -330,6 +330,7 @@ public abstract class ChromeFeatureList {
public static final String OMNIBOX_ADAPTIVE_SUGGESTIONS_COUNT =
"OmniboxAdaptiveSuggestionsCount";
public static final String OMNIBOX_ASSISTANT_VOICE_SEARCH = "OmniboxAssistantVoiceSearch";

View file

@ -9,7 +9,7 @@ Subject: Restore enable-horizontal-tab-switcher flag
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
@@ -1746,7 +1746,7 @@
@@ -1651,7 +1651,7 @@
{
"name": "enable-horizontal-tab-switcher",
"owners": [ "memex-team@google.com" ],

View file

@ -4,14 +4,14 @@ Subject: Revert "Remove flags to enable/disable AImageReader."
This reverts commit 463fa0f2e3b9e418bc26e2c8954463f0b0f76634.
---
.../service/image_reader_gl_owner_unittest.cc | 5 +++++
gpu/config/gpu_finch_features.cc | 4 ++++
gpu/config/gpu_finch_features.h | 1 +
gpu/ipc/service/stream_texture_android.cc | 10 ++++++++--
media/base/media_switches.cc | 4 ++++
media/base/media_switches.h | 1 +
media/gpu/android/video_frame_factory_impl.cc | 3 ++-
7 files changed, 25 insertions(+), 3 deletions(-)
.../service/image_reader_gl_owner_unittest.cc | 5 +++++
gpu/config/gpu_finch_features.cc | 4 ++++
gpu/config/gpu_finch_features.h | 1 +
gpu/ipc/service/stream_texture_android.cc | 11 ++++++++++-
media/base/media_switches.cc | 4 ++++
media/base/media_switches.h | 1 +
media/gpu/android/video_frame_factory_impl.cc | 5 ++++-
7 files changed, 29 insertions(+), 2 deletions(-)
diff --git a/gpu/command_buffer/service/image_reader_gl_owner_unittest.cc b/gpu/command_buffer/service/image_reader_gl_owner_unittest.cc
--- a/gpu/command_buffer/service/image_reader_gl_owner_unittest.cc
@ -26,10 +26,10 @@ diff --git a/gpu/command_buffer/service/image_reader_gl_owner_unittest.cc b/gpu/
#include "gpu/command_buffer/service/image_reader_gl_owner.h"
#include "gpu/command_buffer/service/mock_abstract_texture.h"
+#include "media/base/media_switches.h"
#include "media/base/android/media_codec_util.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "ui/gl/gl_bindings.h"
#include "ui/gl/gl_context_egl.h"
@@ -30,6 +32,8 @@ class ImageReaderGLOwnerTest : public testing::Test {
@@ -31,6 +33,8 @@ class ImageReaderGLOwnerTest : public testing::Test {
if (!IsImageReaderSupported())
return;
@ -38,7 +38,7 @@ diff --git a/gpu/command_buffer/service/image_reader_gl_owner_unittest.cc b/gpu/
gl::init::InitializeStaticGLBindingsImplementation(
gl::kGLImplementationEGLGLES2, false);
gl::init::InitializeGLOneOffPlatformImplementation(false, false, true);
@@ -69,6 +73,7 @@ class ImageReaderGLOwnerTest : public testing::Test {
@@ -70,6 +74,7 @@ class ImageReaderGLOwnerTest : public testing::Test {
return base::android::AndroidImageReader::GetInstance().IsSupported();
}
@ -50,16 +50,16 @@ diff --git a/gpu/config/gpu_finch_features.cc b/gpu/config/gpu_finch_features.cc
--- a/gpu/config/gpu_finch_features.cc
+++ b/gpu/config/gpu_finch_features.cc
@@ -13,6 +13,10 @@
namespace features {
#if defined(OS_ANDROID)
+// Use android AImageReader when playing videos with MediaPlayer.
+const base::Feature kAImageReaderMediaPlayer{"AImageReaderMediaPlayer",
+ base::FEATURE_ENABLED_BY_DEFAULT};
+
// Used only by webview to disable SurfaceControl.
const base::Feature kDisableSurfaceControlForWebview{
"DisableSurfaceControlForWebview", base::FEATURE_DISABLED_BY_DEFAULT};
#if defined(OS_ANDROID)
// Used to limit GL version to 2.0 for skia raster on Android.
const base::Feature kUseGles2ForOopR{"UseGles2ForOopR",
diff --git a/gpu/config/gpu_finch_features.h b/gpu/config/gpu_finch_features.h
--- a/gpu/config/gpu_finch_features.h
+++ b/gpu/config/gpu_finch_features.h
@ -68,33 +68,41 @@ diff --git a/gpu/config/gpu_finch_features.h b/gpu/config/gpu_finch_features.h
// alongside the definition of their values in the .cc file.
#if defined(OS_ANDROID)
+GPU_EXPORT extern const base::Feature kAImageReaderMediaPlayer;
GPU_EXPORT extern const base::Feature kDisableSurfaceControlForWebview;
GPU_EXPORT extern const base::Feature kUseGles2ForOopR;
GPU_EXPORT extern const base::Feature kAndroidSurfaceControl;
GPU_EXPORT extern const base::Feature kAImageReader;
diff --git a/gpu/ipc/service/stream_texture_android.cc b/gpu/ipc/service/stream_texture_android.cc
--- a/gpu/ipc/service/stream_texture_android.cc
+++ b/gpu/ipc/service/stream_texture_android.cc
@@ -51,8 +51,14 @@ TextureOwner::Mode GetTextureOwnerMode() {
const bool a_image_reader_supported =
base::android::AndroidImageReader::GetInstance().IsSupported();
@@ -6,6 +6,7 @@
- return a_image_reader_supported ? TextureOwner::Mode::kAImageReaderInsecure
- : TextureOwner::Mode::kSurfaceTextureInsecure;
#include <string.h>
+#include "base/android/android_image_reader_compat.h"
#include "base/android/scoped_hardware_buffer_fence_sync.h"
#include "base/bind.h"
#include "base/feature_list.h"
@@ -47,7 +48,15 @@ std::unique_ptr<ui::ScopedMakeCurrent> MakeCurrent(
}
TextureOwner::Mode GetTextureOwnerMode() {
- return features::IsAImageReaderEnabled()
+ const bool a_image_reader_supported =
+ base::android::AndroidImageReader::GetInstance().IsSupported();
+
+ // TODO(vikassoni) : Currently we have 2 different flags to enable/disable
+ // AImageReader - one for MCVD and other for MediaPlayer here. Merge those 2
+ // flags into a single flag. Keeping the 2 flags separate for now since finch
+ // experiment using this flag is in progress.
+ return a_image_reader_supported && base::FeatureList::IsEnabled(
+ features::kAImageReaderMediaPlayer)
+ ? TextureOwner::Mode::kAImageReaderInsecure
+ : TextureOwner::Mode::kSurfaceTextureInsecure;
+ return a_image_reader_supported && features::IsAImageReaderEnabled() &&
+ base::FeatureList::IsEnabled(features::kAImageReaderMediaPlayer)
? TextureOwner::Mode::kAImageReaderInsecure
: TextureOwner::Mode::kSurfaceTextureInsecure;
}
} // namespace
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
@@ -542,6 +542,10 @@ const base::Feature kMediaDrmPreprovisioning{"MediaDrmPreprovisioning",
@@ -547,6 +547,10 @@ const base::Feature kMediaDrmPreprovisioning{"MediaDrmPreprovisioning",
const base::Feature kMediaDrmPreprovisioningAtStartup{
"MediaDrmPreprovisioningAtStartup", base::FEATURE_ENABLED_BY_DEFAULT};
@ -108,7 +116,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
@@ -186,6 +186,7 @@ MEDIA_EXPORT extern const base::Feature kMediaControlsExpandGesture;
@@ -192,6 +192,7 @@ MEDIA_EXPORT extern const base::Feature kMediaControlsExpandGesture;
MEDIA_EXPORT extern const base::Feature kMediaDrmPersistentLicense;
MEDIA_EXPORT extern const base::Feature kMediaDrmPreprovisioning;
MEDIA_EXPORT extern const base::Feature kMediaDrmPreprovisioningAtStartup;
@ -119,13 +127,22 @@ diff --git a/media/base/media_switches.h b/media/base/media_switches.h
diff --git a/media/gpu/android/video_frame_factory_impl.cc b/media/gpu/android/video_frame_factory_impl.cc
--- a/media/gpu/android/video_frame_factory_impl.cc
+++ b/media/gpu/android/video_frame_factory_impl.cc
@@ -41,7 +41,8 @@ gpu::TextureOwner::Mode GetTextureOwnerMode(
@@ -6,6 +6,7 @@
#include <memory>
+#include "base/android/android_image_reader_compat.h"
#include "base/bind.h"
#include "base/bind_helpers.h"
#include "base/callback.h"
@@ -65,7 +66,9 @@ gpu::TextureOwner::Mode GetTextureOwnerMode(
switch (overlay_mode) {
case VideoFrameFactory::OverlayMode::kDontRequestPromotionHints:
case VideoFrameFactory::OverlayMode::kRequestPromotionHints:
- return a_image_reader_supported
+ return a_image_reader_supported && base::FeatureList::IsEnabled(
+ media::kAImageReaderVideoOutput)
- return features::IsAImageReaderEnabled()
+ return base::android::AndroidImageReader::GetInstance().IsSupported() &&
+ features::IsAImageReaderEnabled() &&
+ base::FeatureList::IsEnabled(media::kAImageReaderVideoOutput)
? gpu::TextureOwner::Mode::kAImageReaderInsecure
: gpu::TextureOwner::Mode::kSurfaceTextureInsecure;
case VideoFrameFactory::OverlayMode::kSurfaceControlSecure:

File diff suppressed because it is too large Load diff

View file

@ -13,9 +13,9 @@ This reverts commit 4e598f38a0e6dd3dbede009c6a99b2a520a94e1f.
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
@@ -2564,6 +2564,10 @@ const FeatureEntry kFeatureEntries[] = {
@@ -2836,6 +2836,10 @@ const FeatureEntry kFeatureEntries[] = {
SINGLE_VALUE_TYPE(switches::kHostedAppQuitNotification)},
#endif // OS_MACOSX
#endif // OS_MAC
#if defined(OS_ANDROID)
+ {"disable-pull-to-refresh-effect",
+ flag_descriptions::kPullToRefreshEffectName,
@ -27,7 +27,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
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
@@ -945,6 +945,11 @@
@@ -890,6 +890,11 @@
// enable-javascript-harmony.
"expiry_milestone": -1
},
@ -42,7 +42,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
@@ -2848,6 +2848,10 @@ const char kQueryTilesInstantFetchName[] = "Query tile instant fetch";
@@ -3053,6 +3053,10 @@ const char kQueryTilesInstantFetchName[] = "Query tile instant fetch";
const char kQueryTilesInstantFetchDescription[] =
"Immediately schedule background task to fetch query tiles";
@ -56,7 +56,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -1650,6 +1650,9 @@ extern const char kQueryTilesCountryCodeIndonesia[];
@@ -1762,6 +1762,9 @@ extern const char kQueryTilesCountryCodeIndonesia[];
extern const char kQueryTilesInstantFetchName[];
extern const char kQueryTilesInstantFetchDescription[];

View file

@ -65,20 +65,20 @@ diff --git a/gpu/config/gpu_util.cc b/gpu/config/gpu_util.cc
#if !defined(OS_ANDROID)
return kGpuFeatureStatusDisabled;
#else
+ if (blacklisted_features.count(GPU_FEATURE_TYPE_ANDROID_SURFACE_CONTROL))
+ return kGpuFeatureStatusBlacklisted;
+ if (blocklisted_features.count(GPU_FEATURE_TYPE_ANDROID_SURFACE_CONTROL))
+ return kGpuFeatureStatusBlocklisted;
+
if (!gpu_preferences.enable_android_surface_control)
return kGpuFeatureStatusDisabled;
@@ -371,6 +374,11 @@ void AdjustGpuFeatureStatusToWorkarounds(GpuFeatureInfo* gpu_feature_info) {
@@ -374,6 +377,11 @@ void AdjustGpuFeatureStatusToWorkarounds(GpuFeatureInfo* gpu_feature_info) {
gpu_feature_info->status_values[GPU_FEATURE_TYPE_ACCELERATED_WEBGL2] =
kGpuFeatureStatusBlacklisted;
kGpuFeatureStatusBlocklisted;
}
+
+ if (gpu_feature_info->IsWorkaroundEnabled(DISABLE_AIMAGEREADER)) {
+ gpu_feature_info->status_values[GPU_FEATURE_TYPE_ANDROID_SURFACE_CONTROL] =
+ kGpuFeatureStatusBlacklisted;
+ kGpuFeatureStatusBlocklisted;
+ }
}
@ -92,14 +92,14 @@ diff --git a/gpu/config/gpu_workaround_list.txt b/gpu/config/gpu_workaround_list
disable_accelerated_av1_decode
+disable_aimagereader
disable_accelerated_vp8_decode
disable_accelerated_vp8_encode
disable_accelerated_vp9_decode
disable_async_readpixels
diff --git a/gpu/ipc/service/gpu_init.cc b/gpu/ipc/service/gpu_init.cc
--- a/gpu/ipc/service/gpu_init.cc
+++ b/gpu/ipc/service/gpu_init.cc
@@ -561,6 +561,12 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandLine* command_line,
ui::OzonePlatform::GetInstance()->AfterSandboxEntry();
#endif
@@ -708,6 +708,12 @@ void GpuInit::InitializeInProcess(base::CommandLine* command_line,
AdjustInfoToSwiftShader();
}
+#if defined(OS_ANDROID)
+ // Disable AImageReader if the workaround is enabled.
@ -108,11 +108,11 @@ diff --git a/gpu/ipc/service/gpu_init.cc b/gpu/ipc/service/gpu_init.cc
+ }
+#endif
#if defined(USE_OZONE)
gpu_feature_info_.supported_buffer_formats_for_allocation_and_texturing =
std::move(supported_buffer_formats_for_texturing);
@@ -587,6 +593,11 @@ void GpuInit::InitializeInProcess(base::CommandLine* command_line,
DisableInProcessGpuVulkan(&gpu_feature_info_, &gpu_preferences_);
default_offscreen_surface_ = gl::init::CreateOffscreenGLSurface(gfx::Size());
if (features::IsUsingOzonePlatform()) {
const std::vector<gfx::BufferFormat>
@@ -727,6 +733,11 @@ void GpuInit::InitializeInProcess(base::CommandLine* command_line,
gl::DirectCompositionSurfaceWin::DisableDecodeSwapChain();
#endif
+ // Disable AImageReader if the workaround is enabled.
+ if (gpu_feature_info_.IsWorkaroundEnabled(DISABLE_AIMAGEREADER)) {
@ -121,7 +121,7 @@ diff --git a/gpu/ipc/service/gpu_init.cc b/gpu/ipc/service/gpu_init.cc
+
UMA_HISTOGRAM_ENUMERATION("GPU.GLImplementation", gl::GetGLImplementation());
}
#else
#endif // OS_ANDROID
--
2.17.1

View file

@ -1,59 +0,0 @@
From: csagan5 <32685696+csagan5@users.noreply.github.com>
Date: Sat, 22 Aug 2020 14:31:59 +0200
Subject: Rollback dav1d upgrades that break x86
Revert "Roll src/third_party/dav1d/libdav1d/ 54f92068c..47daa4df3 (1 commit)"
This reverts commit e6447f7294588dcab826736c267cdab094a1643e.
Revert "Roll src/third_party/dav1d/libdav1d/ 07261e8c3..54f92068c (15 commits)"
This reverts commit b47516cde6a4d570b4c29b761d31c26009f9611f.
Revert "Roll src/third_party/dav1d/libdav1d/ b585f051c..07261e8c3 (39 commits)"
This reverts commit d723c1391cd7f73dedfd97805f1503010edf06ad.
---
DEPS | 2 +-
third_party/dav1d/dav1d_generated.gni | 4 +---
2 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/DEPS b/DEPS
--- a/DEPS
+++ b/DEPS
@@ -774,7 +774,7 @@ deps = {
Var('chromium_git') + '/angle/angle.git' + '@' + Var('angle_revision'),
'src/third_party/dav1d/libdav1d':
- Var('chromium_git') + '/external/github.com/videolan/dav1d.git' + '@' + '47daa4df3387c1529536243db80b81f3878cbf76',
+ Var('chromium_git') + '/external/github.com/videolan/dav1d.git' + '@' + 'b585f051c365bbada36bd066dd0a8a237fbf9dca',
'src/third_party/dawn':
Var('dawn_git') + '/dawn.git' + '@' + Var('dawn_revision'),
diff --git a/third_party/dav1d/dav1d_generated.gni b/third_party/dav1d/dav1d_generated.gni
--- a/third_party/dav1d/dav1d_generated.gni
+++ b/third_party/dav1d/dav1d_generated.gni
@@ -20,7 +20,7 @@ x86_asm_sources = [
"libdav1d/src/x86/looprestoration.asm",
"libdav1d/src/x86/looprestoration_ssse3.asm",
"libdav1d/src/x86/mc.asm",
- "libdav1d/src/x86/mc_sse.asm",
+ "libdav1d/src/x86/mc_ssse3.asm",
"libdav1d/src/x86/msac.asm",
]
@@ -37,11 +37,9 @@ x86_template_sources = [
arm32_asm_sources = [
"libdav1d/src/arm/32/cdef.S",
"libdav1d/src/arm/32/ipred.S",
- "libdav1d/src/arm/32/itx.S",
"libdav1d/src/arm/32/loopfilter.S",
"libdav1d/src/arm/32/looprestoration.S",
"libdav1d/src/arm/32/mc.S",
- "libdav1d/src/arm/32/msac.S",
"libdav1d/src/arm/32/util.S",
]
--
2.17.1

View file

@ -1,26 +1,26 @@
From: csagan5 <32685696+csagan5@users.noreply.github.com>
Date: Sat, 28 Dec 2019 10:23:04 +0100
Subject: Show site settings for cookies, javascript and ads
Subject: Show site settings for cookies
Avoid displaying info about intrusive ads
---
.../site_settings/SingleWebsiteSettings.java | 59 +++++++++----------
.../browser_ui/site_settings/Website.java | 20 +++++++
2 files changed, 47 insertions(+), 32 deletions(-)
.../site_settings/SingleWebsiteSettings.java | 58 +++++++++----------
.../browser_ui/site_settings/Website.java | 14 +++--
2 files changed, 36 insertions(+), 36 deletions(-)
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
@@ -349,6 +349,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
@@ -418,6 +418,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
setUpSoundPreference(preference);
} else if (i == ContentSettingException.Type.JAVASCRIPT) {
} else if (type == ContentSettingsType.JAVASCRIPT) {
setUpJavascriptPreference(preference);
+ } else if (i == ContentSettingException.Type.COOKIE) {
+ } else if (type == ContentSettingsType.COOKIES) {
+ setUpCookiePreference(preference);
} else {
// ContentSettingException can not be embargoed.
setUpListPreference(preference, mSite.getContentSettingPermission(i),
@@ -671,19 +673,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
setUpListPreference(preference, mSite.getContentSettingPermission(type),
@@ -727,18 +729,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
}
private void setUpAdsInformationalBanner() {
@ -30,8 +30,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
- && WebsitePreferenceBridge.getAdBlockingActivated(
- getSiteSettingsClient().getBrowserContextHandle(),
- mSite.getAddress().getOrigin())
- && findPreference(PERMISSION_PREFERENCE_KEYS[ContentSettingException.Type.ADS])
- != null;
- && findPreference(getPreferenceKey(ContentSettingsType.ADS)) != null;
-
- if (!adBlockingActivated) {
- removePreferenceSafely(PREF_INTRUSIVE_ADS_INFO);
@ -42,10 +41,10 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
}
private SiteSettingsCategory getWarningCategory() {
@@ -838,13 +829,29 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
@@ -899,13 +891,29 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
@ContentSettingValues
@Nullable
Integer currentValue =
mSite.getContentSettingPermission(ContentSettingException.Type.JAVASCRIPT);
Integer currentValue = mSite.getContentSettingPermission(ContentSettingsType.JAVASCRIPT);
- // If Javascript is blocked by default, then always show a Javascript permission.
- // To do this, set it to the default value (blocked).
- if ((currentValue == null)
@ -68,7 +67,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
+ @ContentSettingValues
+ @Nullable
+ Integer currentValue =
+ mSite.getContentSettingPermission(ContentSettingException.Type.COOKIE);
+ mSite.getContentSettingPermission(ContentSettingsType.COOKIES);
+ // Always show the cookies permission
+ if (currentValue == null) {
+ currentValue = WebsitePreferenceBridge.isCategoryEnabled(
@ -79,7 +78,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
}
// Not possible to embargo JAVASCRIPT.
setUpListPreference(preference, currentValue, false /* isEmbargoed */);
@@ -863,22 +870,10 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
@@ -924,22 +932,10 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
setUpListPreference(preference, null, false);
return;
}
@ -89,7 +88,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
- getSiteSettingsClient().getBrowserContextHandle(), mSite.getAddress().getOrigin());
@ContentSettingValues
@Nullable
Integer permission = mSite.getContentSettingPermission(ContentSettingException.Type.ADS);
Integer permission = mSite.getContentSettingPermission(ContentSettingsType.ADS);
- // If |permission| is null, there is no explicit (non-default) permission set for this site.
- // If the site is not considered a candidate for blocking, do the standard thing and remove
@ -105,33 +104,29 @@ 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/Website.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/Website.java
--- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/Website.java
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/Website.java
@@ -220,6 +220,26 @@ public class Website implements Serializable {
} else {
RecordUserAction.record("JavascriptContentSetting.DisableBy.SiteSettings");
@@ -197,13 +197,17 @@ public final class Website implements Serializable {
// ContentSettingsType.
ContentSettingException exception = getContentSettingException(type);
if (type == ContentSettingsType.ADS) {
- // It is possible to set the permission without having an existing exception,
- // because we can show the BLOCK state even when this permission is set to the
- // default. In that case, just set an exception now to BLOCK to enable changing the
- // permission.
+ // It is possible to set the permission without having an existing exception
if (exception == null) {
exception = new ContentSettingException(ContentSettingsType.ADS,
- getAddress().getOrigin(), ContentSettingValues.BLOCK, "");
+ getAddress().getOrigin(), value, "");
+ setContentSettingException(type, exception);
+ }
+ } else if (type == ContentSettingsType.COOKIES) {
+ // It is possible to set the permission without having an existing exception
+ if (exception == null) {
+ exception = new ContentSettingException(ContentSettingsType.COOKIES,
+ getAddress().getOrigin(), value, "");
setContentSettingException(type, exception);
}
+ } else if (type == ContentSettingException.Type.COOKIE) {
+ // It is possible to set the permission without having an existing exception,
+ // because we can show the ALLOW state even when this permission is set to the
+ // default. In that case, just set an exception now to ALLOW to enable changing the
+ // permission.
+ if (mContentSettingException[type] == null) {
+ mContentSettingException[type] =
+ new ContentSettingException(ContentSettingsType.COOKIES,
+ getAddress().getOrigin(), ContentSettingValues.ALLOW, "");
+ }
+ } else if (type == ContentSettingException.Type.JAVASCRIPT) {
+ // It is possible to set the permission without having an existing exception,
+ // because we can show the ALLOW state even when this permission is set to the
+ // default. In that case, just set an exception now to ALLOW to enable changing the
+ // permission.
+ if (mContentSettingException[type] == null) {
+ mContentSettingException[type] =
+ new ContentSettingException(ContentSettingsType.JAVASCRIPT,
+ getAddress().getOrigin(), ContentSettingValues.ALLOW, "");
+ }
} else if (type == ContentSettingException.Type.SOUND) {
// It is possible to set the permission without having an existing exception,
// because we always show the sound permission in Site Settings.
} else if (type == ContentSettingsType.JAVASCRIPT) {
--
2.17.1

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