Release 81.0.4044.127
This commit is contained in:
parent
0170036187
commit
15f047e484
12 changed files with 130 additions and 150 deletions
|
@ -1,3 +1,7 @@
|
|||
# 81.0.4044.127
|
||||
* fix always-incognito crashes (https://github.com/bromite/bromite/issues/132 and https://github.com/bromite/bromite/pull/529)
|
||||
* improved crash uploader mock by calling done callback
|
||||
|
||||
# 81.0.4044.106
|
||||
* remove option to add NTP as homepage (fixes https://github.com/bromite/bromite/issues/517)
|
||||
|
||||
|
|
|
@ -137,8 +137,6 @@ Enable-user-agent-freeze-by-default.patch
|
|||
Disable-AImageReader-for-ARM64-P-and-ARM64-Q.patch
|
||||
Upstream-internal-DownloadCollectionBridge-code.patch
|
||||
Add-missing-android_provider.patch
|
||||
Automated-domain-substitution.patch
|
||||
show-download-prompt-again-by-default.patch
|
||||
disable-browser-autologin-by-default.patch
|
||||
Always-incognito-crashes-fix.patch
|
||||
Enable-incognito-custom-tabs.patch
|
||||
Automated-domain-substitution.patch
|
||||
|
|
|
@ -5,6 +5,7 @@ Subject: Add an always-incognito mode
|
|||
More specifically, add a preference that causes all new tabs and all
|
||||
clicked links to launch as incognito.
|
||||
Make sure initial incognito status is correctly recognized.
|
||||
Enable incognito custom tabs and fix crashes for incognito/custom tab intents (credits to @uazo)
|
||||
---
|
||||
chrome/android/chrome_java_sources.gni | 1 +
|
||||
.../java/res/xml/privacy_preferences.xml | 5 ++
|
||||
|
@ -13,9 +14,13 @@ Make sure initial incognito status is correctly recognized.
|
|||
.../chrome/browser/ChromeTabbedActivity.java | 6 +-
|
||||
.../AppMenuPropertiesDelegateImpl.java | 6 ++
|
||||
.../ChromeContextMenuPopulator.java | 9 ++-
|
||||
.../CustomTabIntentDataProvider.java | 6 ++
|
||||
.../browser/init/StartupTabPreloader.java | 11 ++-
|
||||
.../browser/tabmodel/ChromeTabCreator.java | 20 ++++-
|
||||
.../browser/tabmodel/TabPersistentStore.java | 9 +++
|
||||
.../flags/android/chrome_feature_list.cc | 2 +-
|
||||
.../strings/android_chrome_strings.grd | 7 ++
|
||||
9 files changed, 128 insertions(+), 4 deletions(-)
|
||||
13 files changed, 152 insertions(+), 8 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
|
||||
|
@ -210,6 +215,65 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr
|
|||
if (!mDelegate.isIncognito() && mDelegate.isIncognitoSupported()) {
|
||||
linkTab.add(new ChromeContextMenuItem(Item.OPEN_IN_INCOGNITO_TAB));
|
||||
}
|
||||
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
|
||||
@@ -54,6 +54,9 @@ import org.chromium.components.browser_ui.styles.ChromeColors;
|
||||
import org.chromium.components.browser_ui.widget.TintedDrawable;
|
||||
import org.chromium.ui.util.ColorUtils;
|
||||
|
||||
+import org.chromium.base.ContextUtils;
|
||||
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
|
||||
+
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
import java.util.ArrayList;
|
||||
@@ -456,6 +459,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
|
||||
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
|
||||
@@ -35,6 +35,9 @@ import org.chromium.network.mojom.ReferrerPolicy;
|
||||
import org.chromium.ui.base.PageTransition;
|
||||
import org.chromium.ui.base.WindowAndroid;
|
||||
|
||||
+import org.chromium.base.ContextUtils;
|
||||
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
|
||||
+
|
||||
/**
|
||||
* 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.
|
||||
@@ -173,9 +176,11 @@ public class StartupTabPreloader implements ProfileManager.Observer, Destroyable
|
||||
Intent intent = mIntentSupplier.get();
|
||||
String url = UrlFormatter.fixupUrl(getUrlFromIntent(intent));
|
||||
|
||||
+ boolean isIncognito = ContextUtils.getAppSharedPreferences().getBoolean(AlwaysIncognitoLinkInterceptor.PREF_ALWAYS_INCOGNITO, false);
|
||||
+
|
||||
ChromeTabCreator chromeTabCreator =
|
||||
- (ChromeTabCreator) mTabCreatorManager.getTabCreator(false);
|
||||
- WebContents webContents = WebContentsFactory.createWebContents(false, false);
|
||||
+ (ChromeTabCreator) mTabCreatorManager.getTabCreator(isIncognito);
|
||||
+ WebContents webContents = WebContentsFactory.createWebContents(isIncognito, false);
|
||||
|
||||
mLoadUrlParams = new LoadUrlParams(url);
|
||||
String referrer = IntentHandler.getReferrerUrlIncludingExtraHeaders(intent);
|
||||
@@ -189,7 +194,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)
|
||||
- .setIncognito(false)
|
||||
+ .setIncognito(isIncognito)
|
||||
.setLaunchType(TabLaunchType.FROM_EXTERNAL_APP)
|
||||
.setWindow(mWindowAndroid)
|
||||
.setWebContents(webContents)
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java
|
||||
|
@ -291,6 +355,44 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
|
|||
mTabModel.addTab(tab, index, TabLaunchType.FROM_RESTORE);
|
||||
return tab;
|
||||
}
|
||||
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
|
||||
@@ -45,6 +45,8 @@ import org.chromium.chrome.browser.util.UrlConstants;
|
||||
import org.chromium.content_public.browser.LoadUrlParams;
|
||||
import org.chromium.content_public.browser.UiThreadTaskTraits;
|
||||
|
||||
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
|
||||
+
|
||||
import java.io.BufferedInputStream;
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.ByteArrayOutputStream;
|
||||
@@ -598,6 +600,13 @@ public class TabPersistentStore extends TabPersister {
|
||||
}
|
||||
}
|
||||
|
||||
+ if (ContextUtils.getAppSharedPreferences().getBoolean(AlwaysIncognitoLinkInterceptor.PREF_ALWAYS_INCOGNITO, false)) {
|
||||
+ if (!isIncognito) {
|
||||
+ Log.w(TAG, "Failed to restore tab: not in incognito mode.");
|
||||
+ return;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
TabModel model = mTabModelSelector.getModel(isIncognito);
|
||||
SparseIntArray restoredTabs = isIncognito ? mIncognitoTabsRestored : mNormalTabsRestored;
|
||||
int restoredIndex = 0;
|
||||
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
|
||||
@@ -336,7 +336,7 @@ const base::Feature kCCTExternalLinkHandling{"CCTExternalLinkHandling",
|
||||
base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
|
||||
const base::Feature kCCTIncognito{"CCTIncognito",
|
||||
- base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
+ base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
|
||||
const base::Feature kCCTModule{"CCTModule", base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
|
||||
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
|
||||
|
|
|
@ -1,76 +0,0 @@
|
|||
From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Sun, 19 Apr 2020 16:16:43 +0200
|
||||
Subject: Always-incognito crashes fix
|
||||
|
||||
Credits to @uazo
|
||||
|
||||
---
|
||||
.../chrome/browser/init/StartupTabPreloader.java | 11 ++++++++---
|
||||
.../chrome/browser/tabmodel/TabPersistentStore.java | 9 +++++++++
|
||||
2 files changed, 17 insertions(+), 3 deletions(-)
|
||||
|
||||
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
|
||||
@@ -35,6 +35,9 @@ import org.chromium.network.mojom.ReferrerPolicy;
|
||||
import org.chromium.ui.base.PageTransition;
|
||||
import org.chromium.ui.base.WindowAndroid;
|
||||
|
||||
+import org.chromium.base.ContextUtils;
|
||||
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
|
||||
+
|
||||
/**
|
||||
* 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.
|
||||
@@ -173,9 +176,11 @@ public class StartupTabPreloader implements ProfileManager.Observer, Destroyable
|
||||
Intent intent = mIntentSupplier.get();
|
||||
String url = UrlFormatter.fixupUrl(getUrlFromIntent(intent));
|
||||
|
||||
+ boolean isIncognito = ContextUtils.getAppSharedPreferences().getBoolean(AlwaysIncognitoLinkInterceptor.PREF_ALWAYS_INCOGNITO, false);
|
||||
+
|
||||
ChromeTabCreator chromeTabCreator =
|
||||
- (ChromeTabCreator) mTabCreatorManager.getTabCreator(false);
|
||||
- WebContents webContents = WebContentsFactory.createWebContents(false, false);
|
||||
+ (ChromeTabCreator) mTabCreatorManager.getTabCreator(isIncognito);
|
||||
+ WebContents webContents = WebContentsFactory.createWebContents(isIncognito, false);
|
||||
|
||||
mLoadUrlParams = new LoadUrlParams(url);
|
||||
String referrer = IntentHandler.getReferrerUrlIncludingExtraHeaders(intent);
|
||||
@@ -189,7 +194,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)
|
||||
- .setIncognito(false)
|
||||
+ .setIncognito(isIncognito)
|
||||
.setLaunchType(TabLaunchType.FROM_EXTERNAL_APP)
|
||||
.setWindow(mWindowAndroid)
|
||||
.setWebContents(webContents)
|
||||
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
|
||||
@@ -45,6 +45,8 @@ import org.chromium.chrome.browser.util.UrlConstants;
|
||||
import org.chromium.content_public.browser.LoadUrlParams;
|
||||
import org.chromium.content_public.browser.UiThreadTaskTraits;
|
||||
|
||||
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
|
||||
+
|
||||
import java.io.BufferedInputStream;
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.ByteArrayOutputStream;
|
||||
@@ -598,6 +600,13 @@ public class TabPersistentStore extends TabPersister {
|
||||
}
|
||||
}
|
||||
|
||||
+ if (ContextUtils.getAppSharedPreferences().getBoolean(AlwaysIncognitoLinkInterceptor.PREF_ALWAYS_INCOGNITO, false)) {
|
||||
+ if (!isIncognito) {
|
||||
+ Log.w(TAG, "Failed to restore tab: not in incognito mode.");
|
||||
+ return;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
TabModel model = mTabModelSelector.getModel(isIncognito);
|
||||
SparseIntArray restoredTabs = isIncognito ? mIncognitoTabsRestored : mNormalTabsRestored;
|
||||
int restoredIndex = 0;
|
||||
--
|
||||
2.17.1
|
||||
|
|
@ -5809,7 +5809,7 @@ diff --git a/base/system/sys_info.h b/base/system/sys_info.h
|
|||
diff --git a/base/task/sequence_manager/sequence_manager_impl.cc b/base/task/sequence_manager/sequence_manager_impl.cc
|
||||
--- a/base/task/sequence_manager/sequence_manager_impl.cc
|
||||
+++ b/base/task/sequence_manager/sequence_manager_impl.cc
|
||||
@@ -1170,7 +1170,7 @@ void SequenceManagerImpl::RecordCrashKeys(const PendingTask& pending_task) {
|
||||
@@ -1162,7 +1162,7 @@ void SequenceManagerImpl::RecordCrashKeys(const PendingTask& pending_task) {
|
||||
// this.
|
||||
//
|
||||
// See
|
||||
|
@ -10734,7 +10734,7 @@ diff --git a/chrome/browser/chrome_browser_application_mac.mm b/chrome/browser/c
|
|||
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
|
||||
@@ -3803,7 +3803,7 @@ std::string ChromeContentBrowserClient::GetMetricSuffixForURL(const GURL& url) {
|
||||
@@ -3805,7 +3805,7 @@ std::string ChromeContentBrowserClient::GetMetricSuffixForURL(const GURL& url) {
|
||||
// function could be removed.
|
||||
if (page_load_metrics::IsGoogleSearchResultUrl(url))
|
||||
return "search";
|
||||
|
@ -25353,7 +25353,7 @@ diff --git a/chrome/credential_provider/gaiacp/gaia_credential_base.cc b/chrome/
|
|||
constexpr int kHttpTimeout = 3000; // in milliseconds
|
||||
|
||||
// Names of keys used to fetch the custom attributes from google admin sdk
|
||||
@@ -157,7 +157,7 @@ HRESULT GetExistingAccountMappingFromCD(
|
||||
@@ -146,7 +146,7 @@ HRESULT GetExistingAccountMappingFromCD(
|
||||
std::string escape_url_encoded_email =
|
||||
net::EscapeUrlEncodedData(base::UTF16ToUTF8(email), true);
|
||||
std::string get_cd_user_url = base::StringPrintf(
|
||||
|
@ -25362,7 +25362,7 @@ diff --git a/chrome/credential_provider/gaiacp/gaia_credential_base.cc b/chrome/
|
|||
"%s?projection=full&viewType=domain_public",
|
||||
escape_url_encoded_email.c_str());
|
||||
LOGFN(VERBOSE) << "Encoded URL : " << get_cd_user_url;
|
||||
@@ -463,12 +463,12 @@ HRESULT MakeUsernameForAccount(const base::Value& result,
|
||||
@@ -452,12 +452,12 @@ HRESULT MakeUsernameForAccount(const base::Value& result,
|
||||
DCHECK(is_consumer_account);
|
||||
DCHECK(error_text);
|
||||
|
||||
|
@ -25378,7 +25378,7 @@ diff --git a/chrome/credential_provider/gaiacp/gaia_credential_base.cc b/chrome/
|
|||
|
||||
*is_consumer_account = consumer_domain_pos != base::string16::npos;
|
||||
|
||||
@@ -537,7 +537,7 @@ HRESULT MakeUsernameForAccount(const base::Value& result,
|
||||
@@ -526,7 +526,7 @@ HRESULT MakeUsernameForAccount(const base::Value& result,
|
||||
// restrictive than emails, so some transformations are needed. This tries
|
||||
// to preserve the email as much as possible in the username while respecting
|
||||
// Windows username rules. See remarks in
|
||||
|
@ -38464,7 +38464,7 @@ diff --git a/components/url_formatter/url_formatter.cc b/components/url_formatte
|
|||
// See http://http://unicode.org/reports/tr46/ and references therein/ for more
|
||||
// details.
|
||||
struct UIDNAWrapper {
|
||||
@@ -548,7 +548,7 @@ base::string16 FormatUrlWithAdjustments(
|
||||
@@ -550,7 +550,7 @@ base::string16 FormatUrlWithAdjustments(
|
||||
((format_types & kFormatUrlTrimAfterHost) != 0)) {
|
||||
// Remove the username and password fields. We don't want to display those
|
||||
// to the user since they can be used for attacks,
|
||||
|
|
|
@ -180,7 +180,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/page_load_metrics/browser/page_load_metrics_util.h"
|
||||
#include "components/payments/content/payment_request_display_manager.h"
|
||||
@@ -3815,16 +3813,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
|
||||
@@ -3817,16 +3815,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
|
||||
content::NavigationHandle* handle) {
|
||||
std::vector<std::unique_ptr<content::NavigationThrottle>> throttles;
|
||||
|
||||
|
@ -197,7 +197,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
|
|||
#if BUILDFLAG(ENABLE_PLUGINS)
|
||||
MaybeAddThrottle(&throttles,
|
||||
FlashDownloadInterception::MaybeCreateThrottleFor(handle));
|
||||
@@ -3939,10 +3927,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
|
||||
@@ -3941,10 +3929,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
|
||||
safe_browsing::MaybeCreateNavigationThrottle(handle));
|
||||
#endif
|
||||
|
||||
|
|
|
@ -100,7 +100,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
|
|||
import org.chromium.chrome.browser.externalauth.ExternalAuthUtils;
|
||||
import org.chromium.chrome.browser.flags.ChromeFeatureList;
|
||||
import org.chromium.chrome.browser.net.spdyproxy.DataReductionProxySettings;
|
||||
@@ -820,20 +819,8 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid
|
||||
@@ -826,20 +825,8 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid
|
||||
// even receive the extras for using the feature.
|
||||
if (componentName == null) return false;
|
||||
|
||||
|
|
|
@ -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
|
||||
@@ -460,13 +460,13 @@ bool IDNToUnicodeOneComponent(const base::char16* comp,
|
||||
@@ -462,13 +462,13 @@ bool IDNToUnicodeOneComponent(const base::char16* comp,
|
||||
} // namespace
|
||||
|
||||
const FormatUrlType kFormatUrlOmitNothing = 0;
|
||||
|
|
|
@ -718,7 +718,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
|
|||
command_line->AppendSwitch(
|
||||
switches::kDisableClientSidePhishingDetection);
|
||||
}
|
||||
@@ -3965,6 +3951,7 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
|
||||
@@ -3967,6 +3953,7 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
|
||||
throttles.push_back(std::make_unique<PolicyBlacklistNavigationThrottle>(
|
||||
handle, handle->GetWebContents()->GetBrowserContext()));
|
||||
|
||||
|
@ -726,7 +726,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
|
|||
// Before setting up SSL error detection, configure SSLErrorHandler to invoke
|
||||
// the relevant extension API whenever an SSL interstitial is shown.
|
||||
SSLErrorHandler::SetClientCallbackOnInterstitialsShown(
|
||||
@@ -3973,6 +3960,7 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
|
||||
@@ -3975,6 +3962,7 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
|
||||
handle,
|
||||
std::make_unique<CertificateReportingServiceCertReporter>(web_contents),
|
||||
base::BindOnce(&HandleSSLErrorWrapper), base::BindOnce(&IsInHostedApp)));
|
||||
|
@ -734,7 +734,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
|
|||
|
||||
throttles.push_back(std::make_unique<LoginNavigationThrottle>(handle));
|
||||
|
||||
@@ -3992,11 +3980,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
|
||||
@@ -3994,11 +3982,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
|
||||
GooglePasswordManagerNavigationThrottle::MaybeCreateThrottleFor(handle));
|
||||
#endif
|
||||
|
||||
|
@ -746,7 +746,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
|
|||
|
||||
#if defined(OS_WIN) || defined(OS_MACOSX) || \
|
||||
(defined(OS_LINUX) && !defined(OS_CHROMEOS))
|
||||
@@ -4995,6 +4978,7 @@ ChromeContentBrowserClient::GetSafeBrowsingUrlCheckerDelegate(
|
||||
@@ -4997,6 +4980,7 @@ ChromeContentBrowserClient::GetSafeBrowsingUrlCheckerDelegate(
|
||||
bool safe_browsing_enabled_for_profile) {
|
||||
DCHECK_CURRENTLY_ON(BrowserThread::IO);
|
||||
|
||||
|
@ -754,7 +754,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
|
|||
if (!safe_browsing_enabled_for_profile)
|
||||
return nullptr;
|
||||
|
||||
@@ -5007,6 +4991,9 @@ ChromeContentBrowserClient::GetSafeBrowsingUrlCheckerDelegate(
|
||||
@@ -5009,6 +4993,9 @@ ChromeContentBrowserClient::GetSafeBrowsingUrlCheckerDelegate(
|
||||
}
|
||||
|
||||
return safe_browsing_url_checker_delegate_;
|
||||
|
|
|
@ -1,48 +0,0 @@
|
|||
From: uazo <uazo@users.noreply.github.com>
|
||||
Date: Wed, 22 Apr 2020 18:57:01 +0200
|
||||
Subject: Enable incognito custom tabs
|
||||
|
||||
Fixes https://github.com/bromite/bromite/issues/132 and crashes introduced for the fix of https://github.com/bromite/bromite/issues/453
|
||||
---
|
||||
.../browser/customtabs/CustomTabIntentDataProvider.java | 6 ++++++
|
||||
chrome/browser/flags/android/chrome_feature_list.cc | 2 +-
|
||||
2 files changed, 7 insertions(+), 1 deletion(-)
|
||||
|
||||
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
|
||||
@@ -53,6 +53,9 @@ import org.chromium.components.browser_ui.styles.ChromeColors;
|
||||
import org.chromium.components.browser_ui.widget.TintedDrawable;
|
||||
import org.chromium.ui.util.ColorUtils;
|
||||
|
||||
+import org.chromium.base.ContextUtils;
|
||||
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
|
||||
+
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
import java.util.ArrayList;
|
||||
@@ -455,6 +458,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
|
||||
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
|
||||
@@ -337,7 +337,7 @@ const base::Feature kCCTExternalLinkHandling{"CCTExternalLinkHandling",
|
||||
base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
|
||||
const base::Feature kCCTIncognito{"CCTIncognito",
|
||||
- base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
+ base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
|
||||
const base::Feature kCCTModule{"CCTModule", base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
|
||||
--
|
||||
2.17.1
|
||||
|
|
@ -9,16 +9,16 @@ Subject: Never send any crash upload data
|
|||
diff --git a/chrome/browser/tracing/crash_service_uploader.cc b/chrome/browser/tracing/crash_service_uploader.cc
|
||||
--- a/chrome/browser/tracing/crash_service_uploader.cc
|
||||
+++ b/chrome/browser/tracing/crash_service_uploader.cc
|
||||
@@ -124,6 +124,9 @@ void TraceCrashServiceUploader::DoUpload(
|
||||
std::unique_ptr<const base::DictionaryValue> metadata,
|
||||
const UploadProgressCallback& progress_callback,
|
||||
@@ -126,6 +126,9 @@ void TraceCrashServiceUploader::DoUpload(
|
||||
UploadDoneCallback done_callback) {
|
||||
+
|
||||
+ return;
|
||||
+
|
||||
DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
|
||||
|
||||
+ std::move(done_callback).Run(false, "crash uploads are disabled");
|
||||
+ return;
|
||||
+
|
||||
progress_callback_ = progress_callback;
|
||||
done_callback_ = std::move(done_callback);
|
||||
|
||||
--
|
||||
2.17.1
|
||||
|
||||
|
|
|
@ -1459,7 +1459,7 @@ 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"
|
||||
@@ -1204,18 +1188,6 @@ android:value="true" />
|
||||
@@ -1200,18 +1184,6 @@ android:value="true" />
|
||||
{% endif %}
|
||||
|
||||
{% block extra_application_definitions %}
|
||||
|
|
Loading…
Add table
Reference in a new issue