Release 89.0.4389.78

This commit is contained in:
csagan5 2021-03-09 00:42:09 +01:00
parent 6c2412b39d
commit a55c7672af
28 changed files with 1877 additions and 1947 deletions

View file

@ -1,7 +1,17 @@
# 89.0.4389.78
* make all favicon requests on-demand
* restored older icon for view source menu item
* prevent adblock filters update check on app start (fixes https://github.com/bromite/bromite/issues/967)
* removed UI for adblock filters (fixes https://github.com/bromite/bromite/issues/941)
* dropped patch for swapped favicons bug
* dropped patch to enable reduced-referrer-granularity by default (already present upstream)
* dropped password reuse detection patch
* dropped UA customization patch
* enabled PartitionExpectCTStateByNetworkIsolationKey and PartitionDomainReliabilityByNetworkIsolationKey (fixes https://github.com/bromite/bromite/issues/985)
# 88.0.4324.207
* add flag for save-data-header
* add option to force tablet UI
* fix bug with wrong last checked time (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/941)
* fix bug with adblock filters not being downloaded correctly (fixes https://github.com/bromite/bromite/issues/960)
* move up bookmark all tabs menu item (fixes https://github.com/bromite/bromite/issues/943)
* fix icons for exit and view source menu items

View file

@ -57,6 +57,7 @@ ETH donations address: `0xf47ff39223d828f99fec5ab53bd068c5c0522042`
## Features not related to privacy
* import/export bookmarks
* bookmark all tabs from tabs regroup menu
* flag to allow screenshots of incognito tabs
* allow playing videos in background tabs and disable pause on switching tabs
* all codecs included (proprietary, open H.264 etc.)

View file

@ -1 +1 @@
88.0.4324.207
89.0.4389.78

View file

@ -145,4 +145,5 @@ Enable-app-overflow-menu-icons-by-default.patch
Add-menu-item-to-bookmark-all-tabs.patch
Add-flag-for-save-data-header.patch
Add-option-to-force-tablet-UI.patch
Make-all-favicon-requests-on-demand.patch
Automated-domain-substitution.patch

View file

@ -11,7 +11,7 @@ for SimpleURLLoaders as well.
---
chrome/android/java/res/values/values.xml | 3 +
.../java/res/xml/privacy_preferences.xml | 4 +
.../privacy/settings/PrivacySettings.java | 6 +-
.../privacy/settings/PrivacySettings.java | 5 +-
.../chrome_autocomplete_provider_client.cc | 2 +
chrome/browser/browser_resources.grd | 6 +
chrome/browser/net/proxy_service_factory.cc | 23 +-
@ -33,7 +33,7 @@ for SimpleURLLoaders as well.
.../proxy_config/proxy_config_dictionary.h | 7 +-
net/proxy_resolution/proxy_config.cc | 52 ++-
net/proxy_resolution/proxy_config.h | 3 +
24 files changed, 998 insertions(+), 15 deletions(-)
24 files changed, 997 insertions(+), 15 deletions(-)
create mode 100644 chrome/browser/resources/proxy_config.css
create mode 100644 chrome/browser/resources/proxy_config.html
create mode 100644 chrome/browser/resources/proxy_config.js
@ -70,7 +70,13 @@ 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/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
@@ -54,7 +54,9 @@ public class PrivacySettings
@@ -51,12 +51,15 @@ public class PrivacySettings
private static final String PREF_PRIVACY_SANDBOX = "privacy_sandbox";
public static final String PREF_ALLOW_CUSTOM_TAB_INTENTS = "allow_custom_tab_intents";
private static final String PREF_CLOSE_TABS_ON_EXIT = "close_tabs_on_exit";
+ private static final String PREF_PROXY_OPTIONS = "proxy";
private static final String[] NEW_PRIVACY_PREFERENCE_ORDER = {PREF_CLEAR_BROWSING_DATA,
PREF_ALWAYS_INCOGNITO,
PREF_CAN_MAKE_PAYMENT, PREF_NETWORK_PREDICTIONS,
PREF_CLOSE_TABS_ON_EXIT,
PREF_SECURE_DNS, PREF_DO_NOT_TRACK, PREF_PRIVACY_SANDBOX,
@ -81,15 +87,6 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
private ManagedPreferenceDelegate mManagedPreferenceDelegate;
@@ -62,6 +64,8 @@ public class PrivacySettings
private static final String PREF_CLOSE_TABS_ON_EXIT = "close_tabs_on_exit";
+ private static final String PREF_PROXY_OPTIONS = "proxy";
+
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
PrivacyPreferencesManagerImpl privacyPrefManager =
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

View file

@ -147,7 +147,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;
@@ -1639,8 +1640,9 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -1633,8 +1634,9 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
Bundle savedInstanceState = getSavedInstanceState();
// We determine the model as soon as possible so every systems get initialized coherently.
@ -170,7 +170,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
import org.chromium.chrome.browser.dependency_injection.ChromeActivityComponent;
import org.chromium.chrome.browser.dependency_injection.ModuleFactoryOverrides;
import org.chromium.chrome.browser.device.DeviceClassManager;
@@ -1596,6 +1597,9 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -1590,6 +1591,9 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
throw new IllegalStateException(
"Attempting to access TabCreator before initialization");
}

View file

@ -402,7 +402,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
]
configs += [
@@ -3442,8 +3446,6 @@ static_library("browser") {
@@ -3440,8 +3444,6 @@ static_library("browser") {
"badging/badge_manager_factory.h",
"banners/app_banner_manager_desktop.cc",
"banners/app_banner_manager_desktop.h",

View file

@ -3,11 +3,11 @@ Date: Wed, 29 Aug 2018 11:03:44 +0200
Subject: Add custom tab intents privacy option
---
.../android/java/res/xml/privacy_preferences.xml | 5 +++++
.../chrome/browser/LaunchIntentDispatcher.java | 4 ++++
.../browser/privacy/settings/PrivacySettings.java | 14 +++++++++++++-
.../ui/android/strings/android_chrome_strings.grd | 7 +++++++
4 files changed, 29 insertions(+), 1 deletion(-)
chrome/android/java/res/xml/privacy_preferences.xml | 5 +++++
.../chrome/browser/LaunchIntentDispatcher.java | 4 ++++
.../browser/privacy/settings/PrivacySettings.java | 13 ++++++++++++-
.../ui/android/strings/android_chrome_strings.grd | 7 +++++++
4 files changed, 28 insertions(+), 1 deletion(-)
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
@ -48,7 +48,11 @@ 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
@@ -49,10 +49,13 @@ public class PrivacySettings
@@ -46,10 +46,12 @@ public class PrivacySettings
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_PRIVACY_SANDBOX = "privacy_sandbox";
+ public static final String PREF_ALLOW_CUSTOM_TAB_INTENTS = "allow_custom_tab_intents";
private static final String[] NEW_PRIVACY_PREFERENCE_ORDER = {PREF_CLEAR_BROWSING_DATA,
PREF_ALWAYS_INCOGNITO,
PREF_CAN_MAKE_PAYMENT, PREF_NETWORK_PREDICTIONS,
@ -58,12 +62,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
private ManagedPreferenceDelegate mManagedPreferenceDelegate;
+ public static final String PREF_ALLOW_CUSTOM_TAB_INTENTS = "allow_custom_tab_intents";
+
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
PrivacyPreferencesManagerImpl privacyPrefManager =
@@ -105,6 +108,10 @@ public class PrivacySettings
@@ -105,6 +107,10 @@ public class PrivacySettings
} else if (PREF_NETWORK_PREDICTIONS.equals(key)) {
PrivacyPreferencesManagerImpl.getInstance().setNetworkPredictionEnabled(
(boolean) newValue);
@ -74,7 +73,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
}
return true;
@@ -128,6 +135,11 @@ public class PrivacySettings
@@ -128,6 +134,11 @@ public class PrivacySettings
canMakePaymentPref.setChecked(prefService.getBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED));
}

View file

@ -58,7 +58,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
import org.chromium.chrome.browser.app.tabmodel.AsyncTabParamsManagerSingleton;
import org.chromium.chrome.browser.app.tabmodel.ChromeNextTabPolicySupplier;
import org.chromium.chrome.browser.app.tabmodel.TabWindowManagerSingleton;
@@ -1827,6 +1828,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -1821,6 +1822,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
} else if (id == R.id.close_tab) {
getCurrentTabModel().closeTab(currentTab, true, false, true);
RecordUserAction.record("MobileTabClosed");
@ -78,7 +78,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
import org.chromium.chrome.browser.ChromeActivitySessionTracker;
import org.chromium.chrome.browser.ChromeApplication;
import org.chromium.chrome.browser.ChromeWindow;
@@ -1984,6 +1985,11 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -1978,6 +1979,11 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
RecordUserAction.record("MobileMenuSettings");
}

View file

@ -47,15 +47,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
private static final String PREF_CAN_MAKE_PAYMENT = "can_make_payment";
private static final String PREF_NETWORK_PREDICTIONS = "preload_pages";
private static final String PREF_SECURE_DNS = "secure_dns";
@@ -51,6 +54,7 @@ public class PrivacySettings
private static final String PREF_PRIVACY_SANDBOX = "privacy_sandbox";
@@ -54,6 +57,7 @@ public class PrivacySettings
private static final String PREF_PROXY_OPTIONS = "proxy";
private static final String[] NEW_PRIVACY_PREFERENCE_ORDER = {PREF_CLEAR_BROWSING_DATA,
PREF_ALWAYS_INCOGNITO,
+ PREF_INCOGNITO_TAB_HISTORY_ENABLED,
PREF_CAN_MAKE_PAYMENT, PREF_NETWORK_PREDICTIONS,
PREF_CLOSE_TABS_ON_EXIT,
PREF_SECURE_DNS, PREF_DO_NOT_TRACK, PREF_PRIVACY_SANDBOX,
@@ -106,6 +110,11 @@ public class PrivacySettings
@@ -103,6 +107,11 @@ public class PrivacySettings
Preference secureDnsPref = findPreference(PREF_SECURE_DNS);
secureDnsPref.setVisible(SecureDnsSettings.isUiEnabled());
@ -67,7 +67,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
updateSummaries();
}
@@ -126,6 +135,9 @@ public class PrivacySettings
@@ -123,6 +132,9 @@ public class PrivacySettings
SharedPreferences.Editor sharedPreferencesEditor = ContextUtils.getAppSharedPreferences().edit();
sharedPreferencesEditor.putBoolean(PREF_ALLOW_CUSTOM_TAB_INTENTS, (boolean)newValue);
sharedPreferencesEditor.apply();
@ -77,7 +77,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
}
return true;
@@ -170,6 +182,13 @@ public class PrivacySettings
@@ -167,6 +179,13 @@ public class PrivacySettings
(ChromeSwitchPreference) findPreference(PREF_CLOSE_TABS_ON_EXIT);
closeTabsOnExitPref.setOnPreferenceChangeListener(this);
closeTabsOnExitPref.setManagedPreferenceDelegate(mManagedPreferenceDelegate);
@ -164,7 +164,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse
#include "chrome/browser/android/bookmarks/partner_bookmarks_shim.h"
#include "chrome/browser/android/explore_sites/history_statistics_reporter.h"
#include "chrome/browser/android/ntp/recent_tabs_page_prefs.h"
@@ -969,6 +971,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
@@ -968,6 +970,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
variations::VariationsService::RegisterProfilePrefs(registry);
video_tutorials::RegisterPrefs(registry);
feed::prefs::RegisterFeedSharedProfilePrefs(registry);
@ -191,7 +191,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
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
@@ -3152,6 +3152,11 @@ const char kShowCaretBrowsingDialog[] =
@@ -3155,6 +3155,11 @@ const char kShowCaretBrowsingDialog[] =
const char kLacrosAllowed[] = "lacros_allowed";
#endif
@ -206,7 +206,7 @@ diff --git a/chrome/common/pref_names.cc b/chrome/common/pref_names.cc
diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h
--- a/chrome/common/pref_names.h
+++ b/chrome/common/pref_names.h
@@ -1115,6 +1115,10 @@ extern const char kCartModuleRemoved[];
@@ -1116,6 +1116,10 @@ extern const char kCartModuleRemoved[];
extern const char kCartModuleWelcomeSurfaceShownTimes[];
#endif

View file

@ -3,6 +3,7 @@ Date: Thu, 18 Feb 2021 21:22:52 +0100
Subject: Add menu item to bookmark all tabs
---
chrome/android/java/res/menu/main_menu.xml | 6 ++
.../java/res/menu/main_menu_regroup.xml | 3 +
.../chrome/browser/ChromeTabbedActivity.java | 23 +++++++
.../browser/bookmarks/BookmarkBridge.java | 62 +++++++++++++++++++
@ -18,8 +19,31 @@ Subject: Add menu item to bookmark all tabs
components/bookmarks/browser/bookmark_model.h | 7 +++
components/bookmarks/browser/bookmark_node.cc | 13 ++++
components/bookmarks/browser/bookmark_node.h | 5 ++
15 files changed, 157 insertions(+), 1 deletion(-)
16 files changed, 163 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
@@ -57,6 +57,9 @@
<item android:id="@+id/all_bookmarks_menu_id"
android:title="@string/menu_bookmarks"
android:icon="@drawable/btn_star_filled" />
+ <item android:id="@+id/bookmark_all_tabs_menu_id"
+ android:title="@string/menu_bookmark_all_tabs"
+ android:icon="@drawable/ic_folder_blue_24dp" />
<item android:id="@+id/recent_tabs_menu_id"
android:title="@string/menu_recent_tabs"
android:icon="@drawable/devices_black_24dp" />
@@ -146,6 +149,9 @@
<item android:id="@+id/track_prices_row_menu_id"
android:title="@string/menu_track_prices"
android:icon="@drawable/ic_trending_down_black" />
+ <item android:id="@+id/bookmark_all_tabs_menu_id"
+ android:title="@string/menu_bookmark_all_tabs"
+ android:icon="@drawable/ic_folder_blue_24dp" />
<item android:id="@id/preferences_id"
android:title="@string/menu_settings"
android:icon="@drawable/settings_cog" />
diff --git a/chrome/android/java/res/menu/main_menu_regroup.xml b/chrome/android/java/res/menu/main_menu_regroup.xml
--- a/chrome/android/java/res/menu/main_menu_regroup.xml
+++ b/chrome/android/java/res/menu/main_menu_regroup.xml
@ -45,7 +69,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
import org.chromium.chrome.browser.bookmarks.BookmarkUtils;
import org.chromium.chrome.browser.compositor.CompositorViewHolder;
import org.chromium.chrome.browser.compositor.bottombar.ephemeraltab.EphemeralTabCoordinator;
@@ -1838,6 +1840,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -1832,6 +1834,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
// Close both incognito and normal tabs
getTabModelSelector().closeAllTabs();
RecordUserAction.record("MobileMenuCloseAllTabs");
@ -54,7 +78,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
} else if (id == R.id.close_all_incognito_tabs_menu_id) {
// Close only incognito tabs
getTabModelSelector().getModel(true).closeAllTabs();
@@ -1874,6 +1878,25 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -1868,6 +1872,25 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
mTabModalHandler.onOmniboxFocusChanged(hasFocus);
}

View file

@ -55,7 +55,7 @@ diff --git a/chrome/android/java/res/menu/main_menu_regroup.xml b/chrome/android
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
@@ -1856,6 +1856,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -1850,6 +1850,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
NewTabPageUma.recordAction(NewTabPageUma.ACTION_OPENED_DOWNLOADS_MANAGER);
}
RecordUserAction.record("MobileMenuDownloadManager");
@ -67,7 +67,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
@@ -2109,6 +2109,8 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -2082,6 +2082,8 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
} catch (ActivityNotFoundException e) {
Toast.makeText(context, R.string.open_webapk_failed, Toast.LENGTH_SHORT).show();
}

View file

@ -3,11 +3,11 @@ Date: Sat, 7 Sep 2019 15:07:42 +0200
Subject: Add option to not persist tabs across sessions
---
.../java/res/xml/privacy_preferences.xml | 5 +++++
.../chrome/browser/ChromeTabbedActivity.java | 4 +++-
.../privacy/settings/PrivacySettings.java | 17 ++++++++++++++++-
.../android/strings/android_chrome_strings.grd | 6 ++++++
4 files changed, 30 insertions(+), 2 deletions(-)
.../android/java/res/xml/privacy_preferences.xml | 5 +++++
.../chrome/browser/ChromeTabbedActivity.java | 4 +++-
.../privacy/settings/PrivacySettings.java | 16 +++++++++++++++-
.../android/strings/android_chrome_strings.grd | 6 ++++++
4 files changed, 29 insertions(+), 2 deletions(-)
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
@ -27,7 +27,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
@@ -1118,8 +1118,10 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -1112,8 +1112,10 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
boolean hadCipherData =
CipherFactory.getInstance().restoreFromBundle(getSavedInstanceState());
@ -59,7 +59,11 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
import org.chromium.chrome.R;
import org.chromium.chrome.browser.feedback.HelpAndFeedbackLauncherImpl;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
@@ -49,6 +52,7 @@ public class PrivacySettings
@@ -47,9 +50,11 @@ public class PrivacySettings
private static final String PREF_CLEAR_BROWSING_DATA = "clear_browsing_data";
private static final String PREF_PRIVACY_SANDBOX = "privacy_sandbox";
public static final String PREF_ALLOW_CUSTOM_TAB_INTENTS = "allow_custom_tab_intents";
+ private static final String PREF_CLOSE_TABS_ON_EXIT = "close_tabs_on_exit";
private static final String[] NEW_PRIVACY_PREFERENCE_ORDER = {PREF_CLEAR_BROWSING_DATA,
PREF_ALWAYS_INCOGNITO,
PREF_CAN_MAKE_PAYMENT, PREF_NETWORK_PREDICTIONS,
@ -67,16 +71,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
PREF_SECURE_DNS, PREF_DO_NOT_TRACK, PREF_PRIVACY_SANDBOX,
PREF_ALLOW_CUSTOM_TAB_INTENTS};
@@ -56,6 +60,8 @@ public class PrivacySettings
public static final String PREF_ALLOW_CUSTOM_TAB_INTENTS = "allow_custom_tab_intents";
+ private static final String PREF_CLOSE_TABS_ON_EXIT = "close_tabs_on_exit";
+
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
PrivacyPreferencesManagerImpl privacyPrefManager =
@@ -102,7 +108,11 @@ public class PrivacySettings
@@ -101,7 +106,11 @@ public class PrivacySettings
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
String key = preference.getKey();
@ -89,7 +84,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
UserPrefs.get(Profile.getLastUsedRegularProfile())
.setBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED, (boolean) newValue);
} else if (PREF_NETWORK_PREDICTIONS.equals(key)) {
@@ -151,6 +161,11 @@ public class PrivacySettings
@@ -150,6 +159,11 @@ public class PrivacySettings
if (secureDnsPref != null && secureDnsPref.isVisible()) {
secureDnsPref.setSummary(SecureDnsSettings.getSummary(getContext()));
}

View file

@ -3964,7 +3964,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources
</message>
<message name="IDS_FONT_ACCESS_CHOOSER_NO_FONTS_FOUND_PROMPT" desc="The label shown to the user to inform them that no fonts were found matching the requirements that the application provided.">
No matching font found.
@@ -10481,7 +10481,7 @@ Please help our engineers fix this problem. Tell us what happened right before y
@@ -10445,7 +10445,7 @@ Please help our engineers fix this problem. Tell us what happened right before y
<if expr="is_android">
<message name="IDS_SECURITY_KEY_ATTESTATION_INFOBAR_QUESTION" desc="An infobar prompt shown to a user when a website wants to see information that identifies the user's Security Key, such as make and model number. The 'make' of a device is the brand name of the manufacturer, e.g. Yubikey is a make of Security Key. The 'model' of a device is the specific product, e.g. Yubikey Neo is a model of Security Key.">
<ph name="URL">
@ -3973,7 +3973,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources
</ph> wants to see the make and model of your Security Key
</message>
</if>
@@ -10656,13 +10656,13 @@ Please help our engineers fix this problem. Tell us what happened right before y
@@ -10620,13 +10620,13 @@ Please help our engineers fix this problem. Tell us what happened right before y
<!-- Web-modal dialog shown during Web Authenticaton API requests. -->
<if expr="is_win or is_macosx or desktop_linux or chromeos">
<message name="IDS_WEBAUTHN_GENERIC_TITLE" desc="Title of most dialogs shown while the user is authenticating on a web site using a security key.">
@ -3989,7 +3989,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources
</message>
<message name="IDS_WEBAUTHN_TRANSPORT_SELECTION_DESCRIPTION" desc="Description in the dialog instructing the user to choose how they want to connect their security key with their computer, e.g. USB or Bluetooth.">
Pick an option
@@ -10850,7 +10850,7 @@ Please help our engineers fix this problem. Tell us what happened right before y
@@ -10814,7 +10814,7 @@ Please help our engineers fix this problem. Tell us what happened right before y
</message>
<!-- WebAuthn account selection for resident keys -->
@ -3998,7 +3998,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources
Select an account to sign in
</message>
<message name="IDS_WEBAUTHN_UNKNOWN_ACCOUNT" desc="Label shown to the user on the list of account names if the account stored does not have a name associated to it.">
@@ -10863,7 +10863,7 @@ Please help our engineers fix this problem. Tell us what happened right before y
@@ -10827,7 +10827,7 @@ Please help our engineers fix this problem. Tell us what happened right before y
Your security key can't be used with this site
</message>
<message name="IDS_WEBAUTHN_ERROR_MISSING_CAPABILITY_DESC" desc="The description on a dialog informing the user that the security key (an external physical device for user authentication) that they selected does not support some capability that the site requested.">
@ -4007,7 +4007,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources
</message>
<message name="IDS_WEBAUTHN_STORAGE_FULL_DESC" desc="The description on a dialog informing the user that the security key (an external physical device for user authentication) that they selected does not have enough storage capacity to create the requested account.">
Your security key does not have enough space for any more accounts.
@@ -10872,7 +10872,7 @@ Please help our engineers fix this problem. Tell us what happened right before y
@@ -10836,7 +10836,7 @@ Please help our engineers fix this problem. Tell us what happened right before y
Allow this site to see your security key?
</message>
<message name="IDS_WEBAUTHN_REQUEST_ATTESTATION_PERMISSION_DESC" desc="The description on a dialog informing the user that the website wants to see information that identifies the user's Security Key, such as make and model number. The 'make' of a device is the brand name of the manufacturer, e.g. Yubikey is a make of Security Key. The 'model' of a device is the specific product, e.g. Yubikey Neo is a model of Security Key.">
@ -4016,7 +4016,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources
</message>
<message name="IDS_WEBAUTHN_ALLOW_ATTESTATION" desc="Label on button to allow a website to see information that identifies the user's Security Key, such as make and model number. The 'make' of a device is the brand name of the manufacturer, e.g. Yubikey is a make of Security Key. The 'model' of a device is the specific product, e.g. Yubikey Neo is a model of Security Key.">
Allow
@@ -11059,7 +11059,7 @@ Please help our engineers fix this problem. Tell us what happened right before y
@@ -11023,7 +11023,7 @@ Please help our engineers fix this problem. Tell us what happened right before y
<!-- App uninstall prompt for Google -->
<message name="IDS_APP_UNINSTALL_PROMPT_REMOVE_DATA_CHECKBOX_FOR_GOOGLE" desc="Checkbox text to ask the user whether they want to remove associated data at uninstall time for Google hostnames. Only used when uninstalling an app associated with a Google hostname.">
@ -4025,7 +4025,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources
</message>
<message name="IDS_APP_UNINSTALL_PROMPT_LEARN_MORE" desc="The label that the user can click to learn more about removing associated data at uninstall time.">
@@ -11148,7 +11148,7 @@ Please help our engineers fix this problem. Tell us what happened right before y
@@ -11112,7 +11112,7 @@ Please help our engineers fix this problem. Tell us what happened right before y
<message name="IDS_MAC_SYSTEM_INFOBAR_LINK_URL_ARM"
desc="Mac system-specific infobar link for Arm64-on-Arm64."
translateable="false">
@ -4034,7 +4034,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources
</message>
<message name="IDS_MAC_SYSTEM_INFOBAR_LINK_TEXT_ROSETTA"
desc="Mac system-specific infobar link text for Intel-on-Arm64."
@@ -11158,7 +11158,7 @@ Please help our engineers fix this problem. Tell us what happened right before y
@@ -11122,7 +11122,7 @@ Please help our engineers fix this problem. Tell us what happened right before y
<message name="IDS_MAC_SYSTEM_INFOBAR_LINK_URL_ROSETTA"
desc="Mac system-specific infobar link for Intel-on-Arm64."
translateable="false">

File diff suppressed because it is too large Load diff

View file

@ -13,8 +13,6 @@ Disable CrowdDeny feature
.../EnhancedProtectionPromoUtils.java | 3 +-
.../privacy/settings/PrivacySettings.java | 50 +------------
.../SafeBrowsingSettingsLauncher.java | 9 ---
.../sync/settings/GoogleServicesSettings.java | 10 +--
.../settings/SyncAndServicesSettings.java | 15 +---
.../android/chrome_main_delegate_android.cc | 1 +
chrome/browser/BUILD.gn | 23 ------
chrome/browser/about_flags.cc | 2 +-
@ -45,7 +43,7 @@ Disable CrowdDeny feature
.../lookalike_url_controller_client.cc | 4 --
.../metrics/chrome_metrics_service_client.cc | 3 -
...ial_comparison_cert_verifier_controller.cc | 3 -
.../chrome_password_manager_client.cc | 2 +
.../chrome_password_manager_client.cc | 25 +------
...ve_origin_permission_revocation_request.cc | 2 +
.../permissions/chrome_permissions_client.cc | 15 ----
.../permissions/chrome_permissions_client.h | 3 -
@ -74,10 +72,10 @@ Disable CrowdDeny feature
.../content/captive_portal_blocking_page.cc | 7 --
.../content/cert_report_helper.cc | 2 -
.../unified_consent_service.cc | 2 +-
.../native_file_system_file_writer_impl.cc | 59 +--------------
.../native_file_system_file_writer_impl.cc | 42 +----------
.../native_file_system_file_writer_impl.h | 9 +--
.../file_system_access_permission_context.h | 6 --
71 files changed, 180 insertions(+), 732 deletions(-)
69 files changed, 179 insertions(+), 714 deletions(-)
diff --git a/chrome/android/java/res/xml/google_services_preferences.xml b/chrome/android/java/res/xml/google_services_preferences.xml
--- a/chrome/android/java/res/xml/google_services_preferences.xml
@ -330,114 +328,6 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/safe_browsing/S
- SettingsAccessPoint.SECURITY_INTERSTITIAL));
}
}
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/sync/settings/GoogleServicesSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/sync/settings/GoogleServicesSettings.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/sync/settings/GoogleServicesSettings.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/sync/settings/GoogleServicesSettings.java
@@ -29,7 +29,6 @@ import org.chromium.chrome.browser.preferences.Pref;
import org.chromium.chrome.browser.preferences.SharedPreferencesManager;
import org.chromium.chrome.browser.privacy.settings.PrivacyPreferencesManagerImpl;
import org.chromium.chrome.browser.profiles.Profile;
-import org.chromium.chrome.browser.safe_browsing.SafeBrowsingBridge;
import org.chromium.chrome.browser.settings.ChromeManagedPreferenceDelegate;
import org.chromium.chrome.browser.signin.services.IdentityServicesProvider;
import org.chromium.chrome.browser.signin.services.SigninManager;
@@ -252,9 +251,6 @@ public class GoogleServicesSettings
} else if (PREF_PASSWORD_LEAK_DETECTION.equals(key)) {
assert !mIsSecurityPreferenceRemoved;
mPrefService.setBoolean(Pref.PASSWORD_LEAK_DETECTION_ENABLED, (boolean) newValue);
- } else if (PREF_SAFE_BROWSING_SCOUT_REPORTING.equals(key)) {
- assert !mIsSecurityPreferenceRemoved;
- SafeBrowsingBridge.setSafeBrowsingExtendedReportingEnabled((boolean) newValue);
} else if (PREF_NAVIGATION_ERROR.equals(key)) {
mPrefService.setBoolean(Pref.ALTERNATE_ERROR_PAGES_ENABLED, (boolean) newValue);
} else if (PREF_USAGE_AND_CRASH_REPORTING.equals(key)) {
@@ -307,8 +303,7 @@ public class GoogleServicesSettings
assert !mIsSecurityPreferenceRemoved;
boolean safe_browsing_enabled = mPrefService.getBoolean(Pref.SAFE_BROWSING_ENABLED);
mSafeBrowsingReporting.setEnabled(safe_browsing_enabled);
- mSafeBrowsingReporting.setChecked(safe_browsing_enabled
- && SafeBrowsingBridge.isSafeBrowsingExtendedReportingEnabled());
+ mSafeBrowsingReporting.setChecked(safe_browsing_enabled);
boolean has_token_for_leak_check = PasswordUIView.hasAccountForLeakCheckRequest();
boolean leak_detection_enabled =
@@ -338,9 +333,6 @@ public class GoogleServicesSettings
if (PREF_SEARCH_SUGGESTIONS.equals(key)) {
return mPrefService.isManagedPreference(Pref.SEARCH_SUGGEST_ENABLED);
}
- if (PREF_SAFE_BROWSING_SCOUT_REPORTING.equals(key)) {
- return SafeBrowsingBridge.isSafeBrowsingExtendedReportingManaged();
- }
if (PREF_SAFE_BROWSING.equals(key)) {
return mPrefService.isManagedPreference(Pref.SAFE_BROWSING_ENABLED);
}
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
@@ -47,7 +47,6 @@ import org.chromium.chrome.browser.preferences.Pref;
import org.chromium.chrome.browser.preferences.SharedPreferencesManager;
import org.chromium.chrome.browser.privacy.settings.PrivacyPreferencesManagerImpl;
import org.chromium.chrome.browser.profiles.Profile;
-import org.chromium.chrome.browser.safe_browsing.SafeBrowsingBridge;
import org.chromium.chrome.browser.settings.ChromeManagedPreferenceDelegate;
import org.chromium.chrome.browser.settings.SettingsActivity;
import org.chromium.chrome.browser.signin.services.IdentityServicesProvider;
@@ -108,8 +107,6 @@ public class SyncAndServicesSettings extends PreferenceFragmentCompat
public static final String PREF_SAFE_BROWSING = "safe_browsing";
@VisibleForTesting
public static final String PREF_PASSWORD_LEAK_DETECTION = "password_leak_detection";
- @VisibleForTesting
- public static final String PREF_SAFE_BROWSING_SCOUT_REPORTING = "safe_browsing_scout_reporting";
private static final String PREF_USAGE_AND_CRASH_REPORTING = "usage_and_crash_reports";
private static final String PREF_URL_KEYED_ANONYMIZED_DATA = "url_keyed_anonymized_data";
private static final String PREF_CONTEXTUAL_SEARCH = "contextual_search";
@@ -221,7 +218,6 @@ public class SyncAndServicesSettings extends PreferenceFragmentCompat
if (mIsSafeBrowsingPreferenceRemoved) {
removePreference(servicesCategory, findPreference(PREF_SAFE_BROWSING));
removePreference(servicesCategory, findPreference(PREF_PASSWORD_LEAK_DETECTION));
- removePreference(servicesCategory, findPreference(PREF_SAFE_BROWSING_SCOUT_REPORTING));
mSafeBrowsing = null;
mPasswordLeakDetection = null;
mSafeBrowsingReporting = null;
@@ -235,8 +231,6 @@ public class SyncAndServicesSettings extends PreferenceFragmentCompat
mPasswordLeakDetection.setOnPreferenceChangeListener(this);
mPasswordLeakDetection.setManagedPreferenceDelegate(mManagedPreferenceDelegate);
- mSafeBrowsingReporting =
- (ChromeSwitchPreference) findPreference(PREF_SAFE_BROWSING_SCOUT_REPORTING);
mSafeBrowsingReporting.setOnPreferenceChangeListener(this);
mSafeBrowsingReporting.setManagedPreferenceDelegate(mManagedPreferenceDelegate);
}
@@ -403,9 +397,6 @@ public class SyncAndServicesSettings extends PreferenceFragmentCompat
} else if (PREF_PASSWORD_LEAK_DETECTION.equals(key)) {
assert !mIsSafeBrowsingPreferenceRemoved;
mPrefService.setBoolean(Pref.PASSWORD_LEAK_DETECTION_ENABLED, (boolean) newValue);
- } else if (PREF_SAFE_BROWSING_SCOUT_REPORTING.equals(key)) {
- assert !mIsSafeBrowsingPreferenceRemoved;
- SafeBrowsingBridge.setSafeBrowsingExtendedReportingEnabled((boolean) newValue);
} else if (PREF_NAVIGATION_ERROR.equals(key)) {
mPrefService.setBoolean(Pref.ALTERNATE_ERROR_PAGES_ENABLED, (boolean) newValue);
} else if (PREF_USAGE_AND_CRASH_REPORTING.equals(key)) {
@@ -659,8 +650,7 @@ public class SyncAndServicesSettings extends PreferenceFragmentCompat
assert !mIsSafeBrowsingPreferenceRemoved;
boolean safe_browsing_enabled = mPrefService.getBoolean(Pref.SAFE_BROWSING_ENABLED);
mSafeBrowsingReporting.setEnabled(safe_browsing_enabled);
- mSafeBrowsingReporting.setChecked(safe_browsing_enabled
- && SafeBrowsingBridge.isSafeBrowsingExtendedReportingEnabled());
+ mSafeBrowsingReporting.setChecked(safe_browsing_enabled);
boolean has_token_for_leak_check = PasswordUIView.hasAccountForLeakCheckRequest();
boolean leak_detection_enabled =
@@ -687,9 +677,6 @@ public class SyncAndServicesSettings extends PreferenceFragmentCompat
if (PREF_SEARCH_SUGGESTIONS.equals(key)) {
return mPrefService.isManagedPreference(Pref.SEARCH_SUGGEST_ENABLED);
}
- if (PREF_SAFE_BROWSING_SCOUT_REPORTING.equals(key)) {
- return SafeBrowsingBridge.isSafeBrowsingExtendedReportingManaged();
- }
if (PREF_SAFE_BROWSING.equals(key)) {
return mPrefService.isManagedPreference(Pref.SAFE_BROWSING_ENABLED);
}
diff --git a/chrome/app/android/chrome_main_delegate_android.cc b/chrome/app/android/chrome_main_delegate_android.cc
--- a/chrome/app/android/chrome_main_delegate_android.cc
+++ b/chrome/app/android/chrome_main_delegate_android.cc
@ -1746,7 +1636,53 @@ diff --git a/chrome/browser/net/trial_comparison_cert_verifier_controller.cc b/c
diff --git a/chrome/browser/password_manager/chrome_password_manager_client.cc b/chrome/browser/password_manager/chrome_password_manager_client.cc
--- a/chrome/browser/password_manager/chrome_password_manager_client.cc
+++ b/chrome/browser/password_manager/chrome_password_manager_client.cc
@@ -1463,6 +1463,7 @@ bool ChromePasswordManagerClient::IsPasswordManagementEnabledForCurrentPage(
@@ -831,21 +831,13 @@ autofill::LanguageCode ChromePasswordManagerClient::GetPageLanguage() const {
safe_browsing::PasswordProtectionService*
ChromePasswordManagerClient::GetPasswordProtectionService() const {
- return safe_browsing::ChromePasswordProtectionService::
- GetPasswordProtectionService(profile_);
+ return nullptr;
}
#if defined(ON_FOCUS_PING_ENABLED)
void ChromePasswordManagerClient::CheckSafeBrowsingReputation(
const GURL& form_action,
const GURL& frame_url) {
- safe_browsing::PasswordProtectionService* pps =
- GetPasswordProtectionService();
- if (pps) {
- pps->MaybeStartPasswordFieldOnFocusRequest(
- web_contents(), web_contents()->GetLastCommittedURL(), form_action,
- frame_url, pps->GetAccountInfo().hosted_domain);
- }
}
#endif // defined(ON_FOCUS_PING_ENABLED)
@@ -855,22 +847,9 @@ void ChromePasswordManagerClient::CheckProtectedPasswordEntry(
const std::vector<password_manager::MatchingReusedCredential>&
matching_reused_credentials,
bool password_field_exists) {
- safe_browsing::PasswordProtectionService* pps =
- GetPasswordProtectionService();
- if (!pps)
- return;
-
- pps->MaybeStartProtectedPasswordEntryRequest(
- web_contents(), web_contents()->GetLastCommittedURL(), username,
- password_type, matching_reused_credentials, password_field_exists);
}
void ChromePasswordManagerClient::LogPasswordReuseDetectedEvent() {
- safe_browsing::PasswordProtectionService* pps =
- GetPasswordProtectionService();
- if (pps) {
- pps->MaybeLogPasswordReuseDetectedEvent(web_contents());
- }
}
ukm::SourceId ChromePasswordManagerClient::GetUkmSourceId() {
@@ -1463,6 +1442,7 @@ bool ChromePasswordManagerClient::IsPasswordManagementEnabledForCurrentPage(
is_enabled = false;
}
@ -1754,7 +1690,7 @@ diff --git a/chrome/browser/password_manager/chrome_password_manager_client.cc b
// SafeBrowsing Delayed Warnings experiment can delay some SafeBrowsing
// warnings until user interaction. If the current page has a delayed warning,
// it'll have a user interaction observer attached. Disable password
@@ -1473,6 +1474,7 @@ bool ChromePasswordManagerClient::IsPasswordManagementEnabledForCurrentPage(
@@ -1473,6 +1453,7 @@ bool ChromePasswordManagerClient::IsPasswordManagementEnabledForCurrentPage(
observer->OnPasswordSaveOrAutofillDenied();
is_enabled = false;
}
@ -2581,7 +2517,7 @@ diff --git a/content/browser/file_system_access/native_file_system_file_writer_i
auto_close_(auto_close) {
DCHECK_EQ(swap_url.type(), url.type());
receiver_.set_disconnect_handler(base::BindOnce(
@@ -513,63 +512,7 @@ void NativeFileSystemFileWriterImpl::CloseImpl(CloseCallback callback) {
@@ -513,15 +512,7 @@ void NativeFileSystemFileWriterImpl::CloseImpl(CloseCallback callback) {
close_callback_ = std::move(callback);
@ -2594,25 +2530,14 @@ diff --git a/content/browser/file_system_access/native_file_system_file_writer_i
- ComputeHashForSwapFile(
- base::BindOnce(&NativeFileSystemFileWriterImpl::DoAfterWriteCheck,
- weak_factory_.GetWeakPtr()));
-}
-
-void NativeFileSystemFileWriterImpl::AbortImpl(AbortCallback callback) {
- DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
- if (is_close_pending()) {
- std::move(callback).Run(native_file_system_error::FromStatus(
- FileSystemAccessStatus::kInvalidState,
- "An attempt was made to abort an already closing writer."));
- return;
- }
-
- auto_close_ = false;
-
- std::move(callback).Run(native_file_system_error::Ok());
-
- // |this| is deleted after this call.
- manager()->RemoveFileWriter(this);
-}
-
+ DidAfterWriteCheck(FileSystemAccessPermissionContext::AfterWriteCheckResult::kAllow);
}
void NativeFileSystemFileWriterImpl::AbortImpl(AbortCallback callback) {
@@ -541,37 +532,6 @@ void NativeFileSystemFileWriterImpl::AbortImpl(AbortCallback callback) {
manager()->RemoveFileWriter(this);
}
-// static
-void NativeFileSystemFileWriterImpl::DoAfterWriteCheck(
- base::File::Error hash_result,
@ -2642,10 +2567,11 @@ diff --git a/content/browser/file_system_access/native_file_system_file_writer_i
- std::move(item), context().frame_id,
- base::BindOnce(&NativeFileSystemFileWriterImpl::DidAfterWriteCheck,
- weak_factory_.GetWeakPtr()));
+ DidAfterWriteCheck(FileSystemAccessPermissionContext::AfterWriteCheckResult::kAllow);
}
-}
-
void NativeFileSystemFileWriterImpl::DidAfterWriteCheck(
FileSystemAccessPermissionContext::AfterWriteCheckResult result) {
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
diff --git a/content/browser/file_system_access/native_file_system_file_writer_impl.h b/content/browser/file_system_access/native_file_system_file_writer_impl.h
--- a/content/browser/file_system_access/native_file_system_file_writer_impl.h
+++ b/content/browser/file_system_access/native_file_system_file_writer_impl.h

View file

@ -3,10 +3,9 @@ Date: Mon, 11 Nov 2019 23:09:48 +0100
Subject: Disable sync services menu entry
---
chrome/android/java/res/xml/main_preferences.xml | 11 ++---------
chrome/android/java/res/xml/privacy_preferences.xml | 5 -----
.../browser/sync/settings/SyncSettingsUtils.java | 3 +++
3 files changed, 5 insertions(+), 14 deletions(-)
chrome/android/java/res/xml/main_preferences.xml | 11 ++---------
chrome/android/java/res/xml/privacy_preferences.xml | 5 -----
2 files changed, 2 insertions(+), 14 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
@ -49,19 +48,6 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi
- app:allowDividerBelow="false"
- android:order="8"/>
</PreferenceScreen>
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/sync/settings/SyncSettingsUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/sync/settings/SyncSettingsUtils.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/sync/settings/SyncSettingsUtils.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/sync/settings/SyncSettingsUtils.java
@@ -208,6 +208,9 @@ public class SyncSettingsUtils {
*/
public static String getSyncStatusSummary(Context context) {
Resources res = context.getResources();
+ if (true) {
+ res.getString(R.string.sync_is_disabled);
+ }
if (!IdentityServicesProvider.get()
.getIdentityManager(Profile.getLastUsedRegularProfile())
--
2.17.1

View file

@ -4,15 +4,16 @@ Subject: Enable network isolation features
Enable SplitCacheByNetworkIsolationKey, kSplitHostCacheByNetworkIsolationKey,
kPartitionConnectionsByNetworkIsolationKey, kPartitionHttpServerPropertiesByNetworkIsolationKey,
kPartitionSSLSessionsByNetworkIsolationKey
kPartitionSSLSessionsByNetworkIsolationKey, PartitionExpectCTStateByNetworkIsolationKey,
PartitionNelAndReportingByNetworkIsolationKey
---
net/base/features.cc | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
net/base/features.cc | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/net/base/features.cc b/net/base/features.cc
--- a/net/base/features.cc
+++ b/net/base/features.cc
@@ -71,22 +71,22 @@ const base::Feature kNetworkQualityEstimator{"NetworkQualityEstimator",
@@ -71,30 +71,30 @@ const base::Feature kNetworkQualityEstimator{"NetworkQualityEstimator",
base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kSplitCacheByNetworkIsolationKey{
@ -40,6 +41,16 @@ diff --git a/net/base/features.cc b/net/base/features.cc
const base::Feature kPartitionExpectCTStateByNetworkIsolationKey{
"PartitionExpectCTStateByNetworkIsolationKey",
- base::FEATURE_DISABLED_BY_DEFAULT};
+ base::FEATURE_ENABLED_BY_DEFAULT};
const base::Feature kPartitionNelAndReportingByNetworkIsolationKey{
"PartitionNelAndReportingByNetworkIsolationKey",
- base::FEATURE_DISABLED_BY_DEFAULT};
+ base::FEATURE_ENABLED_BY_DEFAULT};
const base::Feature kExpectCTPruning{"ExpectCTPruning",
base::FEATURE_ENABLED_BY_DEFAULT};
--
2.17.1

View file

@ -0,0 +1,54 @@
From: Francois Marier <francois@brave.com>
Date: Tue, 14 Jul 2020 17:39:44 -0700
Subject: Make all favicon requests on-demand
This patch can be dropped once https://crbug.com/1096660 is fixed
as long as the test is retained and still passes.
---
components/favicon/core/favicon_database.cc | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/components/favicon/core/favicon_database.cc b/components/favicon/core/favicon_database.cc
--- a/components/favicon/core/favicon_database.cc
+++ b/components/favicon/core/favicon_database.cc
@@ -504,6 +504,7 @@ FaviconBitmapID FaviconDatabase::AddFaviconBitmap(
base::Time time,
const gfx::Size& pixel_size) {
DCHECK(icon_id);
+ type = FaviconBitmapType::ON_DEMAND; // Make all icons ON_DEMAND.
sql::Statement statement(db_.GetCachedStatement(
SQL_FROM_HERE,
@@ -558,8 +559,8 @@ bool FaviconDatabase::SetFaviconBitmap(
} else {
statement.BindNull(0);
}
- statement.BindInt64(1, time.ToDeltaSinceWindowsEpoch().InMicroseconds());
- statement.BindInt64(2, 0);
+ statement.BindInt64(1, 0);
+ statement.BindInt64(2, time.ToDeltaSinceWindowsEpoch().InMicroseconds());
statement.BindInt64(3, bitmap_id);
return statement.Run();
@@ -568,7 +569,7 @@ bool FaviconDatabase::SetFaviconBitmap(
bool FaviconDatabase::SetFaviconBitmapLastUpdateTime(FaviconBitmapID bitmap_id,
base::Time time) {
DCHECK(bitmap_id);
- // By updating last_updated timestamp, we assume the icon is of type ON_VISIT.
+ /* By updating last_updated timestamp, we assume the icon is of type ON_VISIT.
// If it is ON_DEMAND, reset last_requested to 0 and thus silently change the
// type to ON_VISIT.
sql::Statement statement(
@@ -578,7 +579,8 @@ bool FaviconDatabase::SetFaviconBitmapLastUpdateTime(FaviconBitmapID bitmap_id,
statement.BindInt64(0, time.ToDeltaSinceWindowsEpoch().InMicroseconds());
statement.BindInt64(1, 0);
statement.BindInt64(2, bitmap_id);
- return statement.Run();
+ return statement.Run(); */
+ return true;
}
bool FaviconDatabase::TouchOnDemandFavicon(const GURL& icon_url,
--
2.17.1

View file

@ -5,8 +5,8 @@ Subject: Move some account settings back to privacy settings
Search suggestions, autofill assistant and contextual search
---
.../java/res/xml/privacy_preferences.xml | 20 ++++++
.../privacy/settings/PrivacySettings.java | 62 ++++++++++++++++++-
2 files changed, 80 insertions(+), 2 deletions(-)
.../privacy/settings/PrivacySettings.java | 64 ++++++++++++++++++-
2 files changed, 82 insertions(+), 2 deletions(-)
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
@ -53,7 +53,21 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
/**
* Fragment to keep track of the all the privacy related preferences.
*/
@@ -59,7 +66,8 @@ public class PrivacySettings
@@ -55,6 +62,13 @@ public class PrivacySettings
public static final String PREF_ALLOW_CUSTOM_TAB_INTENTS = "allow_custom_tab_intents";
private static final String PREF_CLOSE_TABS_ON_EXIT = "close_tabs_on_exit";
private static final String PREF_PROXY_OPTIONS = "proxy";
+
+ // moved from SyncAndServicesSettings.java
+ private static final String PREF_SERVICES_CATEGORY = "services_category";
+ private static final String PREF_SEARCH_SUGGESTIONS = "search_suggestions";
+ private static final String PREF_CONTEXTUAL_SEARCH = "contextual_search";
+ public static final String PREF_AUTOFILL_ASSISTANT = "autofill_assistant";
+
private static final String[] NEW_PRIVACY_PREFERENCE_ORDER = {PREF_CLEAR_BROWSING_DATA,
PREF_ALWAYS_INCOGNITO,
PREF_INCOGNITO_TAB_HISTORY_ENABLED,
@@ -62,11 +76,19 @@ public class PrivacySettings
PREF_CLOSE_TABS_ON_EXIT,
PREF_SECURE_DNS, PREF_DO_NOT_TRACK, PREF_PRIVACY_SANDBOX,
PREF_ALLOW_CUSTOM_TAB_INTENTS,
@ -63,15 +77,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
};
private ManagedPreferenceDelegate mManagedPreferenceDelegate;
@@ -70,6 +78,18 @@ public class PrivacySettings
private static final String PREF_PROXY_OPTIONS = "proxy";
+ // moved from SyncAndServicesSettings.java
+ private static final String PREF_SERVICES_CATEGORY = "services_category";
+ private static final String PREF_SEARCH_SUGGESTIONS = "search_suggestions";
+ private static final String PREF_CONTEXTUAL_SEARCH = "contextual_search";
+ public static final String PREF_AUTOFILL_ASSISTANT = "autofill_assistant";
+ private ChromeSwitchPreference mSearchSuggestions;
+ private @Nullable ChromeSwitchPreference mAutofillAssistant;
+ private @Nullable Preference mContextualSearch;
@ -82,7 +88,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
PrivacyPreferencesManagerImpl privacyPrefManager =
@@ -96,6 +116,29 @@ public class PrivacySettings
@@ -93,6 +115,29 @@ public class PrivacySettings
mManagedPreferenceDelegate = createManagedPreferenceDelegate();
@ -112,7 +118,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
ChromeSwitchPreference canMakePaymentPref =
(ChromeSwitchPreference) findPreference(PREF_CAN_MAKE_PAYMENT);
canMakePaymentPref.setOnPreferenceChangeListener(this);
@@ -128,6 +171,11 @@ public class PrivacySettings
@@ -125,6 +170,11 @@ public class PrivacySettings
} else if (PREF_CAN_MAKE_PAYMENT.equals(key)) {
UserPrefs.get(Profile.getLastUsedRegularProfile())
.setBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED, (boolean) newValue);
@ -124,7 +130,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
} else if (PREF_NETWORK_PREDICTIONS.equals(key)) {
PrivacyPreferencesManagerImpl.getInstance().setNetworkPredictionEnabled(
(boolean) newValue);
@@ -143,6 +191,16 @@ public class PrivacySettings
@@ -140,6 +190,16 @@ public class PrivacySettings
return true;
}
@ -141,7 +147,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
@Override
public void onResume() {
super.onResume();
@@ -153,7 +211,7 @@ public class PrivacySettings
@@ -150,7 +210,7 @@ public class PrivacySettings
* Updates the summaries for several preferences.
*/
public void updateSummaries() {

View file

@ -37,7 +37,6 @@ Parts of this patch were developed by csagan5, uazo and others.
.../inline/InlineUpdateControllerFactory.java | 16 -
.../inline/PlayInlineUpdateController.java | 226 +-----------
.../settings/PasswordSettings.java | 14 -
.../services/gcm/GCMBackgroundTask.java | 1 -
.../browser/webauth/AuthenticatorImpl.java | 29 +-
.../modules/chrome_feature_modules.gni | 3 -
.../browser/signin/services/android/BUILD.gn | 1 -
@ -53,7 +52,6 @@ Parts of this patch were developed by csagan5, uazo and others.
components/gcm_driver/android/BUILD.gn | 1 -
.../gcm_driver/instance_id/android/BUILD.gn | 3 -
.../instance_id/InstanceIDBridge.java | 49 +--
.../instance_id/InstanceIDWithSubtype.java | 26 +-
.../media_router/browser/android/BUILD.gn | 9 -
.../media_router/BrowserMediaRouter.java | 18 +-
.../media_router/CastSessionUtil.java | 35 --
@ -86,17 +84,12 @@ Parts of this patch were developed by csagan5, uazo and others.
remoting/android/client_java_tmpl.gni | 3 -
services/BUILD.gn | 9 -
services/device/geolocation/BUILD.gn | 3 -
.../geolocation/LocationProviderGmsCore.java | 102 +-----
services/shape_detection/BUILD.gn | 4 -
.../shape_detection/BarcodeDetectionImpl.java | 114 +-----
.../BarcodeDetectionProviderImpl.java | 31 +-
.../FaceDetectionImplGmsCore.java | 30 +-
.../shape_detection/TextDetectionImpl.java | 24 +-
third_party/android_deps/BUILD.gn | 344 +-----------------
.../gms/ChromiumPlayServicesAvailability.java | 10 +-
third_party/android_sdk/BUILD.gn | 3 -
third_party/google_android_play_core/BUILD.gn | 5 -
77 files changed, 85 insertions(+), 2686 deletions(-)
70 files changed, 66 insertions(+), 2377 deletions(-)
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
@ -257,7 +250,7 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java
"java/src/org/chromium/chrome/browser/ChromeBackupAgentImpl.java",
"java/src/org/chromium/chrome/browser/ChromeBackupWatcher.java",
"java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java",
@@ -1218,10 +1217,6 @@ chrome_java_sources = [
@@ -1211,10 +1210,6 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/searchwidget/SearchWidgetProvider.java",
"java/src/org/chromium/chrome/browser/send_tab_to_self/SendTabToSelfShareActivity.java",
"java/src/org/chromium/chrome/browser/services/AccountsChangedReceiver.java",
@ -268,7 +261,7 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java
"java/src/org/chromium/chrome/browser/settings/MainSettings.java",
"java/src/org/chromium/chrome/browser/settings/SettingsActivity.java",
"java/src/org/chromium/chrome/browser/settings/SettingsLauncherImpl.java",
@@ -1509,9 +1504,6 @@ chrome_java_sources = [
@@ -1472,9 +1467,6 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/webapps/addtohomescreen/AddToHomescreenViewBinder.java",
"java/src/org/chromium/chrome/browser/webauth/AuthenticatorFactory.java",
"java/src/org/chromium/chrome/browser/webauth/AuthenticatorImpl.java",
@ -430,7 +423,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/AppHooks.java b
import org.chromium.base.ContextUtils;
import org.chromium.base.annotations.CalledByNative;
import org.chromium.chrome.browser.banners.AppDetailsDelegate;
@@ -294,16 +291,7 @@ public abstract class AppHooks {
@@ -293,16 +290,7 @@ public abstract class AppHooks {
* same as {@link GoogleApiAvailability#isGooglePlayServicesAvailable()}.
*/
public int isGoogleApiAvailableWithMinApkVersion(int minApkVersion) {
@ -1412,17 +1405,6 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage
}
private Context getStyledContext() {
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/services/gcm/GCMBackgroundTask.java b/chrome/android/java/src/org/chromium/chrome/browser/services/gcm/GCMBackgroundTask.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/services/gcm/GCMBackgroundTask.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/services/gcm/GCMBackgroundTask.java
@@ -42,7 +42,6 @@ public class GCMBackgroundTask implements BackgroundTask {
return false;
}
- ChromeGcmListenerServiceImpl.dispatchMessageToDriver(message);
return false;
}
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webauth/AuthenticatorImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/webauth/AuthenticatorImpl.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/webauth/AuthenticatorImpl.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/webauth/AuthenticatorImpl.java
@ -2282,85 +2264,6 @@ diff --git a/components/gcm_driver/instance_id/android/java/src/org/chromium/com
return doBackgroundWork();
}
@Override
diff --git a/components/gcm_driver/instance_id/android/java/src/org/chromium/components/gcm_driver/instance_id/InstanceIDWithSubtype.java b/components/gcm_driver/instance_id/android/java/src/org/chromium/components/gcm_driver/instance_id/InstanceIDWithSubtype.java
--- a/components/gcm_driver/instance_id/android/java/src/org/chromium/components/gcm_driver/instance_id/InstanceIDWithSubtype.java
+++ b/components/gcm_driver/instance_id/android/java/src/org/chromium/components/gcm_driver/instance_id/InstanceIDWithSubtype.java
@@ -10,8 +10,6 @@ import android.text.TextUtils;
import androidx.annotation.VisibleForTesting;
-import com.google.android.gms.iid.InstanceID;
-
import org.chromium.base.ContextUtils;
import java.io.IOException;
@@ -26,8 +24,6 @@ public class InstanceIDWithSubtype {
// Must match the private InstanceID.OPTION_SUBTYPE, which is guaranteed to not change.
private static final String OPTION_SUBTYPE = "subtype";
- private final InstanceID mInstanceID;
-
/**
* Cached instances. May be accessed from multiple threads; synchronize on sSubtypeInstancesLock
*/
@@ -39,10 +35,6 @@ public class InstanceIDWithSubtype {
@VisibleForTesting
protected static FakeFactory sFakeFactoryForTesting;
- protected InstanceIDWithSubtype(InstanceID instanceID) {
- mInstanceID = instanceID;
- }
-
/**
* Returns an instance of this class. Unlike {@link InstanceID#getInstance(Context)}, it is not
* a singleton, but instead a different instance will be returned for each {@code subtype}.
@@ -58,11 +50,6 @@ public class InstanceIDWithSubtype {
if (sFakeFactoryForTesting != null) {
existing = sFakeFactoryForTesting.create(subtype);
} else {
- Bundle options = new Bundle();
- options.putCharSequence(OPTION_SUBTYPE, subtype);
- InstanceID instanceID =
- InstanceID.getInstance(ContextUtils.getApplicationContext(), options);
- existing = new InstanceIDWithSubtype(instanceID);
}
sSubtypeInstances.put(subtype, existing);
}
@@ -71,30 +58,25 @@ public class InstanceIDWithSubtype {
}
public String getSubtype() {
- return mInstanceID.getSubtype();
+ return "";
}
public String getId() {
- return mInstanceID.getId();
+ return "";
}
public long getCreationTime() {
- return mInstanceID.getCreationTime();
+ return 0;
}
public void deleteInstanceID() throws IOException {
- synchronized (sSubtypeInstancesLock) {
- sSubtypeInstances.remove(mInstanceID.getSubtype());
- mInstanceID.deleteInstanceID();
- }
}
public void deleteToken(String authorizedEntity, String scope) throws IOException {
- mInstanceID.deleteToken(authorizedEntity, scope);
}
public String getToken(String authorizedEntity, String scope) throws IOException {
- return mInstanceID.getToken(authorizedEntity, scope);
+ return "";
}
/** Fake subclasses can set {@link #sFakeFactoryForTesting} to an implementation of this. */
diff --git a/components/media_router/browser/android/BUILD.gn b/components/media_router/browser/android/BUILD.gn
--- a/components/media_router/browser/android/BUILD.gn
+++ b/components/media_router/browser/android/BUILD.gn
@ -4017,155 +3920,6 @@ diff --git a/services/device/geolocation/BUILD.gn b/services/device/geolocation/
"//base:base_java",
"//base:jni_java",
"//components/location/android:location_java",
diff --git a/services/device/geolocation/android/java/src/org/chromium/device/geolocation/LocationProviderGmsCore.java b/services/device/geolocation/android/java/src/org/chromium/device/geolocation/LocationProviderGmsCore.java
--- a/services/device/geolocation/android/java/src/org/chromium/device/geolocation/LocationProviderGmsCore.java
+++ b/services/device/geolocation/android/java/src/org/chromium/device/geolocation/LocationProviderGmsCore.java
@@ -8,132 +8,40 @@ import android.content.Context;
import android.location.Location;
import android.os.Bundle;
-import com.google.android.gms.common.ConnectionResult;
-import com.google.android.gms.common.api.GoogleApiClient;
-import com.google.android.gms.common.api.GoogleApiClient.ConnectionCallbacks;
-import com.google.android.gms.common.api.GoogleApiClient.OnConnectionFailedListener;
-import com.google.android.gms.location.FusedLocationProviderApi;
-import com.google.android.gms.location.LocationListener;
-import com.google.android.gms.location.LocationRequest;
-import com.google.android.gms.location.LocationServices;
-
import org.chromium.base.Log;
import org.chromium.base.ThreadUtils;
import org.chromium.components.location.LocationUtils;
-import org.chromium.gms.ChromiumPlayServicesAvailability;
/**
* This is a LocationProvider using Google Play Services.
*
* https://developers.google.com/android/reference/com/google/android/gms/location/package-summary
*/
-public class LocationProviderGmsCore implements ConnectionCallbacks, OnConnectionFailedListener,
- LocationListener, LocationProvider {
+public class LocationProviderGmsCore implements LocationProvider {
private static final String TAG = "LocationProvider";
// Values for the LocationRequest's setInterval for normal and high accuracy, respectively.
private static final long UPDATE_INTERVAL_MS = 1000;
private static final long UPDATE_INTERVAL_FAST_MS = 500;
- private final GoogleApiClient mGoogleApiClient;
- private FusedLocationProviderApi mLocationProviderApi = LocationServices.FusedLocationApi;
-
- private boolean mEnablehighAccuracy;
- private LocationRequest mLocationRequest;
-
public static boolean isGooglePlayServicesAvailable(Context context) {
- return ChromiumPlayServicesAvailability.isGooglePlayServicesAvailable(context);
+ return false;
}
LocationProviderGmsCore(Context context) {
Log.i(TAG, "Google Play Services");
- mGoogleApiClient = new GoogleApiClient.Builder(context)
- .addApi(LocationServices.API)
- .addConnectionCallbacks(this)
- .addOnConnectionFailedListener(this)
- .build();
- assert mGoogleApiClient != null;
- }
-
- LocationProviderGmsCore(GoogleApiClient client, FusedLocationProviderApi locationApi) {
- mGoogleApiClient = client;
- mLocationProviderApi = locationApi;
- }
-
- // ConnectionCallbacks implementation
- @Override
- public void onConnected(Bundle connectionHint) {
- ThreadUtils.assertOnUiThread();
-
- mLocationRequest = LocationRequest.create();
- if (mEnablehighAccuracy) {
- // With enableHighAccuracy, request a faster update interval and configure the provider
- // for high accuracy mode.
- mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY)
- .setInterval(UPDATE_INTERVAL_FAST_MS);
- } else {
- // Use balanced mode by default. In this mode, the API will prefer the network provider
- // but may use sensor data (for instance, GPS) if high accuracy is requested by another
- // app.
- //
- // If location is configured for sensors-only then elevate the priority to ensure GPS
- // and other sensors are used.
- if (LocationUtils.getInstance().isSystemLocationSettingSensorsOnly()) {
- mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
- } else {
- mLocationRequest.setPriority(LocationRequest.PRIORITY_BALANCED_POWER_ACCURACY);
- }
- mLocationRequest.setInterval(UPDATE_INTERVAL_MS);
- }
-
- final Location location = mLocationProviderApi.getLastLocation(mGoogleApiClient);
- if (location != null) {
- LocationProviderAdapter.onNewLocationAvailable(location);
- }
-
- try {
- // Request updates on UI Thread replicating LocationProviderAndroid's behaviour.
- mLocationProviderApi.requestLocationUpdates(
- mGoogleApiClient, mLocationRequest, this, ThreadUtils.getUiThreadLooper());
- } catch (IllegalStateException | SecurityException e) {
- // IllegalStateException is thrown "If this method is executed in a thread that has not
- // called Looper.prepare()". SecurityException is thrown if there is no permission, see
- // https://crbug.com/731271.
- Log.e(TAG, " mLocationProviderApi.requestLocationUpdates() " + e);
- LocationProviderAdapter.newErrorAvailable(
- "Failed to request location updates: " + e.toString());
- assert false;
- }
- }
-
- @Override
- public void onConnectionSuspended(int cause) {}
-
- // OnConnectionFailedListener implementation
- @Override
- public void onConnectionFailed(ConnectionResult result) {
- LocationProviderAdapter.newErrorAvailable(
- "Failed to connect to Google Play Services: " + result.toString());
}
// LocationProvider implementation
@Override
public void start(boolean enableHighAccuracy) {
ThreadUtils.assertOnUiThread();
- if (mGoogleApiClient.isConnected()) mGoogleApiClient.disconnect();
-
mEnablehighAccuracy = enableHighAccuracy;
- mGoogleApiClient.connect(); // Should return via onConnected().
}
@Override
public void stop() {
ThreadUtils.assertOnUiThread();
- if (!mGoogleApiClient.isConnected()) return;
-
- mLocationProviderApi.removeLocationUpdates(mGoogleApiClient, this);
-
- mGoogleApiClient.disconnect();
}
@Override
@@ -142,10 +50,4 @@ public class LocationProviderGmsCore implements ConnectionCallbacks, OnConnectio
if (mGoogleApiClient == null) return false;
return mGoogleApiClient.isConnecting() || mGoogleApiClient.isConnected();
}
-
- // LocationListener implementation
- @Override
- public void onLocationChanged(Location location) {
- LocationProviderAdapter.onNewLocationAvailable(location);
- }
}
diff --git a/services/shape_detection/BUILD.gn b/services/shape_detection/BUILD.gn
--- a/services/shape_detection/BUILD.gn
+++ b/services/shape_detection/BUILD.gn
@ -4180,351 +3934,6 @@ diff --git a/services/shape_detection/BUILD.gn b/services/shape_detection/BUILD.
"//base:base_java",
"//mojo/public/java:base_java",
"//mojo/public/java:bindings_java",
diff --git a/services/shape_detection/android/java/src/org/chromium/shape_detection/BarcodeDetectionImpl.java b/services/shape_detection/android/java/src/org/chromium/shape_detection/BarcodeDetectionImpl.java
--- a/services/shape_detection/android/java/src/org/chromium/shape_detection/BarcodeDetectionImpl.java
+++ b/services/shape_detection/android/java/src/org/chromium/shape_detection/BarcodeDetectionImpl.java
@@ -8,10 +8,6 @@ import android.graphics.Point;
import android.graphics.Rect;
import android.util.SparseArray;
-import com.google.android.gms.vision.Frame;
-import com.google.android.gms.vision.barcode.Barcode;
-import com.google.android.gms.vision.barcode.BarcodeDetector;
-
import org.chromium.base.ContextUtils;
import org.chromium.base.Log;
import org.chromium.gfx.mojom.PointF;
@@ -28,50 +24,7 @@ import org.chromium.shape_detection.mojom.BarcodeFormat;
public class BarcodeDetectionImpl implements BarcodeDetection {
private static final String TAG = "BarcodeDetectionImpl";
- private BarcodeDetector mBarcodeDetector;
-
public BarcodeDetectionImpl(BarcodeDetectorOptions options) {
- int formats = Barcode.ALL_FORMATS;
- if (options.formats != null && options.formats.length > 0) {
- formats = 0;
- // Keep this list in sync with the constants defined in
- // com.google.android.gms.vision.barcode.Barcode and the list of
- // supported formats in BarcodeDetectionProviderImpl.
- for (int i = 0; i < options.formats.length; ++i) {
- if (options.formats[i] == BarcodeFormat.AZTEC) {
- formats |= Barcode.AZTEC;
- } else if (options.formats[i] == BarcodeFormat.CODE_128) {
- formats |= Barcode.CODE_128;
- } else if (options.formats[i] == BarcodeFormat.CODE_39) {
- formats |= Barcode.CODE_39;
- } else if (options.formats[i] == BarcodeFormat.CODE_93) {
- formats |= Barcode.CODE_93;
- } else if (options.formats[i] == BarcodeFormat.CODABAR) {
- formats |= Barcode.CODABAR;
- } else if (options.formats[i] == BarcodeFormat.DATA_MATRIX) {
- formats |= Barcode.DATA_MATRIX;
- } else if (options.formats[i] == BarcodeFormat.EAN_13) {
- formats |= Barcode.EAN_13;
- } else if (options.formats[i] == BarcodeFormat.EAN_8) {
- formats |= Barcode.EAN_8;
- } else if (options.formats[i] == BarcodeFormat.ITF) {
- formats |= Barcode.ITF;
- } else if (options.formats[i] == BarcodeFormat.PDF417) {
- formats |= Barcode.PDF417;
- } else if (options.formats[i] == BarcodeFormat.QR_CODE) {
- formats |= Barcode.QR_CODE;
- } else if (options.formats[i] == BarcodeFormat.UPC_A) {
- formats |= Barcode.UPC_A;
- } else if (options.formats[i] == BarcodeFormat.UPC_E) {
- formats |= Barcode.UPC_E;
- } else {
- Log.e(TAG, "Unsupported barcode format hint: " + options.formats[i]);
- }
- }
- }
- mBarcodeDetector = new BarcodeDetector.Builder(ContextUtils.getApplicationContext())
- .setBarcodeFormats(formats)
- .build();
}
@Override
@@ -80,47 +33,12 @@ public class BarcodeDetectionImpl implements BarcodeDetection {
// on the device; this happens "fast", but it might have not completed,
// bail in this case. Also, the API was disabled between and v.9.0 and
// v.9.2, see https://developers.google.com/android/guides/releases.
- if (!mBarcodeDetector.isOperational()) {
- Log.e(TAG, "BarcodeDetector is not operational");
- callback.call(new BarcodeDetectionResult[0]);
- return;
- }
-
- Frame frame = BitmapUtils.convertToFrame(bitmapData);
- if (frame == null) {
- Log.e(TAG, "Error converting Mojom Bitmap to Frame");
- callback.call(new BarcodeDetectionResult[0]);
- return;
- }
-
- final SparseArray<Barcode> barcodes = mBarcodeDetector.detect(frame);
-
- BarcodeDetectionResult[] barcodeArray = new BarcodeDetectionResult[barcodes.size()];
- for (int i = 0; i < barcodes.size(); i++) {
- barcodeArray[i] = new BarcodeDetectionResult();
- final Barcode barcode = barcodes.valueAt(i);
- barcodeArray[i].rawValue = barcode.rawValue;
- final Rect rect = barcode.getBoundingBox();
- barcodeArray[i].boundingBox = new RectF();
- barcodeArray[i].boundingBox.x = rect.left;
- barcodeArray[i].boundingBox.y = rect.top;
- barcodeArray[i].boundingBox.width = rect.width();
- barcodeArray[i].boundingBox.height = rect.height();
- final Point[] corners = barcode.cornerPoints;
- barcodeArray[i].cornerPoints = new PointF[corners.length];
- for (int j = 0; j < corners.length; j++) {
- barcodeArray[i].cornerPoints[j] = new PointF();
- barcodeArray[i].cornerPoints[j].x = corners[j].x;
- barcodeArray[i].cornerPoints[j].y = corners[j].y;
- }
- barcodeArray[i].format = toBarcodeFormat(barcode.format);
- }
- callback.call(barcodeArray);
+ Log.e(TAG, "BarcodeDetector is not operational");
+ callback.call(new BarcodeDetectionResult[0]);
}
@Override
public void close() {
- mBarcodeDetector.release();
}
@Override
@@ -129,34 +47,6 @@ public class BarcodeDetectionImpl implements BarcodeDetection {
}
private int toBarcodeFormat(int format) {
- switch (format) {
- case Barcode.CODE_128:
- return BarcodeFormat.CODE_128;
- case Barcode.CODE_39:
- return BarcodeFormat.CODE_39;
- case Barcode.CODE_93:
- return BarcodeFormat.CODE_93;
- case Barcode.CODABAR:
- return BarcodeFormat.CODABAR;
- case Barcode.DATA_MATRIX:
- return BarcodeFormat.DATA_MATRIX;
- case Barcode.EAN_13:
- return BarcodeFormat.EAN_13;
- case Barcode.EAN_8:
- return BarcodeFormat.EAN_8;
- case Barcode.ITF:
- return BarcodeFormat.ITF;
- case Barcode.QR_CODE:
- return BarcodeFormat.QR_CODE;
- case Barcode.UPC_A:
- return BarcodeFormat.UPC_A;
- case Barcode.UPC_E:
- return BarcodeFormat.UPC_E;
- case Barcode.PDF417:
- return BarcodeFormat.PDF417;
- case Barcode.AZTEC:
- return BarcodeFormat.AZTEC;
- }
return BarcodeFormat.UNKNOWN;
}
}
diff --git a/services/shape_detection/android/java/src/org/chromium/shape_detection/BarcodeDetectionProviderImpl.java b/services/shape_detection/android/java/src/org/chromium/shape_detection/BarcodeDetectionProviderImpl.java
--- a/services/shape_detection/android/java/src/org/chromium/shape_detection/BarcodeDetectionProviderImpl.java
+++ b/services/shape_detection/android/java/src/org/chromium/shape_detection/BarcodeDetectionProviderImpl.java
@@ -8,8 +8,6 @@ import android.content.Context;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager.NameNotFoundException;
-import com.google.android.gms.common.GoogleApiAvailability;
-
import org.chromium.base.ContextUtils;
import org.chromium.base.Log;
import org.chromium.gms.ChromiumPlayServicesAvailability;
@@ -36,15 +34,6 @@ public class BarcodeDetectionProviderImpl implements BarcodeDetectionProvider {
@Override
public void enumerateSupportedFormats(EnumerateSupportedFormatsResponse callback) {
- // Keep this list in sync with the constants defined in
- // com.google.android.gms.vision.barcode.Barcode and the format hints
- // supported by BarcodeDetectionImpl.
- int[] supportedFormats = {BarcodeFormat.AZTEC, BarcodeFormat.CODE_128,
- BarcodeFormat.CODE_39, BarcodeFormat.CODE_93, BarcodeFormat.CODABAR,
- BarcodeFormat.DATA_MATRIX, BarcodeFormat.EAN_13, BarcodeFormat.EAN_8,
- BarcodeFormat.ITF, BarcodeFormat.PDF417, BarcodeFormat.QR_CODE, BarcodeFormat.UPC_A,
- BarcodeFormat.UPC_E};
- callback.call(supportedFormats);
}
@Override
@@ -54,23 +43,7 @@ public class BarcodeDetectionProviderImpl implements BarcodeDetectionProvider {
public void onConnectionError(MojoException e) {}
public static BarcodeDetectionProvider create() {
- Context ctx = ContextUtils.getApplicationContext();
- if (!ChromiumPlayServicesAvailability.isGooglePlayServicesAvailable(ctx)) {
- Log.w(TAG, "Google Play Services not available");
- return null;
- }
- try {
- PackageInfo playServicesPackage = ctx.getPackageManager().getPackageInfo(
- GoogleApiAvailability.GOOGLE_PLAY_SERVICES_PACKAGE, 0);
- if (playServicesPackage.versionCode < 19742000) {
- // https://crbug.com/1020746
- Log.w(TAG, "Detection disabled (%s < 19.7.42)", playServicesPackage.versionName);
- return null;
- }
- } catch (NameNotFoundException e) {
- Log.w(TAG, "Google Play Services not available");
- return null;
- }
- return new BarcodeDetectionProviderImpl();
+ Log.w(TAG, "Google Play Services not available");
+ return null;
}
}
diff --git a/services/shape_detection/android/java/src/org/chromium/shape_detection/FaceDetectionImplGmsCore.java b/services/shape_detection/android/java/src/org/chromium/shape_detection/FaceDetectionImplGmsCore.java
--- a/services/shape_detection/android/java/src/org/chromium/shape_detection/FaceDetectionImplGmsCore.java
+++ b/services/shape_detection/android/java/src/org/chromium/shape_detection/FaceDetectionImplGmsCore.java
@@ -7,11 +7,6 @@ package org.chromium.shape_detection;
import android.graphics.PointF;
import android.util.SparseArray;
-import com.google.android.gms.vision.Frame;
-import com.google.android.gms.vision.face.Face;
-import com.google.android.gms.vision.face.FaceDetector;
-import com.google.android.gms.vision.face.Landmark;
-
import org.chromium.base.ContextUtils;
import org.chromium.base.Log;
import org.chromium.gfx.mojom.RectF;
@@ -36,26 +31,10 @@ public class FaceDetectionImplGmsCore implements FaceDetection {
private static final int MAX_EULER_Z = 15;
private final int mMaxFaces;
private final boolean mFastMode;
- private final FaceDetector mFaceDetector;
- FaceDetectionImplGmsCore(FaceDetectorOptions options) {
- FaceDetector.Builder builder =
- new FaceDetector.Builder(ContextUtils.getApplicationContext());
+ FaceDetectionImplGmsCore(FaceDetectorOptions options) { FaceDetector.Builder builder = new FaceDetector.Builder(ContextUtils.getApplicationContext());
mMaxFaces = Math.min(options.maxDetectedFaces, MAX_FACES);
mFastMode = options.fastMode;
-
- try {
- builder.setMode(mFastMode ? FaceDetector.FAST_MODE : FaceDetector.ACCURATE_MODE);
- builder.setLandmarkType(FaceDetector.ALL_LANDMARKS);
- if (mMaxFaces == 1) {
- builder.setProminentFaceOnly(true);
- }
- } catch (IllegalArgumentException e) {
- Log.e(TAG, "Unexpected exception " + e);
- assert false;
- }
-
- mFaceDetector = builder.build();
}
@Override
@@ -63,7 +42,7 @@ public class FaceDetectionImplGmsCore implements FaceDetection {
// The vision library will be downloaded the first time the API is used
// on the device; this happens "fast", but it might have not completed,
// bail in this case.
- if (!mFaceDetector.isOperational()) {
+/* if (!mFaceDetector.isOperational()) {
Log.e(TAG, "FaceDetector is not operational");
// Fallback to Android's FaceDetectionImpl.
@@ -131,12 +110,13 @@ public class FaceDetectionImplGmsCore implements FaceDetection {
faceArray[i].landmarks = mojoLandmarks.toArray(
new org.chromium.shape_detection.mojom.Landmark[mojoLandmarks.size()]);
}
- callback.call(faceArray);
+ callback.call(faceArray); */
+ Log.e(TAG, "FaceDetector is not operational");
+ callback.call(new FaceDetectionResult[0]);
}
@Override
public void close() {
- mFaceDetector.release();
}
@Override
diff --git a/services/shape_detection/android/java/src/org/chromium/shape_detection/TextDetectionImpl.java b/services/shape_detection/android/java/src/org/chromium/shape_detection/TextDetectionImpl.java
--- a/services/shape_detection/android/java/src/org/chromium/shape_detection/TextDetectionImpl.java
+++ b/services/shape_detection/android/java/src/org/chromium/shape_detection/TextDetectionImpl.java
@@ -8,15 +8,10 @@ import android.graphics.Point;
import android.graphics.Rect;
import android.util.SparseArray;
-import com.google.android.gms.vision.Frame;
-import com.google.android.gms.vision.text.TextBlock;
-import com.google.android.gms.vision.text.TextRecognizer;
-
import org.chromium.base.ContextUtils;
import org.chromium.base.Log;
import org.chromium.gfx.mojom.PointF;
import org.chromium.gfx.mojom.RectF;
-import org.chromium.gms.ChromiumPlayServicesAvailability;
import org.chromium.mojo.system.MojoException;
import org.chromium.shape_detection.mojom.TextDetection;
import org.chromium.shape_detection.mojom.TextDetectionResult;
@@ -27,10 +22,7 @@ import org.chromium.shape_detection.mojom.TextDetectionResult;
public class TextDetectionImpl implements TextDetection {
private static final String TAG = "TextDetectionImpl";
- private TextRecognizer mTextRecognizer;
-
public TextDetectionImpl() {
- mTextRecognizer = new TextRecognizer.Builder(ContextUtils.getApplicationContext()).build();
}
@Override
@@ -39,13 +31,10 @@ public class TextDetectionImpl implements TextDetection {
// on the device; this happens "fast", but it might have not completed,
// bail in this case. Also, the API was disabled between and v.9.0 and
// v.9.2, see https://developers.google.com/android/guides/releases.
- if (!mTextRecognizer.isOperational()) {
Log.e(TAG, "TextDetector is not operational");
callback.call(new TextDetectionResult[0]);
return;
- }
-
- Frame frame = BitmapUtils.convertToFrame(bitmapData);
+/* Frame frame = BitmapUtils.convertToFrame(bitmapData);
if (frame == null) {
Log.e(TAG, "Error converting Mojom Bitmap to Frame");
callback.call(new TextDetectionResult[0]);
@@ -73,12 +62,11 @@ public class TextDetectionImpl implements TextDetection {
detectedTextArray[i].cornerPoints[j].y = corners[j].y;
}
}
- callback.call(detectedTextArray);
+ callback.call(detectedTextArray); */
}
@Override
public void close() {
- mTextRecognizer.release();
}
@Override
@@ -87,11 +75,7 @@ public class TextDetectionImpl implements TextDetection {
}
public static TextDetection create() {
- if (!ChromiumPlayServicesAvailability.isGooglePlayServicesAvailable(
- ContextUtils.getApplicationContext())) {
- Log.e(TAG, "Google Play Services not available");
- return null;
- }
- return new TextDetectionImpl();
+ Log.e(TAG, "Google Play Services not available");
+ return null;
}
}
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

View file

@ -9,8 +9,8 @@ Subject: Remove blocklisted URLs upon bookmark creation
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
@@ -143,6 +143,8 @@ import org.chromium.chrome.browser.settings.SettingsLauncherImpl;
import org.chromium.chrome.browser.settings.AdBlockPreferences;
@@ -136,6 +136,8 @@ import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.settings.SettingsLauncherImpl;
import org.chromium.chrome.browser.share.ShareDelegate;
import org.chromium.chrome.browser.share.ShareDelegateImpl;
+import org.chromium.chrome.browser.suggestions.SuggestionsDependencyFactory;
@ -18,7 +18,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
import org.chromium.chrome.browser.tab.AccessibilityVisibilityHandler;
import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.tab.TabHidingType;
@@ -216,6 +218,8 @@ import org.chromium.url.GURL;
@@ -208,6 +210,8 @@ import org.chromium.url.GURL;
import org.chromium.url.Origin;
import org.chromium.webapk.lib.client.WebApkNavigationClient;
@ -27,7 +27,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
import java.util.ArrayList;
import java.util.List;
import java.util.function.Consumer;
@@ -260,6 +264,7 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -252,6 +256,7 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
private UmaSessionStats mUmaSessionStats;
private ContextReporter mContextReporter;
@ -35,7 +35,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
private boolean mPartnerBrowserRefreshNeeded;
@@ -1270,6 +1275,11 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -1243,6 +1248,11 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
mCompositorViewHolder = null;
}
@ -47,7 +47,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
onDestroyInternal();
if (mDidAddPolicyChangeListener) {
@@ -1518,6 +1528,13 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -1491,6 +1501,13 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
// Defense in depth against the UI being erroneously enabled.
BookmarkBridge bridge = mBookmarkBridgeSupplier.get();

View file

@ -38,7 +38,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcu
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
@@ -1997,15 +1997,6 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -1991,15 +1991,6 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
final Tab currentTab = getActivityTab();

File diff suppressed because it is too large Load diff

View file

@ -82,7 +82,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
@@ -1162,6 +1162,7 @@ chrome_java_sources = [
@@ -1155,6 +1155,7 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/payments/ui/DimmingDialog.java",
"java/src/org/chromium/chrome/browser/payments/ui/LineItem.java",
"java/src/org/chromium/chrome/browser/payments/ui/PaymentAppComparator.java",
@ -206,7 +206,7 @@ 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
@@ -104,6 +104,11 @@
@@ -101,6 +101,11 @@
android:key="content_settings"
android:order="19"
android:title="@string/prefs_site_settings"/>
@ -257,7 +257,7 @@ new file mode 100644
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
@@ -76,6 +76,7 @@ import org.chromium.chrome.browser.app.flags.ChromeCachedFlags;
@@ -72,6 +72,7 @@ import org.chromium.chrome.browser.app.flags.ChromeCachedFlags;
import org.chromium.chrome.browser.app.tab_activity_glue.ReparentingDelegateFactory;
import org.chromium.chrome.browser.app.tab_activity_glue.TabReparentingController;
import org.chromium.chrome.browser.app.tabmodel.AsyncTabParamsManagerSingleton;
@ -265,7 +265,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
import org.chromium.chrome.browser.bookmarks.BookmarkBridge;
import org.chromium.chrome.browser.bookmarks.BookmarkBridge.BookmarkItem;
import org.chromium.chrome.browser.bookmarks.BookmarkModel;
@@ -217,6 +218,13 @@ import org.chromium.ui.widget.Toast;
@@ -209,6 +210,13 @@ import org.chromium.ui.widget.Toast;
import org.chromium.url.GURL;
import org.chromium.url.Origin;
import org.chromium.webapk.lib.client.WebApkNavigationClient;
@ -279,7 +279,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
import org.chromium.url.GURL;
@@ -2129,11 +2137,18 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -2102,11 +2110,18 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
} 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) {
@ -936,7 +936,7 @@ diff --git a/chrome/browser/android/tab_android.h b/chrome/browser/android/tab_a
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
@@ -1284,6 +1284,13 @@ std::string GetPlatformForUAMetadata() {
@@ -1285,6 +1285,13 @@ std::string GetPlatformForUAMetadata() {
blink::UserAgentMetadata GetUserAgentMetadata() {
blink::UserAgentMetadata metadata;
@ -950,7 +950,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
metadata.brand_version_list = GetBrandVersionList();
metadata.full_version = version_info::GetVersionNumber();
metadata.platform = GetPlatformForUAMetadata();
@@ -2377,6 +2384,7 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches(
@@ -2378,6 +2385,7 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches(
switches::kDisableTargetBlankImpliesNoOpener);
}
@ -1132,7 +1132,7 @@ diff --git a/chrome/common/pref_names.cc b/chrome/common/pref_names.cc
diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h
--- a/chrome/common/pref_names.h
+++ b/chrome/common/pref_names.h
@@ -1119,6 +1119,14 @@ extern const char kCartModuleWelcomeSurfaceShownTimes[];
@@ -1120,6 +1120,14 @@ extern const char kCartModuleWelcomeSurfaceShownTimes[];
extern const char kIncognitoTabHistoryEnabled[];
#endif

View file

@ -70,7 +70,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAnd
mTosAndPrivacy = (TextView) view.findViewById(R.id.tos_and_privacy);
mAcceptButton.setOnClickListener((v) -> onTosButtonClicked());
@@ -152,11 +150,6 @@ public class ToSAndUMAFirstRunFragment extends Fragment implements FirstRunFragm
@@ -142,11 +140,6 @@ public class ToSAndUMAFirstRunFragment extends Fragment implements FirstRunFragm
if (!isVisibleToUser) {
// Restore original enabled & visibility states, in case the user returns to the page.
setSpinnerVisible(false);
@ -82,7 +82,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAnd
}
}
@@ -192,8 +185,6 @@ public class ToSAndUMAFirstRunFragment extends Fragment implements FirstRunFragm
@@ -182,8 +175,6 @@ public class ToSAndUMAFirstRunFragment extends Fragment implements FirstRunFragm
RecordHistogram.recordTimesHistogram("MobileFre.TosFragment.SpinnerVisibleDuration",
SystemClock.elapsedRealtime() - mTosAcceptedTime);
}
@ -91,7 +91,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAnd
}
private void setSpinnerVisible(boolean spinnerVisible) {
@@ -217,10 +208,6 @@ public class ToSAndUMAFirstRunFragment extends Fragment implements FirstRunFragm
@@ -207,10 +198,6 @@ public class ToSAndUMAFirstRunFragment extends Fragment implements FirstRunFragm
mAcceptButton.setVisibility(visibility);
mTosAndPrivacy.setVisibility(visibility);

View file

@ -7,9 +7,8 @@ Barcode, face and text detection APIs
chrome/android/BUILD.gn | 2 --
services/shape_detection/BUILD.gn | 6 -----
.../chromium/shape_detection/BitmapUtils.java | 12 ----------
.../FaceDetectionProviderImpl.java | 10 +-------
.../shape_detection/InterfaceRegistrar.java | 23 ++-----------------
5 files changed, 3 insertions(+), 50 deletions(-)
4 files changed, 2 insertions(+), 41 deletions(-)
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
--- a/chrome/android/BUILD.gn
@ -68,26 +67,6 @@ diff --git a/services/shape_detection/android/java/src/org/chromium/shape_detect
- return new Frame.Builder().setBitmap(bitmap).build();
- }
}
diff --git a/services/shape_detection/android/java/src/org/chromium/shape_detection/FaceDetectionProviderImpl.java b/services/shape_detection/android/java/src/org/chromium/shape_detection/FaceDetectionProviderImpl.java
--- a/services/shape_detection/android/java/src/org/chromium/shape_detection/FaceDetectionProviderImpl.java
+++ b/services/shape_detection/android/java/src/org/chromium/shape_detection/FaceDetectionProviderImpl.java
@@ -21,15 +21,7 @@ public class FaceDetectionProviderImpl implements FaceDetectionProvider {
@Override
public void createFaceDetection(
InterfaceRequest<FaceDetection> request, FaceDetectorOptions options) {
- final boolean isGmsCoreSupported =
- ChromiumPlayServicesAvailability.isGooglePlayServicesAvailable(
- ContextUtils.getApplicationContext());
-
- if (isGmsCoreSupported) {
- FaceDetection.MANAGER.bind(new FaceDetectionImplGmsCore(options), request);
- } else {
- FaceDetection.MANAGER.bind(new FaceDetectionImpl(options), request);
- }
+ FaceDetection.MANAGER.bind(new FaceDetectionImpl(options), request);
}
@Override
diff --git a/services/shape_detection/android/java/src/org/chromium/shape_detection/InterfaceRegistrar.java b/services/shape_detection/android/java/src/org/chromium/shape_detection/InterfaceRegistrar.java
--- a/services/shape_detection/android/java/src/org/chromium/shape_detection/InterfaceRegistrar.java
+++ b/services/shape_detection/android/java/src/org/chromium/shape_detection/InterfaceRegistrar.java

View file

@ -4,10 +4,9 @@ Subject: ungoogled-chromium: Disable profile avatar
Added some Bromite-specific further improvements
---
chrome/browser/BUILD.gn | 2 --
chrome/browser/profiles/profile_attributes_entry.cc | 6 ------
chrome/browser/profiles/profile_avatar_downloader.cc | 8 +-------
3 files changed, 1 insertion(+), 15 deletions(-)
chrome/browser/BUILD.gn | 2 --
chrome/browser/profiles/profile_attributes_entry.cc | 6 ------
2 files changed, 8 deletions(-)
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
@ -37,28 +36,6 @@ diff --git a/chrome/browser/profiles/profile_attributes_entry.cc b/chrome/browse
// TODO(crbug.com/1100835): After launch, remove the treatment of placeholder
// avatars from GetHighResAvatar() and from any other places.
if (ShouldShowGenericColoredAvatar(GetAvatarIconIndex())) {
diff --git a/chrome/browser/profiles/profile_avatar_downloader.cc b/chrome/browser/profiles/profile_avatar_downloader.cc
--- a/chrome/browser/profiles/profile_avatar_downloader.cc
+++ b/chrome/browser/profiles/profile_avatar_downloader.cc
@@ -17,17 +17,11 @@
#include "net/url_request/referrer_policy.h"
#include "ui/gfx/image/image.h"
-namespace {
-const char kHighResAvatarDownloadUrlPrefix[] =
- "https://www.gstatic.com/chrome/profile_avatars/";
-}
-
ProfileAvatarDownloader::ProfileAvatarDownloader(size_t icon_index,
FetchCompleteCallback callback)
: icon_index_(icon_index), callback_(std::move(callback)) {
DCHECK(!callback_.is_null());
- GURL url(std::string(kHighResAvatarDownloadUrlPrefix) +
- profiles::GetDefaultAvatarIconFileNameAtIndex(icon_index));
+ GURL url(std::string("about:blank"));
net::NetworkTrafficAnnotationTag traffic_annotation =
net::DefineNetworkTrafficAnnotation("profile_avatar", R"(
semantics {
--
2.17.1