Patches for 138 (final)

This commit is contained in:
Carmelo Messina
2025-06-26 14:47:05 +02:00
parent 7e0c841a5c
commit dfcd7c6bfa
31 changed files with 1506 additions and 341 deletions
@@ -31,8 +31,8 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
gpu/config/gpu_util.cc | 8 ++++++++
gpu/config/gpu_workaround_list.txt | 1 +
gpu/ipc/service/gpu_init.cc | 8 ++++++++
media/gpu/android/video_frame_factory_impl.cc | 12 +++++++++++-
12 files changed, 89 insertions(+), 1 deletion(-)
media/gpu/android/video_frame_factory_impl.cc | 4 +++-
12 files changed, 81 insertions(+), 1 deletion(-)
create mode 100644 cromite_flags/media/base/media_switches_cc/AImageReader-CFI-crash-mitigations.inc
create mode 100644 cromite_flags/media/base/media_switches_h/AImageReader-CFI-crash-mitigations.inc
@@ -232,20 +232,12 @@ diff --git a/gpu/ipc/service/gpu_init.cc b/gpu/ipc/service/gpu_init.cc
diff --git a/media/gpu/android/video_frame_factory_impl.cc b/media/gpu/android/video_frame_factory_impl.cc
--- a/media/gpu/android/video_frame_factory_impl.cc
+++ b/media/gpu/android/video_frame_factory_impl.cc
@@ -35,10 +35,20 @@ namespace {
@@ -35,10 +35,12 @@ namespace {
gpu::TextureOwner::Mode GetTextureOwnerMode(
VideoFrameFactory::OverlayMode overlay_mode) {
+ CHECK: https://source.chromium.org/chromium/chromium/src/+/0abf370caaac29344f1d3fe4c416b75a17392b65
+
+ // TODO(vikassoni) : Currently we have 2 different flags to enable/disable
+ // AImageReader - one for MCVD and other for MediaPlayer here. Merge those 2
+ // flags into a single flag. Keeping the 2 flags separate for now since finch
+ // experiment using this flag is in progress.
+ const bool a_image_reader_supported =
+ base::android::AndroidImageReader::GetInstance().IsSupported();
+ const bool enabled = a_image_reader_supported && base::android::EnableAndroidImageReader() &&
+ base::FeatureList::IsEnabled(features::kAImageReaderMediaPlayer)
+ const bool enabled = base::android::EnableAndroidImageReader() &&
+ base::FeatureList::IsEnabled(features::kAImageReaderMediaPlayer);
switch (overlay_mode) {
case VideoFrameFactory::OverlayMode::kDontRequestPromotionHints:
case VideoFrameFactory::OverlayMode::kRequestPromotionHints:
@@ -17,7 +17,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../app/bookmarks/BookmarkActivity.java | 31 ++
.../native_page/NativePageFactory.java | 9 +-
chrome/browser/BUILD.gn | 11 +-
.../bookmarks/android/bookmark_bridge.cc | 267 +++++++++++++++++
.../bookmarks/android/bookmark_bridge.cc | 266 ++++++++++++++++
.../bookmarks/android/bookmark_bridge.h | 30 +-
.../browser/bookmarks/BookmarkBridge.java | 39 +++
.../browser/bookmarks/BookmarkDelegate.java | 10 +
@@ -52,7 +52,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
ui/shell_dialogs/select_file_dialog_linux.cc | 4 +
ui/shell_dialogs/select_file_dialog_linux.h | 2 +
ui/shell_dialogs/select_file_dialog_win.cc | 5 +
41 files changed, 906 insertions(+), 29 deletions(-)
41 files changed, 905 insertions(+), 29 deletions(-)
create mode 100644 cromite_flags/chrome/browser/about_flags_cc/add-bookmark-import-export-actions.inc
create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/add-bookmark-import-export-actions.inc
create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_h/add-bookmark-import-export-actions.inc
@@ -282,7 +282,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browser/bookmarks/android/bookmark_bridge.cc
--- a/chrome/browser/bookmarks/android/bookmark_bridge.cc
+++ b/chrome/browser/bookmarks/android/bookmark_bridge.cc
@@ -68,6 +68,28 @@
@@ -68,6 +68,27 @@
#include "content/public/browser/web_contents.h"
#include "url/gurl.h"
@@ -294,8 +294,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse
+#include "chrome/browser/importer/profile_writer.h"
+#include "chrome/browser/platform_util.h"
+#include "chrome/browser/ui/chrome_select_file_policy.h"
+#include "chrome/common/importer/imported_bookmark_entry.h"
+#include "chrome/common/importer/importer_data_types.h"
+#include "components/user_data_importer/common/imported_bookmark_entry.h"
+#include "chrome/common/url_constants.h"
+#include "components/favicon_base/favicon_usage_data.h"
+#include "components/search_engines/template_url.h"
@@ -311,7 +310,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse
// Must come after all headers that specialize FromJniType() / ToJniType().
#include "chrome/browser/bookmarks/android/jni_headers/BookmarkBridge_jni.h"
@@ -86,6 +108,57 @@ using bookmarks::android::JavaBookmarkIdGetType;
@@ -86,6 +107,57 @@ using bookmarks::android::JavaBookmarkIdGetType;
using content::BrowserThread;
using power_bookmarks::PowerBookmarkMeta;
@@ -369,7 +368,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse
namespace {
// The key used to connect the instance of the bookmark bridge to the bookmark
// model.
@@ -296,6 +369,10 @@ BookmarkBridge::~BookmarkBridge() {
@@ -296,6 +368,10 @@ BookmarkBridge::~BookmarkBridge() {
partner_bookmarks_shim_observation_.Reset();
bookmark_model_observation_.Reset();
profile_observation_.Reset();
@@ -380,7 +379,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse
}
void BookmarkBridge::Destroy(JNIEnv* env) {
@@ -847,6 +924,196 @@ jint BookmarkBridge::GetTotalBookmarkCount(
@@ -847,6 +923,196 @@ jint BookmarkBridge::GetTotalBookmarkCount(
return count;
}
@@ -533,8 +532,8 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse
+ return;
+
+ // the following import logic comes from BookmarksFileImporter class
+ std::vector<ImportedBookmarkEntry> bookmarks;
+ std::vector<importer::SearchEngineInfo> search_engines;
+ std::vector<user_data_importer::ImportedBookmarkEntry> bookmarks;
+ std::vector<user_data_importer::SearchEngineInfo> search_engines;
+ favicon_base::FaviconUsageDataList favicons;
+
+ bookmark_html_reader::ImportBookmarksFile(
@@ -1139,7 +1138,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows
diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbar.java b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbar.java
--- a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbar.java
+++ b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbar.java
@@ -103,6 +103,17 @@ public class BookmarkToolbar extends SelectableListToolbar<BookmarkId>
@@ -102,6 +102,17 @@ public class BookmarkToolbar extends SelectableListToolbar<BookmarkId>
setOnMenuItemClickListener(dragEnabled ? null : this);
}
@@ -1157,7 +1156,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows
void setEditButtonVisible(boolean visible) {
mEditButtonVisible = visible;
getMenu().findItem(R.id.edit_menu_id).setVisible(visible);
@@ -179,6 +190,12 @@ public class BookmarkToolbar extends SelectableListToolbar<BookmarkId>
@@ -178,6 +189,12 @@ public class BookmarkToolbar extends SelectableListToolbar<BookmarkId>
void setCurrentFolder(BookmarkId folder) {
mCurrentFolder = mBookmarkModel.getBookmarkById(folder);
@@ -1170,7 +1169,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows
}
void setNavigateBackRunnable(Runnable navigateBackRunnable) {
@@ -203,6 +220,13 @@ public class BookmarkToolbar extends SelectableListToolbar<BookmarkId>
@@ -202,6 +219,13 @@ public class BookmarkToolbar extends SelectableListToolbar<BookmarkId>
@Override
public boolean onMenuItemClick(MenuItem menuItem) {
hideOverflowMenu();
@@ -1184,7 +1183,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows
return assumeNonNull(mMenuIdClickedFunction).apply(menuItem.getItemId());
}
@@ -223,6 +247,9 @@ public class BookmarkToolbar extends SelectableListToolbar<BookmarkId>
@@ -222,6 +246,9 @@ public class BookmarkToolbar extends SelectableListToolbar<BookmarkId>
protected void showNormalView() {
super.showNormalView();
@@ -1359,7 +1358,7 @@ diff --git a/chrome/browser/importer/profile_writer.cc b/chrome/browser/importer
+
+void ProfileWriter::AddBookmarksWithModel(
+ BookmarkModel* model,
+ const std::vector<ImportedBookmarkEntry>& bookmarks,
+ const std::vector<user_data_importer::ImportedBookmarkEntry>& bookmarks,
+ const std::u16string& top_level_folder_name) {
+ if (bookmarks.empty())
+ return;
@@ -1384,7 +1383,7 @@ diff --git a/chrome/browser/importer/profile_writer.h b/chrome/browser/importer/
+ virtual void AddBookmarksWithModel(
+ bookmarks::BookmarkModel* model,
+ const std::vector<ImportedBookmarkEntry>& bookmarks,
+ const std::vector<user_data_importer::ImportedBookmarkEntry>& bookmarks,
+ const std::u16string& top_level_folder_name);
+
virtual void AddFavicons(const favicon_base::FaviconUsageDataList& favicons);
@@ -1446,8 +1445,8 @@ diff --git a/chrome/common/BUILD.gn b/chrome/common/BUILD.gn
"media/chrome_media_drm_bridge_client.cc",
"media/chrome_media_drm_bridge_client.h",
+ ## Bromite dependencies for bookmark import functionality
+ "importer/imported_bookmark_entry.cc",
+ "importer/imported_bookmark_entry.h",
+ "//components/user_data_importer/common/imported_bookmark_entry.cc",
+ "//components/user_data_importer/common/imported_bookmark_entry.h",
]
} else {
# Non-Android.
@@ -1531,8 +1530,8 @@ diff --git a/chrome/utility/importer/bookmark_html_reader.cc b/chrome/utility/im
+ base::RepeatingCallback<bool(void)> cancellation_callback,
+ base::RepeatingCallback<bool(const GURL&)> valid_url_callback,
+ const std::string& content,
+ std::vector<ImportedBookmarkEntry>* bookmarks,
+ std::vector<importer::SearchEngineInfo>* search_engines,
+ std::vector<user_data_importer::ImportedBookmarkEntry>* bookmarks,
+ std::vector<user_data_importer::SearchEngineInfo>* search_engines,
+ favicon_base::FaviconUsageDataList* favicons) {
std::vector<std::string> lines = base::SplitString(
content, "\n", base::TRIM_WHITESPACE, base::SPLIT_WANT_ALL);
@@ -1569,8 +1568,8 @@ diff --git a/chrome/utility/importer/bookmark_html_reader.h b/chrome/utility/imp
+ const base::RepeatingCallback<bool(void)> cancellation_callback,
+ const base::RepeatingCallback<bool(const GURL&)> valid_url_callback,
+ const std::string& content,
+ std::vector<ImportedBookmarkEntry>* bookmarks,
+ std::vector<importer::SearchEngineInfo>* search_engines,
+ std::vector<user_data_importer::ImportedBookmarkEntry>* bookmarks,
+ std::vector<user_data_importer::SearchEngineInfo>* search_engines,
+ favicon_base::FaviconUsageDataList* favicons);
+
// Returns true if |url| should be imported as a search engine, i.e. because it
@@ -184,8 +184,8 @@ diff --git a/components/external_intents/android/java/src/org/chromium/component
+ public static final String INTENT_BLOCK_EXTERNAL_FORM_REDIRECT_NO_GESTURE_NAME =
+ "IntentBlockExternalFormRedirectsNoGesture";
+
+ public static final ExternalIntentsFeatures INTENT_BLOCK_EXTERNAL_FORM_REDIRECT_NO_GESTURE =
+ new ExternalIntentsFeatures(-1, INTENT_BLOCK_EXTERNAL_FORM_REDIRECT_NO_GESTURE_NAME);
+ public static final ExternalIntentsFeature INTENT_BLOCK_EXTERNAL_FORM_REDIRECT_NO_GESTURE =
+ new ExternalIntentsFeature(-1, INTENT_BLOCK_EXTERNAL_FORM_REDIRECT_NO_GESTURE_NAME);
+
public static final String EXTERNAL_NAVIGATION_DEBUG_LOGS_NAME = "ExternalNavigationDebugLogs";
public static final String BLOCK_INTENTS_TO_SELF_NAME = "BlockIntentsToSelf";
@@ -80,17 +80,17 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../permission_prompt_android.cc | 8 +-
.../permission_prompt_android.h | 3 +-
.../android/permissions_android_strings.grd | 17 ++++
.../geolocation_permission_context_android.cc | 34 ++++++--
.../geolocation_permission_context_android.h | 13 ++-
.../geolocation_permission_context_android.cc | 32 ++++++--
.../geolocation_permission_context_android.h | 11 ++-
.../embedded_permission_prompt_flow_model.cc | 2 +-
.../permissions/permission_context_base.cc | 51 ++++++++++--
.../permissions/permission_context_base.cc | 49 +++++++++--
.../permissions/permission_context_base.h | 20 ++++-
components/permissions/permission_prompt.h | 3 +-
components/permissions/permission_request.cc | 30 ++++++-
components/permissions/permission_request.h | 16 +++-
components/permissions/permission_request.cc | 32 +++++++-
components/permissions/permission_request.h | 18 +++-
.../permissions/permission_request_manager.cc | 45 ++++++----
.../permissions/permission_request_manager.h | 11 ++-
38 files changed, 489 insertions(+), 71 deletions(-)
38 files changed, 487 insertions(+), 71 deletions(-)
diff --git a/chrome/browser/permissions/last_tab_standing_tracker.cc b/chrome/browser/permissions/last_tab_standing_tracker.cc
--- a/chrome/browser/permissions/last_tab_standing_tracker.cc
@@ -842,19 +842,17 @@ diff --git a/components/permissions/android/permissions_android_strings.grd b/co
diff --git a/components/permissions/contexts/geolocation_permission_context_android.cc b/components/permissions/contexts/geolocation_permission_context_android.cc
--- a/components/permissions/contexts/geolocation_permission_context_android.cc
+++ b/components/permissions/contexts/geolocation_permission_context_android.cc
@@ -193,7 +193,20 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet(
@@ -193,7 +193,18 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet(
bool is_one_time,
bool is_final_decision) {
DCHECK(is_final_decision);
+ NotifyPermissionSetWithLifetime(id, requesting_origin, embedding_origin,
+ NotifyPermissionSetWithLifetime(request_data,
+ std::move(callback), persist, content_setting, is_one_time, is_final_decision,
+ content_settings::mojom::LifetimeMode::ALWAYS);
+}
+void GeolocationPermissionContextAndroid::NotifyPermissionSetWithLifetime(
+ const PermissionRequestID& id,
+ const GURL& requesting_origin,
+ const GURL& embedding_origin,
+ const PermissionRequestData& request_data,
+ BrowserPermissionCallback callback,
+ bool persist,
+ ContentSetting content_setting,
@@ -863,7 +861,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
bool is_default_search =
IsRequestingOriginDSE(request_data.requesting_origin);
if (content_setting == CONTENT_SETTING_ALLOW &&
@@ -208,7 +221,8 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet(
@@ -208,7 +219,8 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet(
FinishNotifyPermissionSet(request_data.id, request_data.requesting_origin,
request_data.embedding_origin,
std::move(callback), false /* persist */,
@@ -873,7 +871,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
return;
}
@@ -228,7 +242,8 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet(
@@ -228,7 +240,8 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet(
FinishNotifyPermissionSet(request_data.id, request_data.requesting_origin,
request_data.embedding_origin,
std::move(callback), false /* persist */,
@@ -883,7 +881,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
return;
}
@@ -241,13 +256,13 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet(
@@ -241,13 +254,13 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet(
&GeolocationPermissionContextAndroid::OnLocationSettingsDialogShown,
weak_factory_.GetWeakPtr(), request_data.requesting_origin,
request_data.embedding_origin, persist, content_setting,
@@ -899,7 +897,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
}
content::PermissionResult
@@ -425,7 +440,7 @@ void GeolocationPermissionContextAndroid::OnLocationSettingsDialogShown(
@@ -425,7 +438,7 @@ void GeolocationPermissionContextAndroid::OnLocationSettingsDialogShown(
const GURL& embedding_origin,
bool persist,
ContentSetting content_setting,
@@ -908,7 +906,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
LocationSettingsDialogOutcome prompt_outcome) {
bool is_default_search = IsRequestingOriginDSE(requesting_origin);
if (prompt_outcome == GRANTED) {
@@ -444,7 +459,8 @@ void GeolocationPermissionContextAndroid::OnLocationSettingsDialogShown(
@@ -444,7 +457,8 @@ void GeolocationPermissionContextAndroid::OnLocationSettingsDialogShown(
FinishNotifyPermissionSet(location_settings_dialog_request_id_,
requesting_origin, embedding_origin,
std::move(location_settings_dialog_callback_),
@@ -918,7 +916,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
location_settings_dialog_request_id_ =
PermissionRequestID(content::GlobalRenderFrameHostId(0, 0),
@@ -458,8 +474,8 @@ void GeolocationPermissionContextAndroid::FinishNotifyPermissionSet(
@@ -458,8 +472,8 @@ void GeolocationPermissionContextAndroid::FinishNotifyPermissionSet(
BrowserPermissionCallback callback,
bool persist,
ContentSetting content_setting,
@@ -929,7 +927,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
PermissionRequestData(this, id,
content::PermissionRequestDescription(
content::PermissionDescriptorUtil::
@@ -467,7 +483,7 @@ void GeolocationPermissionContextAndroid::FinishNotifyPermissionSet(
@@ -467,7 +481,7 @@ void GeolocationPermissionContextAndroid::FinishNotifyPermissionSet(
blink::PermissionType::GEOLOCATION)),
requesting_origin),
std::move(callback), persist, content_setting, is_one_time,
@@ -941,13 +939,11 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
diff --git a/components/permissions/contexts/geolocation_permission_context_android.h b/components/permissions/contexts/geolocation_permission_context_android.h
--- a/components/permissions/contexts/geolocation_permission_context_android.h
+++ b/components/permissions/contexts/geolocation_permission_context_android.h
@@ -93,6 +93,15 @@ class GeolocationPermissionContextAndroid
@@ -93,6 +93,13 @@ class GeolocationPermissionContextAndroid
ContentSetting content_setting,
bool is_one_time,
bool is_final_decision) override;
+ void NotifyPermissionSetWithLifetime(const PermissionRequestID& id,
+ const GURL& requesting_origin,
+ const GURL& embedding_origin,
+ void NotifyPermissionSetWithLifetime(const PermissionRequestData& request_data,
+ BrowserPermissionCallback callback,
+ bool persist,
+ ContentSetting content_setting,
@@ -957,7 +953,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
content::PermissionResult UpdatePermissionStatusWithDeviceStatus(
content::WebContents* web_contents,
content::PermissionResult result,
@@ -138,6 +147,7 @@ class GeolocationPermissionContextAndroid
@@ -138,6 +145,7 @@ class GeolocationPermissionContextAndroid
bool persist,
ContentSetting content_setting,
bool is_one_time,
@@ -965,7 +961,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
LocationSettingsDialogOutcome prompt_outcome);
void FinishNotifyPermissionSet(const PermissionRequestID& id,
@@ -146,7 +156,8 @@ class GeolocationPermissionContextAndroid
@@ -146,7 +154,8 @@ class GeolocationPermissionContextAndroid
BrowserPermissionCallback callback,
bool persist,
ContentSetting content_setting,
@@ -990,24 +986,24 @@ diff --git a/components/permissions/embedded_permission_prompt_flow_model.cc b/c
diff --git a/components/permissions/permission_context_base.cc b/components/permissions/permission_context_base.cc
--- a/components/permissions/permission_context_base.cc
+++ b/components/permissions/permission_context_base.cc
@@ -273,6 +273,17 @@ GURL PermissionContextBase::GetEffectiveEmbedderOrigin(
return PermissionUtil::GetLastCommittedOriginAsURL(rfh->GetMainFrame());
@@ -253,6 +253,17 @@ PermissionContextBase::CreatePermissionRequest(
std::move(request_finished_callback), UsesAutomaticEmbargo());
}
+std::unique_ptr<PermissionRequest>
+PermissionContextBase::CreatePermissionRequest(
+ content::WebContents* web_contents,
+ PermissionRequestData request_data,
+ std::unique_ptr<PermissionRequestData> request_data,
+ PermissionRequest::PermissionDecidedCallbackWithLifetime permission_decided_callback,
+ base::OnceClosure delete_callback) const {
+ base::OnceClosure request_finished_callback) const {
+ return std::make_unique<PermissionRequest>(
+ std::move(request_data), std::move(permission_decided_callback),
+ std::move(delete_callback));
+ std::move(request_finished_callback), UsesAutomaticEmbargo());
+}
+
content::PermissionResult PermissionContextBase::GetPermissionStatus(
const PermissionResolver& resolver,
content::RenderFrameHost* render_frame_host,
bool PermissionContextBase::UsesAutomaticEmbargo() const {
return true;
}
@@ -540,7 +551,8 @@ void PermissionContextBase::PermissionDecided(
ContentSetting content_setting,
bool is_one_time,
@@ -1036,20 +1032,18 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm
}
}
@@ -652,10 +665,26 @@ void PermissionContextBase::NotifyPermissionSet(
@@ -652,10 +665,24 @@ void PermissionContextBase::NotifyPermissionSet(
ContentSetting content_setting,
bool is_one_time,
bool is_final_decision) {
+ DCHECK(is_one_time == false);
+ NotifyPermissionSetWithLifetime(request_data, requesting_origin, embedding_origin, std::move(callback),
+ NotifyPermissionSetWithLifetime(request_data, std::move(callback),
+ persist, content_setting, is_one_time, is_final_decision,
+ content_settings::mojom::LifetimeMode::ALWAYS);
+}
+
+void PermissionContextBase::NotifyPermissionSetWithLifetime(
+ const PermissionRequestData& request_data,
+ const GURL& requesting_origin,
+ const GURL& embedding_origin,
+ BrowserPermissionCallback callback,
+ bool persist,
+ ContentSetting content_setting,
@@ -1064,7 +1058,7 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm
}
if (is_final_decision) {
@@ -696,6 +725,14 @@ void PermissionContextBase::UpdateContentSetting(
@@ -696,6 +723,14 @@ void PermissionContextBase::UpdateContentSetting(
const PermissionRequestData& request_data,
ContentSetting content_setting,
bool is_one_time) {
@@ -1079,7 +1073,7 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm
DCHECK_EQ(request_data.requesting_origin,
request_data.requesting_origin.DeprecatedGetOriginAsURL());
DCHECK_EQ(request_data.embedding_origin,
@@ -707,6 +744,8 @@ void PermissionContextBase::UpdateContentSetting(
@@ -707,6 +742,8 @@ void PermissionContextBase::UpdateContentSetting(
constraints.set_session_model(
is_one_time ? content_settings::mojom::SessionModel::ONE_TIME
: content_settings::mojom::SessionModel::DURABLE);
@@ -1122,9 +1116,9 @@ diff --git a/components/permissions/permission_context_base.h b/components/permi
+ virtual std::unique_ptr<PermissionRequest> CreatePermissionRequest(
+ content::WebContents* web_contents,
+ PermissionRequestData request_data,
+ std::unique_ptr<PermissionRequestData> request_data,
+ PermissionRequest::PermissionDecidedCallbackWithLifetime permission_decided_callback,
+ base::OnceClosure delete_callback) const;
+ base::OnceClosure request_finished_callback) const;
+
// Implementors can override this method to avoid using automatic embargo.
virtual bool UsesAutomaticEmbargo() const;
@@ -1156,22 +1150,24 @@ diff --git a/components/permissions/permission_prompt.h b/components/permissions
diff --git a/components/permissions/permission_request.cc b/components/permissions/permission_request.cc
--- a/components/permissions/permission_request.cc
+++ b/components/permissions/permission_request.cc
@@ -32,6 +32,14 @@ PermissionRequest::PermissionRequest(
@@ -32,6 +32,16 @@ PermissionRequest::PermissionRequest(
request_finished_callback_(std::move(request_finished_callback)),
uses_automatic_embargo_(uses_automatic_embargo) {}
+PermissionRequest::PermissionRequest(
+ PermissionRequestData request_data,
+ std::unique_ptr<PermissionRequestData> request_data,
+ PermissionDecidedCallbackWithLifetime permission_decided_callback,
+ base::OnceClosure delete_callback)
+ base::OnceClosure request_finished_callback,
+ bool uses_automatic_embargo)
+ : data_(std::move(request_data)),
+ permission_decided_callback_withlifetime_(std::move(permission_decided_callback)),
+ delete_callback_(std::move(delete_callback)) {}
+ request_finished_callback_(std::move(request_finished_callback)),
+ uses_automatic_embargo_(uses_automatic_embargo) {}
+
PermissionRequest::~PermissionRequest() {
std::move(request_finished_callback_).Run();
}
@@ -412,19 +420,37 @@ bool PermissionRequest::ShouldUseTwoOriginPrompt() const {
@@ -412,19 +422,37 @@ bool PermissionRequest::ShouldUseTwoOriginPrompt() const {
return request_type() == RequestType::kStorageAccess;
}
@@ -1180,7 +1176,7 @@ diff --git a/components/permissions/permission_request.cc b/components/permissio
+ content_settings::mojom::LifetimeMode lifetime_option) {
+ if (permission_decided_callback_withlifetime_) {
+ std::move(permission_decided_callback_withlifetime_)
+ .Run(CONTENT_SETTING_ALLOW, is_one_time, /*is_final_decision=*/true, lifetime_option);
+ .Run(CONTENT_SETTING_ALLOW, is_one_time, /*is_final_decision=*/true, *data_, lifetime_option);
+ return;
+ }
std::move(permission_decided_callback_)
@@ -1193,7 +1189,7 @@ diff --git a/components/permissions/permission_request.cc b/components/permissio
+ content_settings::mojom::LifetimeMode lifetime_option) {
+ if (permission_decided_callback_withlifetime_) {
+ std::move(permission_decided_callback_withlifetime_)
+ .Run(CONTENT_SETTING_BLOCK, is_one_time, /*is_final_decision=*/true, lifetime_option);
+ .Run(CONTENT_SETTING_BLOCK, is_one_time, /*is_final_decision=*/true, *data_, lifetime_option);
+ return;
+ }
std::move(permission_decided_callback_)
@@ -1204,7 +1200,7 @@ diff --git a/components/permissions/permission_request.cc b/components/permissio
void PermissionRequest::Cancelled(bool is_final_decision) {
+ if (permission_decided_callback_withlifetime_) {
+ std::move(permission_decided_callback_withlifetime_)
+ .Run(CONTENT_SETTING_DEFAULT, false, is_final_decision,
+ .Run(CONTENT_SETTING_DEFAULT, false, is_final_decision, *data_,
+ content_settings::mojom::LifetimeMode::ALWAYS);
+ return;
+ }
@@ -1214,30 +1210,32 @@ diff --git a/components/permissions/permission_request.cc b/components/permissio
diff --git a/components/permissions/permission_request.h b/components/permissions/permission_request.h
--- a/components/permissions/permission_request.h
+++ b/components/permissions/permission_request.h
@@ -47,6 +47,11 @@ class PermissionRequest {
@@ -47,6 +47,12 @@ class PermissionRequest {
bool /*is_final_decision*/,
const PermissionRequestData& /*request_data*/)>;
+ using PermissionDecidedCallbackWithLifetime =
+ base::OnceCallback<void(ContentSetting /*result*/, bool /*is_one_time*/,
+ bool /*is_final_decision*/,
+ content_settings::mojom::LifetimeMode /*lifetime_option*/)>;
+ using PermissionDecidedCallbackWithLifetime = base::RepeatingCallback<void(
+ ContentSetting /*result*/, bool /*is_one_time*/,
+ bool /*is_final_decision*/,
+ const PermissionRequestData& /*request_data*/,
+ content_settings::mojom::LifetimeMode /*lifetime_option*/)>;
+
// `permission_decided_callback` is called when the permission request is
// resolved by the user (see comment on PermissionDecidedCallback above).
// `request_finished_callback` is called when the permission request is being
@@ -61,6 +66,10 @@ class PermissionRequest {
@@ -61,6 +67,11 @@ class PermissionRequest {
base::OnceClosure request_finished_callback = base::DoNothing(),
bool uses_automatic_embargo = true);
+ PermissionRequest(PermissionRequestData request_data,
+ PermissionRequest(std::unique_ptr<PermissionRequestData> request_data,
+ PermissionDecidedCallbackWithLifetime permission_decided_callback,
+ base::OnceClosure delete_callback);
+ base::OnceClosure request_finished_callback = base::DoNothing(),
+ bool uses_automatic_embargo = true);
+
PermissionRequest(const PermissionRequest&) = delete;
PermissionRequest& operator=(const PermissionRequest&) = delete;
@@ -167,10 +176,10 @@ class PermissionRequest {
@@ -167,10 +178,10 @@ class PermissionRequest {
// If |is_one_time| is true the permission will last until all tabs of
// |origin| are closed or navigated away from, and then the permission will
// automatically expire after 1 day.
@@ -1250,7 +1248,7 @@ diff --git a/components/permissions/permission_request.h b/components/permission
// Called when the user has cancelled the permission request. This
// corresponds to a denial, but is segregated in case the context needs to
@@ -224,6 +233,9 @@ class PermissionRequest {
@@ -224,6 +235,9 @@ class PermissionRequest {
// Called once a decision is made about the permission.
PermissionDecidedCallback permission_decided_callback_;
@@ -18,19 +18,19 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
components/bookmark_bar_strings.grdp | 6 +++
.../bookmarks/browser/bookmark_codec.cc | 20 +++++++--
components/bookmarks/browser/bookmark_codec.h | 7 ++-
.../browser/bookmark_load_details.cc | 14 ++++--
.../browser/bookmark_load_details.cc | 15 +++++--
.../bookmarks/browser/bookmark_load_details.h | 2 +
.../bookmarks/browser/bookmark_model.cc | 3 +-
components/bookmarks/browser/bookmark_model.h | 7 +++
components/bookmarks/browser/bookmark_node.cc | 11 +++++
components/bookmarks/browser/bookmark_node.h | 3 ++
components/bookmarks/browser/bookmark_node.cc | 13 ++++++
components/bookmarks/browser/bookmark_node.h | 4 ++
.../bookmarks/browser/bookmark_storage.cc | 2 +
.../bookmarks/browser/bookmark_uuids.cc | 3 ++
components/bookmarks/browser/bookmark_uuids.h | 1 +
components/bookmarks/browser/model_loader.cc | 8 +++-
components/bookmarks/browser/model_loader.cc | 9 +++-
...ookmark_model_merger_comparison_metrics.cc | 4 ++
.../bookmark_specifics_conversions.cc | 1 +
26 files changed, 245 insertions(+), 14 deletions(-)
26 files changed, 250 insertions(+), 14 deletions(-)
diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/res/menu/main_menu.xml
--- a/chrome/android/java/res/menu/main_menu.xml
@@ -140,7 +140,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browser/bookmarks/android/bookmark_bridge.cc
--- a/chrome/browser/bookmarks/android/bookmark_bridge.cc
+++ b/chrome/browser/bookmarks/android/bookmark_bridge.cc
@@ -391,6 +391,33 @@ jboolean BookmarkBridge::AreAccountBookmarkFoldersActive(JNIEnv* env) {
@@ -390,6 +390,33 @@ jboolean BookmarkBridge::AreAccountBookmarkFoldersActive(JNIEnv* env) {
return bookmark_model_->account_mobile_node() != nullptr;
}
@@ -174,7 +174,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse
base::android::ScopedJavaLocalRef<jobject>
BookmarkBridge::GetMostRecentlyAddedUserBookmarkIdForUrl(JNIEnv* env,
const GURL& url) {
@@ -503,6 +530,7 @@ void BookmarkBridge::GetAllFoldersWithDepths(
@@ -502,6 +529,7 @@ void BookmarkBridge::GetAllFoldersWithDepths(
// Vector to temporarily contain all child bookmarks at same level for sorting
std::vector<const BookmarkNode*> bookmarks = {
bookmark_model_->mobile_node(),
@@ -182,7 +182,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse
bookmark_model_->bookmark_bar_node(),
bookmark_model_->other_node(),
};
@@ -611,6 +639,9 @@ std::vector<const BookmarkNode*> BookmarkBridge::GetTopLevelFolderIdsImpl(
@@ -610,6 +638,9 @@ std::vector<const BookmarkNode*> BookmarkBridge::GetTopLevelFolderIdsImpl(
top_level_folders.push_back(other_node);
}
@@ -192,7 +192,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse
const BookmarkNode* reading_list_node =
local_or_syncable_reading_list_manager_->GetRoot();
if (IsPermanentFolderVisible(
@@ -1338,6 +1369,17 @@ void BookmarkBridge::GetBookmarksOfType(
@@ -1337,6 +1368,17 @@ void BookmarkBridge::GetBookmarksOfType(
AddBookmarkNodesToBookmarkIdList(env, j_list, results);
}
@@ -646,16 +646,17 @@ diff --git a/components/bookmarks/browser/bookmark_load_details.cc b/components/
void UpdateUserFolderStatsRecursively(const BookmarkNode& node,
bool top_level,
@@ -63,6 +63,8 @@ BookmarkLoadDetails::BookmarkLoadDetails()
@@ -63,6 +63,9 @@ BookmarkLoadDetails::BookmarkLoadDetails()
mobile_folder_node_ = static_cast<BookmarkPermanentNode*>(
root_node_->Add(BookmarkPermanentNode::CreateMobileBookmarks(
/*id=*/0, /*is_account_node=*/false)));
+ tabs_collection_folder_node_ = static_cast<BookmarkPermanentNode*>(
+ root_node_->Add(BookmarkPermanentNode::CreateTabsCollectionBookmarks(/*id=*/0)));
+ root_node_->Add(BookmarkPermanentNode::CreateTabsCollectionBookmarks(
+ /*id=*/0, /*is_account_node=*/false)));
// Set the nodes' `date_added` to the same time so that there is no inherent
// hierarchy in terms of their added time between them. This is relevant for
@@ -119,6 +121,10 @@ void BookmarkLoadDetails::PopulateNodeIdsForLocalOrSyncablePermanentNodes() {
@@ -119,6 +122,10 @@ void BookmarkLoadDetails::PopulateNodeIdsForLocalOrSyncablePermanentNodes() {
if (mobile_folder_node_->id() == 0) {
mobile_folder_node_->set_id(max_id_++);
}
@@ -666,7 +667,7 @@ diff --git a/components/bookmarks/browser/bookmark_load_details.cc b/components/
}
void BookmarkLoadDetails::AddManagedNode(
@@ -131,6 +137,7 @@ void BookmarkLoadDetails::AddManagedNode(
@@ -131,6 +138,7 @@ void BookmarkLoadDetails::AddManagedNode(
CHECK_NE(bb_node_->id(), 0);
CHECK_NE(other_folder_node_->id(), 0);
CHECK_NE(mobile_folder_node_->id(), 0);
@@ -674,7 +675,7 @@ diff --git a/components/bookmarks/browser/bookmark_load_details.cc b/components/
has_managed_node_ = true;
root_node_->Add(std::move(managed_node));
@@ -138,8 +145,8 @@ void BookmarkLoadDetails::AddManagedNode(
@@ -138,8 +146,8 @@ void BookmarkLoadDetails::AddManagedNode(
void BookmarkLoadDetails::CreateIndices() {
local_or_syncable_uuid_index_.insert(root_node_.get());
@@ -685,7 +686,7 @@ diff --git a/components/bookmarks/browser/bookmark_load_details.cc b/components/
for (const auto& child : root_node_->children()) {
if (child.get() == account_bb_node_ ||
child.get() == account_other_folder_node_ ||
@@ -158,6 +165,7 @@ void BookmarkLoadDetails::ResetPermanentNodePointers() {
@@ -158,6 +166,7 @@ void BookmarkLoadDetails::ResetPermanentNodePointers() {
bb_node_ = nullptr;
other_folder_node_ = nullptr;
mobile_folder_node_ = nullptr;
@@ -768,17 +769,19 @@ diff --git a/components/bookmarks/browser/bookmark_node.cc b/components/bookmark
case BookmarkNode::URL:
NOTREACHED();
case BookmarkNode::FOLDER:
@@ -213,6 +215,15 @@ BookmarkPermanentNode::CreateMobileBookmarks(int64_t id,
@@ -213,6 +215,17 @@ BookmarkPermanentNode::CreateMobileBookmarks(int64_t id,
is_account_node));
}
+// static
+std::unique_ptr<BookmarkPermanentNode>
+BookmarkPermanentNode::CreateTabsCollectionBookmarks(int64_t id) {
+BookmarkPermanentNode::CreateTabsCollectionBookmarks(int64_t id,
+ bool is_account_node) {
+ // base::WrapUnique() used because the constructor is private.
+ return base::WrapUnique(new BookmarkPermanentNode(
+ id, TABS_COLLECTION, base::Uuid::ParseLowercase(kTabsCollectionBookmarksNodeUuid),
+ l10n_util::GetStringUTF16(IDS_BOOKMARK_BAR_TABS_COLLECTION_FOLDER_NAME)));
+ l10n_util::GetStringUTF16(IDS_BOOKMARK_BAR_TABS_COLLECTION_FOLDER_NAME),
+ is_account_node));
+}
+
BookmarkPermanentNode::BookmarkPermanentNode(int64_t id,
@@ -795,12 +798,13 @@ diff --git a/components/bookmarks/browser/bookmark_node.h b/components/bookmarks
MOBILE
};
@@ -249,6 +250,8 @@ class BookmarkPermanentNode : public BookmarkNode {
@@ -249,6 +250,9 @@ class BookmarkPermanentNode : public BookmarkNode {
static std::unique_ptr<BookmarkPermanentNode> CreateMobileBookmarks(
int64_t id,
bool is_account_node);
+ static std::unique_ptr<BookmarkPermanentNode> CreateTabsCollectionBookmarks(
+ int64_t id);
+ int64_t id,
+ bool is_account_node);
// Returns whether the permanent node of type `type` should be visible even
// when it is empty (i.e. no children).
@@ -850,16 +854,17 @@ diff --git a/components/bookmarks/browser/bookmark_uuids.h b/components/bookmark
diff --git a/components/bookmarks/browser/model_loader.cc b/components/bookmarks/browser/model_loader.cc
--- a/components/bookmarks/browser/model_loader.cc
+++ b/components/bookmarks/browser/model_loader.cc
@@ -74,6 +74,8 @@ std::unique_ptr<BookmarkLoadDetails> LoadBookmarks(
@@ -74,6 +74,9 @@ std::unique_ptr<BookmarkLoadDetails> LoadBookmarks(
std::unique_ptr<BookmarkPermanentNode> account_mobile_folder_node =
BookmarkPermanentNode::CreateMobileBookmarks(
0, /*is_account_node=*/true);
+ std::unique_ptr<BookmarkPermanentNode> tabs_collection_folder_node =
+ BookmarkPermanentNode::CreateTabsCollectionBookmarks(0);
+ BookmarkPermanentNode::CreateTabsCollectionBookmarks(
+ 0, /*is_account_node=*/true);
std::optional<base::Value::Dict> root_dict =
LoadFileToDict(account_file_path);
@@ -81,7 +83,8 @@ std::unique_ptr<BookmarkLoadDetails> LoadBookmarks(
@@ -81,7 +84,8 @@ std::unique_ptr<BookmarkLoadDetails> LoadBookmarks(
if (root_dict.has_value() &&
codec.Decode(*root_dict, /*already_assigned_ids=*/{},
account_bb_node.get(), account_other_folder_node.get(),
@@ -869,7 +874,7 @@ diff --git a/components/bookmarks/browser/model_loader.cc b/components/bookmarks
&sync_metadata_str)) {
ids_assigned_to_account_nodes = codec.release_assigned_ids();
@@ -123,7 +126,8 @@ std::unique_ptr<BookmarkLoadDetails> LoadBookmarks(
@@ -123,7 +127,8 @@ std::unique_ptr<BookmarkLoadDetails> LoadBookmarks(
if (root_dict.has_value() &&
codec.Decode(*root_dict, std::move(ids_assigned_to_account_nodes),
details->bb_node(), details->other_folder_node(),
@@ -7,12 +7,13 @@ Ignore any partner-provided home page.
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
.../org/chromium/chrome/browser/homepage/HomepageManager.java | 4 ----
.../chrome/browser/new_tab_url/DseNewTabUrlManager.java | 1 +
.../partnerbookmarks/PartnerBookmarksProviderIterator.java | 1 +
.../partnercustomizations/PartnerBrowserCustomizations.java | 2 +-
.../org/chromium/components/search_engines/TemplateUrl.java | 1 +
.../search_engines/android/template_url_service_android.cc | 1 +
.../always-use-new-tab-page-for-default-home-page.inc | 2 ++
6 files changed, 6 insertions(+), 5 deletions(-)
.../always-use-new-tab-page-for-default-home-page.inc | 1 +
7 files changed, 6 insertions(+), 5 deletions(-)
create mode 100755 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/always-use-new-tab-page-for-default-home-page.inc
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java
@@ -29,6 +30,17 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/Homepa
String homepagePartnerDefaultGurlSerialized =
ChromeSharedPreferences.getInstance()
.readString(
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/new_tab_url/DseNewTabUrlManager.java b/chrome/android/java/src/org/chromium/chrome/browser/new_tab_url/DseNewTabUrlManager.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/new_tab_url/DseNewTabUrlManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/new_tab_url/DseNewTabUrlManager.java
@@ -54,6 +54,7 @@ public class DseNewTabUrlManager {
/** Returns whether the feature NewTabSearchEngineUrlAndroid is enabled. */
public static boolean isNewTabSearchEngineUrlAndroidEnabled() {
+ if ((true)) return false;
return ChromeSharedPreferences.getInstance()
.readBoolean(ChromePreferenceKeys.IS_EEA_CHOICE_COUNTRY, false)
|| (OmniboxFeatures.sOmniboxMobileParityUpdate.isEnabled()
diff --git a/chrome/browser/partnerbookmarks/android/java/src/org/chromium/chrome/browser/partnerbookmarks/PartnerBookmarksProviderIterator.java b/chrome/browser/partnerbookmarks/android/java/src/org/chromium/chrome/browser/partnerbookmarks/PartnerBookmarksProviderIterator.java
--- a/chrome/browser/partnerbookmarks/android/java/src/org/chromium/chrome/browser/partnerbookmarks/PartnerBookmarksProviderIterator.java
+++ b/chrome/browser/partnerbookmarks/android/java/src/org/chromium/chrome/browser/partnerbookmarks/PartnerBookmarksProviderIterator.java
@@ -78,7 +90,6 @@ diff --git a/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/a
new file mode 100755
--- /dev/null
+++ b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/always-use-new-tab-page-for-default-home-page.inc
@@ -0,0 +1,2 @@
+SET_CROMITE_FEATURE_DISABLED(kNewTabSearchEngineUrlAndroid);
@@ -0,0 +1 @@
+SET_CROMITE_FEATURE_DISABLED(kPartnerCustomizationsUma);
--
+7 -7
View File
@@ -771,8 +771,8 @@ new file mode 100644
+ // Passing the endpoint_fetcher ensures the endpoint_fetcher's
+ // lifetime extends to the callback and is not destroyed
+ // prematurely (which would result in cancellation of the request).
+ std::unique_ptr<EndpointFetcher> endpoint_fetcher,
+ std::unique_ptr<EndpointResponse> endpoint_response) {
+ std::unique_ptr<endpoint_fetcher::EndpointFetcher> endpoint_fetcher,
+ std::unique_ptr<endpoint_fetcher::EndpointResponse> endpoint_response) {
+ base::android::RunObjectCallbackAndroid(
+ jcaller, Java_EndpointResponse_createEndpointResponse(
+ base::android::AttachCurrentThread(),
@@ -786,8 +786,8 @@ new file mode 100644
+ // Passing the endpoint_fetcher ensures the endpoint_fetcher's
+ // lifetime extends to the callback and is not destroyed
+ // prematurely (which would result in cancellation of the request).
+ std::unique_ptr<EndpointFetcher> endpoint_fetcher,
+ std::unique_ptr<EndpointResponse> endpoint_response) {
+ std::unique_ptr<endpoint_fetcher::EndpointFetcher> endpoint_fetcher,
+ std::unique_ptr<endpoint_fetcher::EndpointResponse> endpoint_response) {
+ base::android::RunObjectCallbackAndroid(
+ jcaller, Java_EndpointHeaderResponse_createEndpointResponse(
+ base::android::AttachCurrentThread(),
@@ -817,7 +817,7 @@ new file mode 100644
+ const base::android::JavaParamRef<jobject>& jcallback) {
+ std::vector<std::string> scopes;
+ base::android::AppendJavaStringArrayToStringVector(env, jscopes, &scopes);
+ auto endpoint_fetcher = std::make_unique<EndpointFetcher>(
+ auto endpoint_fetcher = std::make_unique<endpoint_fetcher::EndpointFetcher>(
+ Profile::FromJavaObject(jprofile)
+ ->GetDefaultStoragePartition()
+ ->GetURLLoaderFactoryForBrowserProcess(),
@@ -849,7 +849,7 @@ new file mode 100644
+ jlong jtimeout, jboolean intercept_redirect,
+ jint jannotation_hash_code,
+ const base::android::JavaParamRef<jobject>& jcallback) {
+ auto endpoint_fetcher = std::make_unique<EndpointFetcher>(
+ auto endpoint_fetcher = std::make_unique<endpoint_fetcher::EndpointFetcher>(
+ Profile::FromJavaObject(jprofile)
+ ->GetDefaultStoragePartition()
+ ->GetURLLoaderFactoryForBrowserProcess(),
@@ -876,7 +876,7 @@ new file mode 100644
+ jlong jtimeout, jboolean intercept_redirect,
+ jint jannotation_hash_code,
+ const base::android::JavaParamRef<jobject>& jcallback) {
+ auto endpoint_fetcher = std::make_unique<EndpointFetcher>(
+ auto endpoint_fetcher = std::make_unique<endpoint_fetcher::EndpointFetcher>(
+ Profile::FromJavaObject(jprofile)
+ ->GetDefaultStoragePartition()
+ ->GetURLLoaderFactoryForBrowserProcess(),
@@ -1596,12 +1596,12 @@ diff --git a/components/subresource_filter/content/browser/content_subresource_f
ad_tagging_state);
}
+
+ const GURL& url(navigation_handle->GetURL());
+ const GURL& url(navigation_handle.GetURL());
+ if (profile_context_->settings_manager()->GetSitePermission(url) != CONTENT_SETTING_ALLOW) {
+ subresource_filter::ActivationDecision ignored_decision;
+ mojom::ActivationState ad_filtering_state;
+ ad_filtering_state.activation_level = profile_interaction_manager_->OnPageActivationComputed(
+ navigation_handle, mojom::ActivationLevel::kEnabled, &ignored_decision);
+ &navigation_handle, mojom::ActivationLevel::kEnabled, &ignored_decision);
+ throttle->NotifyPageActivationWithRuleset(EnsureRulesetHandle(),
+ ad_filtering_state);
+ }
@@ -5,11 +5,25 @@ Subject: Disable Android Tab Declutter
Original License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
chrome/android/java/res/xml/main_preferences.xml | 3 ++-
.../org/chromium/chrome/browser/tab/TabArchiveSettings.java | 3 ++-
.../chrome_feature_list_cc/Disable-Android-Tab-Declutter.inc | 1 +
2 files changed, 3 insertions(+), 1 deletion(-)
3 files changed, 5 insertions(+), 2 deletions(-)
create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Disable-Android-Tab-Declutter.inc
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
@@ -105,7 +105,8 @@ for the previous order (main_preferences_legacy). -->
android:fragment="org.chromium.chrome.browser.tasks.tab_management.TabsSettings"
android:key="tabs"
android:order="18"
- android:title="@string/tabs_settings_title"/>
+ android:title="@string/tabs_settings_title"
+ app:isPreferenceVisible="false"/>
<Preference
android:fragment="org.chromium.chrome.browser.homepage.settings.HomepageSettings"
android:key="homepage"
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabArchiveSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabArchiveSettings.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabArchiveSettings.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabArchiveSettings.java
@@ -32,5 +46,5 @@ new file mode 100644
--- /dev/null
+++ b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Disable-Android-Tab-Declutter.inc
@@ -0,0 +1 @@
+SET_CROMITE_FEATURE_DISABLED(kAndroidTabDeclutter);
+// empty
--
+15 -2
View File
@@ -4,13 +4,26 @@ Subject: Disable FedCm
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
.../content_settings/core/browser/content_settings_registry.cc | 2 +-
.../content/public/common/content_features_cc/Disable-FedCm.inc | 1 +
.../third_party/blink/common/features_cc/Disable-FedCm.inc | 1 +
.../blink/renderer/platform/runtime_enabled_features.json5 | 2 +-
3 files changed, 3 insertions(+), 1 deletion(-)
4 files changed, 4 insertions(+), 2 deletions(-)
create mode 100644 cromite_flags/content/public/common/content_features_cc/Disable-FedCm.inc
create mode 100644 cromite_flags/third_party/blink/common/features_cc/Disable-FedCm.inc
diff --git a/components/content_settings/core/browser/content_settings_registry.cc b/components/content_settings/core/browser/content_settings_registry.cc
--- a/components/content_settings/core/browser/content_settings_registry.cc
+++ b/components/content_settings/core/browser/content_settings_registry.cc
@@ -674,7 +674,7 @@ void ContentSettingsRegistry::Init() {
ContentSettingsInfo::EXCEPTIONS_ON_SECURE_ORIGINS_ONLY);
Register(ContentSettingsType::FEDERATED_IDENTITY_AUTO_REAUTHN_PERMISSION,
- "webid-auto-reauthn", CONTENT_SETTING_ALLOW,
+ "webid-auto-reauthn", CONTENT_SETTING_BLOCK, // requires user mediation
WebsiteSettingsInfo::UNSYNCABLE,
/*allowlisted_primary_schemes=*/{},
/*valid_settings=*/{CONTENT_SETTING_ALLOW, CONTENT_SETTING_BLOCK},
diff --git a/cromite_flags/content/public/common/content_features_cc/Disable-FedCm.inc b/cromite_flags/content/public/common/content_features_cc/Disable-FedCm.inc
new file mode 100644
--- /dev/null
@@ -22,7 +35,7 @@ new file mode 100644
--- /dev/null
+++ b/cromite_flags/third_party/blink/common/features_cc/Disable-FedCm.inc
@@ -0,0 +1 @@
+SET_CROMITE_FEATURE_DISABLED(kFedCmWithStorageAccessAPI);
+// empty
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -13,6 +13,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../optimization_guide_keyed_service.cc | 1 -
chrome/browser/permissions/BUILD.gn | 2 --
.../permissions/chrome_permissions_client.cc | 2 --
.../prediction_model_handler_provider.cc | 2 +-
.../predictors/autocomplete_action_predictor.cc | 2 ++
.../predictors/loading_predictor_config.cc | 4 ++--
chrome/browser/predictors/predictors_features.cc | 3 +--
@@ -54,7 +55,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../core/html/parser/html_document_parser.cc | 1 +
.../document_speculation_rules.cc | 1 +
.../platform/runtime_enabled_features.json5 | 2 +-
49 files changed, 123 insertions(+), 48 deletions(-)
50 files changed, 124 insertions(+), 49 deletions(-)
create mode 100644 cromite_flags/chrome/browser/browser_features_cc/Disable-all-predictors-code.inc
create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Disable-all-predictors-code.inc
create mode 100644 cromite_flags/chrome/common/chrome_features_cc/Disable-all-predictors-code.inc
@@ -219,6 +220,21 @@ diff --git a/chrome/browser/permissions/chrome_permissions_client.cc b/chrome/br
return selectors;
}
diff --git a/chrome/browser/permissions/prediction_model_handler_provider.cc b/chrome/browser/permissions/prediction_model_handler_provider.cc
--- a/chrome/browser/permissions/prediction_model_handler_provider.cc
+++ b/chrome/browser/permissions/prediction_model_handler_provider.cc
@@ -13,10 +13,10 @@
#include "chrome/browser/permissions/permissions_aiv1_handler.h"
#include "components/optimization_guide/core/optimization_guide_model_provider.h"
#include "components/permissions/features.h"
-#include "components/permissions/prediction_service/permissions_aiv3_handler.h"
#include "components/permissions/request_type.h"
#if BUILDFLAG(BUILD_WITH_TFLITE_LIB)
+#include "components/permissions/prediction_service/permissions_aiv3_handler.h"
#include "components/permissions/prediction_service/prediction_model_handler.h"
#endif // BUILDFLAG(BUILD_WITH_TFLITE_LIB)
diff --git a/chrome/browser/predictors/autocomplete_action_predictor.cc b/chrome/browser/predictors/autocomplete_action_predictor.cc
--- a/chrome/browser/predictors/autocomplete_action_predictor.cc
+++ b/chrome/browser/predictors/autocomplete_action_predictor.cc
+66 -1
View File
@@ -10,14 +10,19 @@ Also disable FirstPartySets and StorageAccessAPI.
Original License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
chrome/android/BUILD.gn | 1 -
.../browser/chrome_content_browser_client.cc | 5 ++++-
.../first_party_sets_navigation_throttle.cc | 2 +-
.../first_party_sets_policy_service.cc | 3 ++-
chrome/browser/privacy_sandbox/BUILD.gn | 1 -
.../privacy_sandbox_service_impl.cc | 3 ++-
.../privacy_sandbox_settings_delegate.cc | 1 +
.../settings/privacy_page/cookies_page.ts | 2 +-
chrome/test/BUILD.gn | 2 --
.../site_settings/RwsCookieSettings.java | 4 ++--
.../history/core/browser/history_backend.cc | 13 +------------
.../privacy_sandbox_attestations/BUILD.gn | 4 ----
.../preload/BUILD.gn | 2 +-
.../privacy_sandbox_attestations.cc | 2 --
.../privacy_sandbox_features.cc | 3 +++
.../privacy_sandbox/privacy_sandbox_prefs.cc | 4 ++--
@@ -31,12 +36,23 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../features_cc/Disable-privacy-sandbox.inc | 1 +
.../features_cc/Disable-privacy-sandbox.inc | 1 +
third_party/blink/common/features.cc | 1 +
21 files changed, 51 insertions(+), 32 deletions(-)
26 files changed, 52 insertions(+), 41 deletions(-)
create mode 100644 cromite_flags/content/common/features_cc/Disable-privacy-sandbox.inc
create mode 100644 cromite_flags/content/public/common/content_features_cc/Disable-privacy-sandbox.inc
create mode 100644 cromite_flags/services/network/public/cpp/features_cc/Disable-privacy-sandbox.inc
create mode 100644 cromite_flags/third_party/blink/common/features_cc/Disable-privacy-sandbox.inc
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
--- a/chrome/android/BUILD.gn
+++ b/chrome/android/BUILD.gn
@@ -1655,7 +1655,6 @@ if (_is_default_toolchain) {
java_group("chrome_public_non_pak_assets") {
deps = [
"//chrome/android/webapk/libs/runtime_library:runtime_library_assets",
- "//components/privacy_sandbox/privacy_sandbox_attestations/preload:privacy_sandbox_attestations_assets",
]
}
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
@@ -91,6 +107,17 @@ diff --git a/chrome/browser/first_party_sets/first_party_sets_policy_service.cc
if (service_state_ == ServiceState::kPermanentlyDisabled) {
OnReadyToNotifyDelegates(net::FirstPartySetsContextConfig(),
net::FirstPartySetsCacheFilter());
diff --git a/chrome/browser/privacy_sandbox/BUILD.gn b/chrome/browser/privacy_sandbox/BUILD.gn
--- a/chrome/browser/privacy_sandbox/BUILD.gn
+++ b/chrome/browser/privacy_sandbox/BUILD.gn
@@ -166,7 +166,6 @@ if (!is_android) {
"//components/privacy_sandbox:test_support",
"//components/privacy_sandbox/privacy_sandbox_attestations",
"//components/privacy_sandbox/privacy_sandbox_attestations:metrics",
- "//components/privacy_sandbox/privacy_sandbox_attestations/preload",
"//components/privacy_sandbox/privacy_sandbox_attestations/proto",
"//content/test:test_support",
]
diff --git a/chrome/browser/privacy_sandbox/privacy_sandbox_service_impl.cc b/chrome/browser/privacy_sandbox/privacy_sandbox_service_impl.cc
--- a/chrome/browser/privacy_sandbox/privacy_sandbox_service_impl.cc
+++ b/chrome/browser/privacy_sandbox/privacy_sandbox_service_impl.cc
@@ -134,6 +161,18 @@ diff --git a/chrome/browser/resources/settings/privacy_page/cookies_page.ts b/ch
CookieControlsMode.BLOCK_THIRD_PARTY;
}
diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn
--- a/chrome/test/BUILD.gn
+++ b/chrome/test/BUILD.gn
@@ -1821,8 +1821,6 @@ if (is_android) {
"//components/privacy_sandbox/privacy_sandbox_attestations",
"//components/privacy_sandbox/privacy_sandbox_attestations:metrics",
"//components/privacy_sandbox/privacy_sandbox_attestations:test_support",
- "//components/privacy_sandbox/privacy_sandbox_attestations/preload:preload",
- "//components/privacy_sandbox/privacy_sandbox_attestations/preload:privacy_sandbox_attestations_assets",
"//components/privacy_sandbox/privacy_sandbox_attestations/proto:proto",
"//components/qr_code_generator:bitmap_generator",
"//components/safe_browsing/content/common:interfaces",
diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/RwsCookieSettings.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/RwsCookieSettings.java
--- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/RwsCookieSettings.java
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/RwsCookieSettings.java
@@ -178,6 +217,32 @@ diff --git a/components/history/core/browser/history_backend.cc b/components/his
ScheduleCommit();
}
diff --git a/components/privacy_sandbox/privacy_sandbox_attestations/BUILD.gn b/components/privacy_sandbox/privacy_sandbox_attestations/BUILD.gn
--- a/components/privacy_sandbox/privacy_sandbox_attestations/BUILD.gn
+++ b/components/privacy_sandbox/privacy_sandbox_attestations/BUILD.gn
@@ -25,10 +25,6 @@ if (use_blink) {
"//content/public/browser",
]
- if (is_android) {
- deps += [ "//components/privacy_sandbox/privacy_sandbox_attestations/preload:preload" ]
- }
-
public_deps = [
"//base",
"//build:buildflag_header_h",
diff --git a/components/privacy_sandbox/privacy_sandbox_attestations/preload/BUILD.gn b/components/privacy_sandbox/privacy_sandbox_attestations/preload/BUILD.gn
--- a/components/privacy_sandbox/privacy_sandbox_attestations/preload/BUILD.gn
+++ b/components/privacy_sandbox/privacy_sandbox_attestations/preload/BUILD.gn
@@ -23,7 +23,7 @@ if (is_mac) {
}
}
-if (is_android) {
+if (((false)) && is_android) {
import("//build/config/android/rules.gni")
# Bundle the preload attestations list to Android APK assets.
diff --git a/components/privacy_sandbox/privacy_sandbox_attestations/privacy_sandbox_attestations.cc b/components/privacy_sandbox/privacy_sandbox_attestations/privacy_sandbox_attestations.cc
--- a/components/privacy_sandbox/privacy_sandbox_attestations/privacy_sandbox_attestations.cc
+++ b/components/privacy_sandbox/privacy_sandbox_attestations/privacy_sandbox_attestations.cc
@@ -33,7 +33,15 @@ diff --git a/chrome/version.gni b/chrome/version.gni
diff --git a/components/viz/common/features.cc b/components/viz/common/features.cc
--- a/components/viz/common/features.cc
+++ b/components/viz/common/features.cc
@@ -329,9 +329,11 @@ BASE_FEATURE(kEnableInteractiveOnlyADPFRenderer,
@@ -217,6 +217,7 @@ const base::FeatureParam<std::string> kWebViewADPFSocManufacturerBlocklist{
BASE_FEATURE(kWebViewEnableADPFRendererMain,
"WebViewEnableADPFRendererMain",
base::FEATURE_DISABLED_BY_DEFAULT);
+SET_CROMITE_FEATURE_ENABLED(kWebViewEnableADPFRendererMain);
// If enabled, the GPU Main thread is included in the set of threads reported
// to the HWUI. This feature works only when WebViewEnableADPF is enabled,
@@ -331,6 +332,7 @@ BASE_FEATURE(kEnableInteractiveOnlyADPFRenderer,
// If enabled, Chrome includes the Compositor GPU Thread into the
// ADPF(Android Dynamic Performance Framework) hint session, instead
// of the GPU Main Thread.
@@ -41,10 +49,6 @@ diff --git a/components/viz/common/features.cc b/components/viz/common/features.
BASE_FEATURE(kEnableADPFGpuCompositorThread,
"EnableADPFGpuCompositorThread",
base::FEATURE_ENABLED_BY_DEFAULT);
+SET_CROMITE_FEATURE_ENABLED(kEnableADPFRendererMain);
// If enabled, Chrome puts Renderer Main threads into a separate
// ADPF(Android Dynamic Performance Framework) hint session, and does not
diff --git a/components/viz/service/performance_hint/hint_session.cc b/components/viz/service/performance_hint/hint_session.cc
--- a/components/viz/service/performance_hint/hint_session.cc
+++ b/components/viz/service/performance_hint/hint_session.cc
@@ -8,7 +8,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
chrome/android/chrome_java_sources.gni | 1 +
.../android/java/res/xml/gpc_preferences.xml | 15 +++
.../java/res/xml/privacy_preferences.xml | 4 +
.../browser/privacy/settings/GpcSettings.java | 50 ++++++++
.../browser/privacy/settings/GpcSettings.java | 56 +++++++++
.../privacy/settings/PrivacySettings.java | 9 ++
chrome/app/settings_strings.grdp | 15 +++
.../api/settings_private/prefs_util.cc | 1 +
@@ -46,7 +46,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
.../web_service_worker_fetch_context_impl.cc | 3 +
...ted_or_shared_worker_fetch_context_impl.cc | 3 +
.../platform/runtime_enabled_features.json5 | 5 +
42 files changed, 384 insertions(+)
42 files changed, 390 insertions(+)
create mode 100644 chrome/android/java/res/xml/gpc_preferences.xml
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/GpcSettings.java
create mode 100644 chrome/browser/resources/settings/privacy_page/gpc_toggle.html
@@ -118,7 +118,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
new file mode 100644
--- /dev/null
+++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/GpcSettings.java
@@ -0,0 +1,50 @@
@@ -0,0 +1,56 @@
+package org.chromium.chrome.browser.privacy.settings;
+
+import android.os.Bundle;
@@ -129,6 +129,7 @@ new file mode 100644
+import org.chromium.chrome.R;
+import org.chromium.chrome.browser.preferences.Pref;
+import org.chromium.chrome.browser.settings.ChromeBaseSettingsFragment;
+import org.chromium.components.browser_ui.settings.SettingsFragment;
+import org.chromium.components.browser_ui.settings.ChromeSwitchPreference;
+import org.chromium.components.browser_ui.settings.SettingsUtils;
+import org.chromium.components.prefs.PrefService;
@@ -140,6 +141,11 @@ new file mode 100644
+ private final ObservableSupplierImpl<String> mPageTitle = new ObservableSupplierImpl<>();
+
+ @Override
+ public @SettingsFragment.AnimationType int getAnimationType() {
+ return SettingsFragment.AnimationType.PROPERTY;
+ }
+
+ @Override
+ public void onActivityCreated(Bundle savedInstanceState) {
+ super.onActivityCreated(savedInstanceState);
+
@@ -480,7 +486,7 @@ diff --git a/chrome/browser/ui/prefs/pref_watcher.h b/chrome/browser/ui/prefs/pr
diff --git a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc
--- a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc
+++ b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc
@@ -1877,6 +1877,9 @@ void AddPrivacyStrings(content::WebUIDataSource* html_source,
@@ -1871,6 +1871,9 @@ void AddPrivacyStrings(content::WebUIDataSource* html_source,
{"doNotTrackDialogMessage", IDS_SETTINGS_ENABLE_DO_NOT_TRACK_DIALOG_TEXT},
{"doNotTrackDialogLearnMoreA11yLabel",
IDS_SETTINGS_ENABLE_DO_NOT_TRACK_DIALOG_LEARN_MORE_ACCESSIBILITY_LABEL},
+1 -1
View File
@@ -501,7 +501,7 @@ diff --git a/components/crx_file/crx_verifier.cc b/components/crx_file/crx_verif
(accept_publisher_test_key && key_hash == kPublisherTestKeyHash);
+
+ DLOG(INFO) << "---key_hash: " << base::HexEncode(key_hash);
+ DLOG(INFO) << "---publisher_key: " << base::HexEncode(publisher_key);
+ DLOG(INFO) << "---publisher_key: " << base::HexEncode(kPublisherKeyHash);
+ DLOG(INFO) << "---found_publisher_key: " << found_publisher_key;
+ DLOG(INFO) << "---sig: " << sig;
+ DLOG(INFO) << "---key: " << key;
@@ -15,7 +15,7 @@ See also: https://github.com/bromite/bromite/issues/547
Original License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
.../settings/PasswordSettings.java | 83 ++++++++++++++++++-
.../settings/PasswordSettings.java | 83 ++++++++++++++++-
.../chrome/browser/settings/MainSettings.java | 3 +-
.../chromium/chrome/browser/tab/TabImpl.java | 41 +++++++--
chrome/browser/about_flags.cc | 31 -------
@@ -25,7 +25,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
chrome/browser/flag_descriptions.cc | 6 --
chrome/browser/flag_descriptions.h | 3 -
.../strings/android_chrome_strings.grd | 6 ++
.../ui/autofill/autofill_client_provider.cc | 78 +----------------
.../ui/autofill/autofill_client_provider.cc | 92 +------------------
.../ui/autofill/autofill_client_provider.h | 6 --
chrome/browser/ui/tab_helpers.cc | 4 +-
components/android_autofill/browser/BUILD.gn | 1 +
@@ -33,11 +33,11 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../browser/android_autofill_manager.h | 2 +
.../autofill/AutofillManagerWrapper.java | 5 +-
.../components/autofill/AutofillProvider.java | 7 ++
.../BrowserSelectionActionMenuDelegate.java | 68 +++++++++++++++
.../BrowserSelectionActionMenuDelegate.java | 68 ++++++++++++++
.../browser/content_autofill_driver.cc | 11 +++
.../content/browser/content_autofill_driver.h | 10 +++
.../content/browser/content_autofill_driver.h | 10 ++
.../content_autofill_driver_factory.cc | 12 +++
.../content/renderer/autofill_agent.cc | 5 ++
.../content/renderer/autofill_agent.cc | 5 +
.../renderer/password_autofill_agent.cc | 5 +-
.../browser/foundations/autofill_driver.h | 2 +
.../foundations/autofill_driver_factory.cc | 4 +
@@ -47,8 +47,8 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../autofill/core/common/autofill_features.cc | 2 +-
.../autofill/core/common/autofill_features.h | 22 -----
.../autofill/core/common/autofill_prefs.cc | 4 +-
.../autofill/core/common/autofill_prefs.h | 5 ++
33 files changed, 276 insertions(+), 165 deletions(-)
.../autofill/core/common/autofill_prefs.h | 5 +
33 files changed, 276 insertions(+), 179 deletions(-)
create mode 100644 components/android_autofill/browser/java/src/org/chromium/components/autofill/BrowserSelectionActionMenuDelegate.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java
@@ -426,7 +426,7 @@ diff --git a/chrome/browser/ui/autofill/autofill_client_provider.cc b/chrome/bro
#include "chrome/browser/metrics/chrome_metrics_service_accessor.h"
#include "components/android_autofill/browser/android_autofill_client.h"
#endif // BUILDFLAG(IS_ANDROID)
@@ -24,67 +22,6 @@
@@ -24,85 +22,13 @@
namespace autofill {
namespace {
@@ -491,11 +491,14 @@ diff --git a/chrome/browser/ui/autofill/autofill_client_provider.cc b/chrome/bro
-#endif // BUILDFLAG(IS_ANDROID)
-}
-
#if BUILDFLAG(IS_ANDROID)
std::string GetTrialGroupForPackage() {
JNIEnv* env = base::android::AttachCurrentThread();
@@ -95,14 +32,11 @@ std::string GetTrialGroupForPackage() {
-#if BUILDFLAG(IS_ANDROID)
-std::string GetTrialGroupForPackage() {
- JNIEnv* env = base::android::AttachCurrentThread();
- return base::android::ConvertJavaStringToUTF8(
- env, Java_AutofillClientProviderUtils_getTrialGroupForPackage(env));
-}
-#endif
-
} // namespace
-AutofillClientProvider::AutofillClientProvider(PrefService* prefs)
@@ -511,7 +514,7 @@ diff --git a/chrome/browser/ui/autofill/autofill_client_provider.cc b/chrome/bro
if (base::FeatureList::IsEnabled(
autofill::features::kAutofillVirtualViewStructureAndroid) &&
base::FeatureList::IsEnabled(
@@ -126,15 +60,7 @@ AutofillClientProvider::~AutofillClientProvider() = default;
@@ -126,15 +52,7 @@ AutofillClientProvider::~AutofillClientProvider() = default;
void AutofillClientProvider::CreateClientForWebContents(
content::WebContents* web_contents) {
@@ -527,6 +530,19 @@ diff --git a/chrome/browser/ui/autofill/autofill_client_provider.cc b/chrome/bro
}
#if BUILDFLAG(IS_ANDROID)
@@ -146,12 +64,6 @@ void AutofillClientProvider::RegisterSyntheticFieldTrialForPackage(
}
void AutofillClientProvider::DelayRegisteringFieldTrialForA11yDeprecation() {
- base::ThreadPool::PostTaskAndReplyWithResult(
- FROM_HERE, {base::TaskPriority::LOWEST},
- base::BindOnce(&GetTrialGroupForPackage),
- base::BindOnce(
- &AutofillClientProvider::RegisterSyntheticFieldTrialForPackage,
- weak_ptr_factory_.GetWeakPtr()));
}
#endif // BUILDFLAG(IS_ANDROID)
diff --git a/chrome/browser/ui/autofill/autofill_client_provider.h b/chrome/browser/ui/autofill/autofill_client_provider.h
--- a/chrome/browser/ui/autofill/autofill_client_provider.h
+++ b/chrome/browser/ui/autofill/autofill_client_provider.h
@@ -43,7 +43,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
chrome/browser/ui/webui/favicon_source.h | 2 +
.../webui/settings/search_engines_handler.cc | 28 +-
.../webui/settings/search_engines_handler.h | 3 +-
.../settings_localized_strings_provider.cc | 8 +
.../settings_localized_strings_provider.cc | 8 +-
...ings_localized_strings_provider_android.cc | 200 ++++++++++++++
...tings_localized_strings_provider_android.h | 19 ++
.../ui/webui/settings/settings_ui_android.cc | 126 +++++++++
@@ -78,7 +78,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
ui/webui/resources/images/BUILD.gn | 2 +-
ui/webui/resources/js/BUILD.gn | 2 +-
ui/webui/resources/js/load_time_data.ts | 17 +-
71 files changed, 1161 insertions(+), 71 deletions(-)
71 files changed, 1160 insertions(+), 72 deletions(-)
create mode 100644 chrome/app/settings_strings_android.grdp
create mode 100644 chrome/browser/search_engines/android/java/res/layout/search_engine_layout.xml
create mode 100644 chrome/browser/ui/webui/settings/settings_localized_strings_provider_android.cc
@@ -1365,20 +1365,7 @@ diff --git a/chrome/browser/ui/webui/settings/search_engines_handler.h b/chrome/
diff --git a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc
--- a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc
+++ b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc
@@ -143,6 +143,12 @@
#include "chrome/browser/ui/webui/settings/system_handler.h"
#endif
+#if BUILDFLAG(IS_ANDROID)
+ html_source->AddString("chromeAndroid", "chrome-android");
+#else
+ html_source->AddString("chromeAndroid", "");
+#endif
+
#if BUILDFLAG(IS_LINUX)
#include "ui/display/screen.h"
#endif
@@ -2458,6 +2464,8 @@ void AddSearchEnginesStrings(content::WebUIDataSource* html_source) {
@@ -2458,6 +2458,8 @@ void AddSearchEnginesStrings(content::WebUIDataSource* html_source) {
{"searchEnginesQueryURL", IDS_SETTINGS_SEARCH_ENGINES_QUERY_URL},
{"searchEnginesQueryURLExplanation",
IDS_SETTINGS_SEARCH_ENGINES_QUERY_URL_EXPLANATION},
@@ -1387,6 +1374,19 @@ diff --git a/chrome/browser/ui/webui/settings/settings_localized_strings_provide
{"searchEnginesMakeDefault", IDS_SETTINGS_SEARCH_ENGINES_MAKE_DEFAULT},
{"searchEnginesActivate", IDS_SETTINGS_SEARCH_ENGINES_ACTIVATE},
{"searchEnginesDeactivate", IDS_SETTINGS_SEARCH_ENGINES_DEACTIVATE},
@@ -3805,7 +3807,11 @@ void AddLocalizedStrings(content::WebUIDataSource* html_source,
AddSiteSettingsStrings(html_source, profile);
AddSiteDataPageStrings(html_source, profile);
AddStorageAccessStrings(html_source);
-
+#if BUILDFLAG(IS_ANDROID)
+ html_source->AddString("chromeAndroid", "chrome-android");
+#else
+ html_source->AddString("chromeAndroid", "");
+#endif
#if !BUILDFLAG(IS_CHROMEOS)
AddDefaultBrowserStrings(html_source);
AddImportDataStrings(html_source);
diff --git a/chrome/browser/ui/webui/settings/settings_localized_strings_provider_android.cc b/chrome/browser/ui/webui/settings/settings_localized_strings_provider_android.cc
new file mode 100644
--- /dev/null
@@ -61,7 +61,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../user_scripts/ScriptListBaseAdapter.java | 163 ++++
.../user_scripts/ScriptListPreference.java | 171 ++++
.../user_scripts/UserScriptsBridge.java | 212 +++++
.../user_scripts/UserScriptsPreferences.java | 116 +++
.../user_scripts/UserScriptsPreferences.java | 122 +++
.../user_scripts/android/java_sources.gni | 18 +
.../android/user_scripts_bridge.cc | 173 ++++
.../android/user_scripts_bridge.h | 31 +
@@ -74,7 +74,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../user-script-ui/user-scripts-ui.js | 9 +
.../browser/ui/user_scripts_ui.cc | 146 ++++
.../user_scripts/browser/ui/user_scripts_ui.h | 46 +
.../browser/user_script_loader.cc | 702 +++++++++++++++
.../browser/user_script_loader.cc | 700 +++++++++++++++
.../user_scripts/browser/user_script_loader.h | 168 ++++
.../browser/user_script_pref_info.cc | 34 +
.../browser/user_script_pref_info.h | 72 ++
@@ -136,7 +136,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../Experimental-user-scripts-support.inc | 13 +
ipc/ipc_message_start.h | 1 +
tools/gritsettings/resource_ids.spec | 6 +
109 files changed, 9356 insertions(+), 3 deletions(-)
109 files changed, 9360 insertions(+), 3 deletions(-)
create mode 100644 components/user_scripts/README.md
create mode 100755 components/user_scripts/android/BUILD.gn
create mode 100644 components/user_scripts/android/java/res/layout/accept_script_item.xml
@@ -2056,7 +2056,7 @@ diff --git a/components/user_scripts/android/java/src/org/chromium/components/us
new file mode 100755
--- /dev/null
+++ b/components/user_scripts/android/java/src/org/chromium/components/user_scripts/UserScriptsPreferences.java
@@ -0,0 +1,116 @@
@@ -0,0 +1,122 @@
+/*
+ This file is part of Bromite.
+
@@ -2093,6 +2093,7 @@ new file mode 100755
+import org.chromium.ui.base.ActivityWindowAndroid;
+
+import org.chromium.components.browser_ui.settings.ChromeSwitchPreference;
+import org.chromium.components.browser_ui.settings.SettingsFragment;
+import org.chromium.components.browser_ui.settings.SettingsUtils;
+import org.chromium.components.browser_ui.settings.TextMessagePreference;
+
@@ -2101,7 +2102,7 @@ new file mode 100755
+
+public class UserScriptsPreferences
+ extends PreferenceFragmentCompat
+ implements SettingsUtils.ISupportHelpAndFeedback {
+ implements SettingsUtils.ISupportHelpAndFeedback, SettingsFragment {
+
+ private static final String PREF_ENABLED_SWITCH = "enabled_switch";
+ private static final String PREF_SCRIPTLISTPREFERENCE = "script_list";
@@ -2111,6 +2112,11 @@ new file mode 100755
+ private FragmentWindowAndroid mWindowAndroid;
+
+ @Override
+ public @AnimationType int getAnimationType() {
+ return AnimationType.PROPERTY;
+ }
+
+ @Override
+ public void onDestroy() {
+ if (mWindowAndroid != null) mWindowAndroid.destroy();
+ super.onDestroy();
@@ -2848,7 +2854,7 @@ diff --git a/components/user_scripts/browser/user_script_loader.cc b/components/
new file mode 100755
--- /dev/null
+++ b/components/user_scripts/browser/user_script_loader.cc
@@ -0,0 +1,702 @@
@@ -0,0 +1,700 @@
+/*
+ This file is part of Bromite.
+
@@ -3110,9 +3116,7 @@ new file mode 100755
+ file->set_content(content);
+
+ // create SHA256 of file
+ char raw[crypto::kSHA256Length] = {0};
+ crypto::SHA256HashString(content, raw, crypto::kSHA256Length);
+ std::string key = base::Base64Encode(std::string_view(raw, crypto::kSHA256Length));
+ std::string key = base::Base64Encode(crypto::SHA256HashString(content));
+ file->set_key(key);
+
+ file->set_url(GURL(base::StrCat({"https://userscripts/file/", key, ".js"})));
+96 -26
View File
@@ -8,7 +8,7 @@ suit Cromite logic.
.../android/java/res/xml/main_preferences.xml | 19 +-
.../adblock_chrome_content_browser_client.cc | 6 +
.../adblock_chrome_content_browser_client.h | 4 +
chrome/browser/adblock/android/BUILD.gn | 2 +-
chrome/browser/adblock/android/BUILD.gn | 3 +-
.../adblock/android/adblock_strings.grd | 56 +-
.../java/res/layout/adblock_custom_item.xml | 14 +-
.../layout/adblock_filter_lists_list_item.xml | 15 +
@@ -16,14 +16,15 @@ suit Cromite logic.
.../AdblockAllowedDomainsFragment.java | 7 +-
.../AdblockCustomFilterListsFragment.java | 37 +-
.../AdblockCustomFiltersFragment.java | 7 +-
.../settings/AdblockCustomItemFragment.java | 20 +-
.../settings/AdblockCustomItemFragment.java | 26 +-
.../settings/AdblockFilterListsAdapter.java | 6 +
.../settings/AdblockSettingsFragment.java | 79 +-
.../settings/AdblockFilterListsFragment.java | 8 +-
.../settings/AdblockSettingsFragment.java | 96 +-
.../browser/chrome_content_browser_client.cc | 6 +-
.../browser/chrome_content_browser_client.h | 6 +-
.../adblock_private/adblock_private_api.cc | 76 +-
.../api/adblock_private/adblock_private_api.h | 49 +
.../eyeo_filtering_private_api.cc | 24 +-
.../eyeo_filtering_private_api.cc | 25 +-
.../api/settings_private/prefs_util.cc | 14 +
...hrome_browser_main_extra_parts_profiles.cc | 2 -
chrome/browser/resources/settings/BUILD.gn | 2 +
@@ -125,7 +126,7 @@ suit Cromite logic.
.../renderer/core/exported/web_document.cc | 13 +-
.../blink/renderer/core/html/html_element.cc | 8 +-
.../definitions/adblock_private.d.ts | 14 +
120 files changed, 9192 insertions(+), 617 deletions(-)
121 files changed, 9224 insertions(+), 618 deletions(-)
rename chrome/browser/adblock/android/java/res/xml/{adblock_preferences.xml => eyeo_adblock_preferences.xml} (59%)
create mode 100644 chrome/browser/resources/settings/adblock_page/adblock_page.html
create mode 100644 chrome/browser/resources/settings/adblock_page/adblock_page.ts
@@ -166,7 +167,7 @@ diff --git a/chrome/android/java/res/xml/main_preferences.xml b/chrome/android/j
<PreferenceCategory
android:key="advanced_section"
@@ -134,6 +120,11 @@ for the previous order (main_preferences_legacy). -->
@@ -135,6 +121,11 @@ for the previous order (main_preferences_legacy). -->
android:key="adblock"
android:order="13"
android:title="@string/prefs_adblock"/>
@@ -214,7 +215,15 @@ diff --git a/chrome/browser/adblock/adblock_chrome_content_browser_client.h b/ch
diff --git a/chrome/browser/adblock/android/BUILD.gn b/chrome/browser/adblock/android/BUILD.gn
--- a/chrome/browser/adblock/android/BUILD.gn
+++ b/chrome/browser/adblock/android/BUILD.gn
@@ -148,7 +148,7 @@ android_resources("java_ui_resources") {
@@ -113,6 +113,7 @@ android_library("adblock_ui_java") {
"//build/android:build_java",
"//chrome/browser/preferences:java",
"//chrome/browser/profiles/android:java",
+ "//chrome/browser/settings:java",
"//components/adblock/android:adblock_controller_java",
"//components/browser_ui/settings/android:java",
"//components/prefs/android:java",
@@ -148,7 +149,7 @@ android_resources("java_ui_resources") {
"java/res/layout/adblock_custom_item_settings.xml",
"java/res/layout/adblock_filter_lists_list_item.xml",
"java/res/xml/adblock_more_options.xml",
@@ -550,16 +559,32 @@ diff --git a/chrome/browser/adblock/android/java/src/org/chromium/chrome/browser
diff --git a/chrome/browser/adblock/android/java/src/org/chromium/chrome/browser/adblock/settings/AdblockCustomItemFragment.java b/chrome/browser/adblock/android/java/src/org/chromium/chrome/browser/adblock/settings/AdblockCustomItemFragment.java
--- a/chrome/browser/adblock/android/java/src/org/chromium/chrome/browser/adblock/settings/AdblockCustomItemFragment.java
+++ b/chrome/browser/adblock/android/java/src/org/chromium/chrome/browser/adblock/settings/AdblockCustomItemFragment.java
@@ -33,7 +33,7 @@ import org.chromium.chrome.browser.adblock.R;
@@ -30,10 +30,11 @@ import android.widget.TextView;
import androidx.preference.PreferenceFragmentCompat;
import org.chromium.chrome.browser.adblock.R;
+import org.chromium.components.browser_ui.settings.SettingsFragment;
import java.util.List;
-public abstract class AdblockCustomItemFragment extends PreferenceFragmentCompat {
+public abstract class AdblockCustomItemFragment<T> extends PreferenceFragmentCompat {
+public abstract class AdblockCustomItemFragment<T> extends PreferenceFragmentCompat implements SettingsFragment {
private EditText mItem;
private ImageView mAddButton;
private ListView mListView;
@@ -75,7 +75,7 @@ public abstract class AdblockCustomItemFragment extends PreferenceFragmentCompat
@@ -41,6 +42,11 @@ public abstract class AdblockCustomItemFragment extends PreferenceFragmentCompat
public AdblockCustomItemFragment() {}
+ @Override
+ public @AnimationType int getAnimationType() {
+ return AnimationType.PROPERTY;
+ }
+
@Override
public View onCreateView(
LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
@@ -75,7 +81,7 @@ public abstract class AdblockCustomItemFragment extends PreferenceFragmentCompat
protected abstract void removeItemImpl(String item);
@@ -568,7 +593,7 @@ diff --git a/chrome/browser/adblock/android/java/src/org/chromium/chrome/browser
protected abstract String getCustomItemTextViewText();
@@ -90,10 +90,12 @@ public abstract class AdblockCustomItemFragment extends PreferenceFragmentCompat
@@ -90,10 +96,12 @@ public abstract class AdblockCustomItemFragment extends PreferenceFragmentCompat
// Holder for listview items
private class Holder {
TextView mItem;
@@ -581,7 +606,7 @@ diff --git a/chrome/browser/adblock/android/java/src/org/chromium/chrome/browser
mRemoveButton = rootView.findViewById(R.id.fragment_adblock_custom_item_remove);
mRemoveButton.setContentDescription(
AdblockCustomItemFragment.this.getCustomItemRemoveButtonContentDescription());
@@ -107,6 +109,7 @@ public abstract class AdblockCustomItemFragment extends PreferenceFragmentCompat
@@ -107,6 +115,7 @@ public abstract class AdblockCustomItemFragment extends PreferenceFragmentCompat
String item = (String) v.getTag();
removeItemImpl(item);
mAdapter.notifyDataSetChanged();
@@ -589,7 +614,7 @@ diff --git a/chrome/browser/adblock/android/java/src/org/chromium/chrome/browser
}
};
@@ -134,16 +137,23 @@ public abstract class AdblockCustomItemFragment extends PreferenceFragmentCompat
@@ -134,16 +143,23 @@ public abstract class AdblockCustomItemFragment extends PreferenceFragmentCompat
convertView.setTag(new Holder(convertView));
}
@@ -643,10 +668,34 @@ diff --git a/chrome/browser/adblock/android/java/src/org/chromium/chrome/browser
return view;
}
diff --git a/chrome/browser/adblock/android/java/src/org/chromium/chrome/browser/adblock/settings/AdblockFilterListsFragment.java b/chrome/browser/adblock/android/java/src/org/chromium/chrome/browser/adblock/settings/AdblockFilterListsFragment.java
--- a/chrome/browser/adblock/android/java/src/org/chromium/chrome/browser/adblock/settings/AdblockFilterListsFragment.java
+++ b/chrome/browser/adblock/android/java/src/org/chromium/chrome/browser/adblock/settings/AdblockFilterListsFragment.java
@@ -26,8 +26,9 @@ import androidx.fragment.app.ListFragment;
import org.chromium.chrome.browser.adblock.R;
import org.chromium.chrome.browser.profiles.ProfileManager;
import org.chromium.components.adblock.AdblockController;
+import org.chromium.components.browser_ui.settings.SettingsFragment;
-public class AdblockFilterListsFragment extends ListFragment {
+public class AdblockFilterListsFragment extends ListFragment implements SettingsFragment {
private AdblockFilterListsAdapter mFilterListsAdapter;
@Override
@@ -54,4 +55,9 @@ public class AdblockFilterListsFragment extends ListFragment {
super.onStart();
mFilterListsAdapter.start();
}
+
+ @Override
+ public @AnimationType int getAnimationType() {
+ return AnimationType.PROPERTY;
+ }
}
diff --git a/chrome/browser/adblock/android/java/src/org/chromium/chrome/browser/adblock/settings/AdblockSettingsFragment.java b/chrome/browser/adblock/android/java/src/org/chromium/chrome/browser/adblock/settings/AdblockSettingsFragment.java
--- a/chrome/browser/adblock/android/java/src/org/chromium/chrome/browser/adblock/settings/AdblockSettingsFragment.java
+++ b/chrome/browser/adblock/android/java/src/org/chromium/chrome/browser/adblock/settings/AdblockSettingsFragment.java
@@ -13,6 +13,7 @@
@@ -13,27 +13,46 @@
package org.chromium.chrome.browser.adblock.settings;
import android.os.Bundle;
@@ -654,20 +703,25 @@ diff --git a/chrome/browser/adblock/android/java/src/org/chromium/chrome/browser
import androidx.preference.Preference;
import androidx.preference.PreferenceFragmentCompat;
@@ -20,20 +21,33 @@ import androidx.preference.PreferenceFragmentCompat;
+import org.chromium.base.supplier.ObservableSupplier;
+import org.chromium.base.supplier.ObservableSupplierImpl;
+
import org.chromium.build.BuildConfig;
import org.chromium.chrome.browser.adblock.R;
import org.chromium.chrome.browser.preferences.Pref;
+import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.profiles.ProfileManager;
+import org.chromium.chrome.browser.settings.ChromeBaseSettingsFragment;
import org.chromium.components.adblock.AdblockController;
import org.chromium.components.browser_ui.settings.ChromeSwitchPreference;
+import org.chromium.components.browser_ui.settings.SettingsFragment;
import org.chromium.components.user_prefs.UserPrefs;
-public class AdblockSettingsFragment extends PreferenceFragmentCompat
- implements Preference.OnPreferenceChangeListener {
+public class AdblockSettingsFragment
+ extends PreferenceFragmentCompat implements Preference.OnPreferenceChangeListener {
+ extends ChromeBaseSettingsFragment implements Preference.OnPreferenceChangeListener {
private ChromeSwitchPreference mAdblockEnabled;
private ChromeSwitchPreference mAcceptableAdsEnabled;
private ChromeSwitchPreference mAutoInstalledEnabled;
@@ -691,9 +745,22 @@ diff --git a/chrome/browser/adblock/android/java/src/org/chromium/chrome/browser
private static final String SETTINGS_ENABLED_KEY = "fragment_adblock_settings_enabled_key";
private static final String SETTINGS_FILTER_LISTS_KEY =
"fragment_adblock_settings_filter_lists_key";
@@ -52,9 +66,21 @@ public class AdblockSettingsFragment extends PreferenceFragmentCompat
@@ -51,10 +70,34 @@ public class AdblockSettingsFragment extends PreferenceFragmentCompat
private static final int ON_OFF_TOGGLE_COUNT_TIME_WINDOW_MS = 3000;
private long mOnOffTogleTimestamp;
+ private final ObservableSupplierImpl<String> mPageTitle = new ObservableSupplierImpl<>();
+
+ @Override
+ public @SettingsFragment.AnimationType int getAnimationType() {
+ return SettingsFragment.AnimationType.PROPERTY;
+ }
+
+ @Override
+ public ObservableSupplier<String> getPageTitle() {
+ return mPageTitle;
+ }
+
private void bindPreferences() {
+ mStartUpdate = findPreference(START_UPDATE_KEY);
+ mStartUpdate.setOnPreferenceClickListener(preference -> {
@@ -713,7 +780,7 @@ diff --git a/chrome/browser/adblock/android/java/src/org/chromium/chrome/browser
mAutoInstalledEnabled =
(ChromeSwitchPreference) findPreference(SETTINGS_AUTO_INSTALL_ENABLED_KEY);
mAllowedDomains = findPreference(SETTINGS_ALLOWED_DOMAINS_KEY);
@@ -62,35 +88,43 @@ public class AdblockSettingsFragment extends PreferenceFragmentCompat
@@ -62,35 +105,43 @@ public class AdblockSettingsFragment extends PreferenceFragmentCompat
}
private boolean areMoreOptionsEnabled() {
@@ -769,7 +836,7 @@ diff --git a/chrome/browser/adblock/android/java/src/org/chromium/chrome/browser
mAutoInstalledEnabled.setOnPreferenceChangeListener(this);
}
@@ -122,7 +156,7 @@ public class AdblockSettingsFragment extends PreferenceFragmentCompat
@@ -122,7 +173,7 @@ public class AdblockSettingsFragment extends PreferenceFragmentCompat
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
@@ -778,7 +845,7 @@ diff --git a/chrome/browser/adblock/android/java/src/org/chromium/chrome/browser
bindPreferences();
synchronizePreferences();
}
@@ -137,19 +171,16 @@ public class AdblockSettingsFragment extends PreferenceFragmentCompat
@@ -137,19 +188,16 @@ public class AdblockSettingsFragment extends PreferenceFragmentCompat
public boolean onPreferenceChange(Preference preference, Object newValue) {
if (preference.getKey().equals(SETTINGS_ENABLED_KEY)) {
AdblockController.getInstance(ProfileManager.getLastUsedRegularProfile())
@@ -806,7 +873,7 @@ diff --git a/chrome/browser/adblock/android/java/src/org/chromium/chrome/browser
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
@@ -6324,7 +6324,9 @@ ChromeContentBrowserClient::
@@ -6349,7 +6349,9 @@ ChromeContentBrowserClient::
}
bool ChromeContentBrowserClient::WillInterceptWebSocket(
@@ -817,7 +884,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
#if BUILDFLAG(ENABLE_EXTENSIONS_CORE)
if (!frame) {
return false;
@@ -6347,9 +6349,11 @@ bool ChromeContentBrowserClient::WillInterceptWebSocket(
@@ -6372,9 +6374,11 @@ bool ChromeContentBrowserClient::WillInterceptWebSocket(
}
void ChromeContentBrowserClient::CreateWebSocket(
@@ -1029,15 +1096,18 @@ diff --git a/chrome/browser/extensions/api/adblock_private/adblock_private_api.h
diff --git a/chrome/browser/extensions/api/eyeo_filtering_private/eyeo_filtering_private_api.cc b/chrome/browser/extensions/api/eyeo_filtering_private/eyeo_filtering_private_api.cc
--- a/chrome/browser/extensions/api/eyeo_filtering_private/eyeo_filtering_private_api.cc
+++ b/chrome/browser/extensions/api/eyeo_filtering_private/eyeo_filtering_private_api.cc
@@ -17,6 +17,7 @@
@@ -17,8 +17,10 @@
#include "base/containers/flat_map.h"
#include "base/i18n/time_formatting.h"
+#include "base/strings/utf_string_conversions.h"
#include "base/logging.h"
#include "base/no_destructor.h"
+#include "base/strings/stringprintf.h"
#include "base/values.h"
@@ -30,6 +31,7 @@
#include "chrome/browser/extensions/extension_tab_util.h"
#include "chrome/browser/profiles/profile.h"
@@ -30,6 +32,7 @@
#include "components/adblock/core/common/adblock_prefs.h"
#include "components/adblock/core/common/adblock_utils.h"
#include "components/adblock/core/common/content_type.h"
@@ -1045,7 +1115,7 @@ diff --git a/chrome/browser/extensions/api/eyeo_filtering_private/eyeo_filtering
#include "components/adblock/core/configuration/filtering_configuration.h"
#include "components/adblock/core/configuration/persistent_filtering_configuration.h"
#include "components/adblock/core/session_stats.h"
@@ -95,24 +97,6 @@ std::vector<api::eyeo_filtering_private::SessionStatsEntry> CopySessionsStats(
@@ -95,24 +98,6 @@ std::vector<api::eyeo_filtering_private::SessionStatsEntry> CopySessionsStats(
return result;
}
@@ -1070,7 +1140,7 @@ diff --git a/chrome/browser/extensions/api/eyeo_filtering_private/eyeo_filtering
std::vector<api::eyeo_filtering_private::Subscription> CopySubscriptions(
const std::vector<scoped_refptr<adblock::Subscription>>
current_subscriptions) {
@@ -123,12 +107,12 @@ std::vector<api::eyeo_filtering_private::Subscription> CopySubscriptions(
@@ -123,12 +108,12 @@ std::vector<api::eyeo_filtering_private::Subscription> CopySubscriptions(
js_sub.title = sub->GetTitle();
js_sub.current_version = sub->GetCurrentVersion();
js_sub.installation_state =
@@ -10,9 +10,10 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
components/metrics/generate_expired_histograms_array.gni | 7 +++++--
components/variations/field_trial_config/BUILD.gn | 4 +++-
tools/grit/grit_rule.gni | 4 +++-
tools/json_to_struct/json_to_struct.gni | 4 +++-
tools/metrics/generate_allowlist_from_histograms_file.gni | 5 +++--
4 files changed, 14 insertions(+), 6 deletions(-)
5 files changed, 17 insertions(+), 7 deletions(-)
diff --git a/components/metrics/generate_expired_histograms_array.gni b/components/metrics/generate_expired_histograms_array.gni
--- a/components/metrics/generate_expired_histograms_array.gni
@@ -59,6 +60,27 @@ diff --git a/components/variations/field_trial_config/BUILD.gn b/components/vari
rebase_path(source, root_build_dir),
"--destbase=" + rebase_path(target_gen_dir, root_build_dir),
"--namespace=variations",
diff --git a/tools/grit/grit_rule.gni b/tools/grit/grit_rule.gni
--- a/tools/grit/grit_rule.gni
+++ b/tools/grit/grit_rule.gni
@@ -154,7 +154,7 @@ template("grit") {
_grit_custom_target = target_name + "_grit"
action(_grit_custom_target) {
- script = "//tools/grit/grit.py"
+ script = "//build/gn_run_binary.py"
inputs = [ invoker.source ]
testonly = defined(invoker.testonly) && invoker.testonly
@@ -197,6 +197,8 @@ template("grit") {
}
args = [
+ rebase_path("//third_party/depot_tools/vpython3"),
+ rebase_path("//tools/grit/grit.py"),
"-i",
_rebased_source_path,
"build",
diff --git a/tools/json_to_struct/json_to_struct.gni b/tools/json_to_struct/json_to_struct.gni
--- a/tools/json_to_struct/json_to_struct.gni
+++ b/tools/json_to_struct/json_to_struct.gni
@@ -43,7 +43,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../modaldialog/ChromeTabModalPresenter.java | 2 +-
.../chrome/browser/ntp/NewTabPage.java | 14 +-
.../chrome/browser/ntp/NewTabPageLayout.java | 10 +-
.../chrome/browser/ntp/RecentTabsPage.java | 30 +++-
.../chrome/browser/ntp/RecentTabsPage.java | 31 +++-
.../browser/searchwidget/SearchActivity.java | 11 ++
.../settings/FragmentDependencyProvider.java | 5 +
.../StatusIndicatorCoordinator.java | 9 +
@@ -96,9 +96,10 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../res/xml/accessibility_preferences.xml | 8 +
.../accessibility/AccessibilitySettings.java | 27 +++
.../AccessibilitySettingsDelegate.java | 9 +
components/viz/common/features.cc | 2 +
.../render_widget_host_view_android.cc | 3 +
.../Move-navigation-bar-to-bottom.inc | 17 ++
85 files changed, 1046 insertions(+), 77 deletions(-)
86 files changed, 1049 insertions(+), 77 deletions(-)
create mode 100644 chrome/browser/hub/internal/android/java/src/org/chromium/chrome/browser/hub/ReversedLinearLayout.java
create mode 100644 cromite_flags/chrome/browser/about_flags_cc/Move-navigation-bar-to-bottom.inc
@@ -1406,7 +1407,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsP
mBrowserControlsStateProvider = browserControlsStateProvider;
mBrowserControlsStateProvider.addObserver(this);
onBottomControlsHeightChanged(
@@ -118,14 +120,22 @@ public class RecentTabsPage
@@ -118,14 +120,23 @@ public class RecentTabsPage
mTabStripHeightSupplier = tabStripHeightSupplier;
mView.setPadding(0, mTabStripHeightSupplier.get(), 0, 0);
@@ -1417,6 +1418,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsP
+ 0,
+ mView.getPaddingRight(),
+ mView.getPaddingBottom());
+ mTabStripHeightChangeCallback = newHeight -> { };
+ } else {
+ mTabStripHeightChangeCallback =
newHeight ->
@@ -1431,7 +1433,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsP
mEdgeToEdgeSupplier = edgeToEdgeSupplier;
if (EdgeToEdgeUtils.isDrawKeyNativePageToEdgeEnabled()) {
mPadAdjuster =
@@ -337,7 +347,7 @@ public class RecentTabsPage
@@ -337,7 +348,7 @@ public class RecentTabsPage
private void updateMargins() {
final View recentTabsRoot = mView.findViewById(R.id.recent_tabs_root);
@@ -1440,7 +1442,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsP
final int contentOffset = mBrowserControlsStateProvider.getContentOffset();
ViewGroup.MarginLayoutParams layoutParams =
(ViewGroup.MarginLayoutParams) recentTabsRoot.getLayoutParams();
@@ -353,9 +363,17 @@ public class RecentTabsPage
@@ -353,9 +364,17 @@ public class RecentTabsPage
// If the content offset is different from the margin, we use translationY to position the
// view in line with the content offset.
@@ -3112,6 +3114,25 @@ diff --git a/components/browser_ui/accessibility/android/java/src/org/chromium/c
/**
* @return The BrowserContextHandle that should be used to read and update settings.
*/
diff --git a/components/viz/common/features.cc b/components/viz/common/features.cc
--- a/components/viz/common/features.cc
+++ b/components/viz/common/features.cc
@@ -40,6 +40,7 @@ namespace features {
BASE_FEATURE(kAndroidBrowserControlsInViz,
"AndroidBrowserControlsInViz",
base::FEATURE_ENABLED_BY_DEFAULT);
+SET_CROMITE_FEATURE_DISABLED(kAndroidBrowserControlsInViz);
// If this flag is enabled, AndroidBrowserControlsInViz and
// BottomControlsRefactor with the "Dispatch yOffset" variation must also be
@@ -47,6 +48,7 @@ BASE_FEATURE(kAndroidBrowserControlsInViz,
BASE_FEATURE(kAndroidBcivBottomControls,
"AndroidBcivBottomControls",
base::FEATURE_ENABLED_BY_DEFAULT);
+SET_CROMITE_FEATURE_DISABLED(kAndroidBcivBottomControls);
#endif // BUILDFLAG(IS_ANDROID)
diff --git a/content/browser/renderer_host/render_widget_host_view_android.cc b/content/browser/renderer_host/render_widget_host_view_android.cc
--- a/content/browser/renderer_host/render_widget_host_view_android.cc
+++ b/content/browser/renderer_host/render_widget_host_view_android.cc
@@ -13,7 +13,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
.../extensions/api/cookies/cookies_helpers.cc | 4 ++
.../net/profile_network_context_service.cc | 12 ++--
.../privacy_sandbox_settings_delegate.cc | 1 +
...storage_access_grant_permission_context.cc | 12 ++++
...storage_access_grant_permission_context.cc | 13 +++++
.../experiment/experiment_manager_impl.cc | 1 +
.../strings/android/site_settings.grdp | 4 +-
.../core/browser/cookie_settings.cc | 4 +-
@@ -21,7 +21,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
...ioning-all-cookies-by-top-frame-domain.inc | 4 ++
...ioning-all-cookies-by-top-frame-domain.inc | 1 +
...ioning-all-cookies-by-top-frame-domain.inc | 1 +
...ioning-all-cookies-by-top-frame-domain.inc | 16 ++++++
...ioning-all-cookies-by-top-frame-domain.inc | 15 +++++
...ioning-all-cookies-by-top-frame-domain.inc | 1 +
net/cookies/canonical_cookie.cc | 3 -
net/cookies/cookie_deletion_info.cc | 3 +-
@@ -114,7 +114,15 @@ diff --git a/chrome/browser/privacy_sandbox/privacy_sandbox_settings_delegate.cc
diff --git a/chrome/browser/storage_access_api/storage_access_grant_permission_context.cc b/chrome/browser/storage_access_api/storage_access_grant_permission_context.cc
--- a/chrome/browser/storage_access_api/storage_access_grant_permission_context.cc
+++ b/chrome/browser/storage_access_api/storage_access_grant_permission_context.cc
@@ -465,6 +465,18 @@ void StorageAccessGrantPermissionContext::CheckForAutoGrantOrAutoDenial(
@@ -220,6 +220,7 @@ FederatedIdentityPermissionContext* IsAutograntViaFedCmAllowed(
const url::Origin& embedding_origin,
const net::SchemefulSite& embedding_site,
const net::SchemefulSite& requesting_site) {
+ if ((true)) return nullptr;
CHECK(browser_context);
if (!rfh->IsFeatureEnabled(
network::mojom::PermissionsPolicyFeature::kIdentityCredentialsGet)) {
@@ -465,6 +466,18 @@ void StorageAccessGrantPermissionContext::CheckForAutoGrantOrAutoDenial(
std::unique_ptr<permissions::PermissionRequestData> request_data,
permissions::BrowserPermissionCallback callback,
net::FirstPartySetMetadata metadata) {
@@ -297,14 +305,13 @@ diff --git a/cromite_flags/net/base/features_cc/Partitioning-all-cookies-by-top-
new file mode 100644
--- /dev/null
+++ b/cromite_flags/net/base/features_cc/Partitioning-all-cookies-by-top-frame-domain.inc
@@ -0,0 +1,16 @@
@@ -0,0 +1,15 @@
+SET_CROMITE_FEATURE_ENABLED(kCookieDomainRejectNonASCII);
+
+SET_CROMITE_FEATURE_DISABLED(kForceThirdPartyCookieBlocking);
+SET_CROMITE_FEATURE_DISABLED(kThirdPartyPartitionedStorageAllowedByDefault);
+
+SET_CROMITE_FEATURE_ENABLED(kCookieSameSiteConsidersRedirectChain);
+SET_CROMITE_FEATURE_ENABLED(kSchemefulSameSite);
+SET_CROMITE_FEATURE_ENABLED(kSameSiteDefaultChecksMethodRigorously);
+SET_CROMITE_FEATURE_ENABLED(kTimeLimitedInsecureCookies);
+
@@ -7,29 +7,75 @@ user choice in desktop platforms.
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
.../browser/chrome_content_browser_client.cc | 2 +-
.../browser/chrome_content_browser_client.cc | 36 ++++++-
...eInsecurePrivateNetworkContentSetting.java | 93 +++++++++++++++++++
.../insecure_private_network.grdp | 18 ++++
.../insecure_private_network.inc | 16 ++++
.../insecure_private_network.inc | 25 +++++
.../INSECURE_PRIVATE_NETWORK.inc | 3 +
services/network/cors/cors_url_loader.cc | 8 +-
.../network/private_network_access_checker.cc | 16 +++-
6 files changed, 144 insertions(+), 9 deletions(-)
7 files changed, 188 insertions(+), 11 deletions(-)
create mode 100644 components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/impl/BromiteInsecurePrivateNetworkContentSetting.java
create mode 100644 components/browser_ui/strings/bromite_content_settings/insecure_private_network.grdp
create mode 100644 components/content_settings/core/browser/bromite_content_settings/insecure_private_network.inc
create mode 100644 components/content_settings/core/common/bromite_content_settings/INSECURE_PRIVATE_NETWORK.inc
diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc
--- a/chrome/browser/chrome_content_browser_client.cc
+++ b/chrome/browser/chrome_content_browser_client.cc
@@ -7529,7 +7529,7 @@ ChromeContentBrowserClient::ShouldOverridePrivateNetworkRequestPolicy(
@@ -1335,6 +1335,31 @@ bool IsDefaultSearchEngine(Profile* profile, const GURL& url) {
url);
}
+bool ShouldAllowInsecurePrivateNetworkRequests(
+ const HostContentSettingsMap* map,
+ const url::Origin& origin) {
+ // Derive the base URL from the origin, since HostContentSettingsMap is keyed
+ // by URL and not by origin. However, this setting is conceptually keyed by
+ // origin, hence its public API uses url::Origin.
+ //
+ // This returns the default-constructed GURL for opaque origins, which should
+ // not match any content settings.
+ const GURL url = origin.GetURL();
+
+ const ContentSetting setting = map->GetContentSetting(
+ url, url, ContentSettingsType::INSECURE_PRIVATE_NETWORK);
+
+ switch (setting) {
+ case CONTENT_SETTING_ALLOW:
+ return true;
+ case CONTENT_SETTING_BLOCK:
+ return false;
+ default:
+ NOTREACHED()
+ << "Invalid content setting for insecure private network requests: "
+ << setting;
+ }
+}
} // namespace
// static
@@ -7528,12 +7553,17 @@ content::ContentBrowserClient::PrivateNetworkRequestPolicyOverride
ChromeContentBrowserClient::ShouldOverridePrivateNetworkRequestPolicy(
content::BrowserContext* browser_context,
const url::Origin& origin) {
#if BUILDFLAG(IS_ANDROID)
-#if BUILDFLAG(IS_ANDROID)
- if (base::android::BuildInfo::GetInstance()->is_automotive()) {
+ if (HostContentSettingsMap* service =
+ HostContentSettingsMapFactory::GetForProfile(browser_context)) {
+ if (ShouldAllowInsecurePrivateNetworkRequests(service, origin)) {
+ return content::ContentBrowserClient::
+ PrivateNetworkRequestPolicyOverride::kForceAllow;
+ }
+ }
+ if ((true)) {
return content::ContentBrowserClient::PrivateNetworkRequestPolicyOverride::
kBlockInsteadOfWarn;
}
-#endif
// TODO(crbug.com/400455013): Add LNA support on Android
#if !BUILDFLAG(IS_ANDROID)
diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/impl/BromiteInsecurePrivateNetworkContentSetting.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/impl/BromiteInsecurePrivateNetworkContentSetting.java
new file mode 100644
--- /dev/null
@@ -155,7 +201,16 @@ diff --git a/components/content_settings/core/browser/bromite_content_settings/i
new file mode 100644
--- /dev/null
+++ b/components/content_settings/core/browser/bromite_content_settings/insecure_private_network.inc
@@ -0,0 +1,16 @@
@@ -0,0 +1,25 @@
+ Register(ContentSettingsType::INSECURE_PRIVATE_NETWORK,
+ "insecure-private-network", CONTENT_SETTING_BLOCK,
+ WebsiteSettingsInfo::UNSYNCABLE, /*allowlisted_primary_schemes=*/{},
+ /*valid_settings=*/{CONTENT_SETTING_ALLOW, CONTENT_SETTING_BLOCK},
+ WebsiteSettingsInfo::REQUESTING_ORIGIN_ONLY_SCOPE,
+ WebsiteSettingsRegistry::ALL_PLATFORMS,
+ ContentSettingsInfo::INHERIT_IN_INCOGNITO,
+ ContentSettingsInfo::EXCEPTIONS_ON_SECURE_AND_INSECURE_ORIGINS);
+
+ content_settings::WebsiteSettingsRegistry::GetInstance()
+ ->GetMutable(ContentSettingsType::INSECURE_PRIVATE_NETWORK)
+ ->set_show_into_info_page()
@@ -172,6 +227,14 @@ new file mode 100644
+ .set_blocked_exceptions_ui(IDS_WEBSITE_SETTINGS_CATEGORY_INSECURE_PRIVATE_NETWORK_ASK)
+#endif
+ .set_mid_sentence_ui(IDS_INSECURE_PRIVATE_NETWORK_PERMISSION_TITLE);
diff --git a/components/content_settings/core/common/bromite_content_settings/INSECURE_PRIVATE_NETWORK.inc b/components/content_settings/core/common/bromite_content_settings/INSECURE_PRIVATE_NETWORK.inc
new file mode 100644
--- /dev/null
+++ b/components/content_settings/core/common/bromite_content_settings/INSECURE_PRIVATE_NETWORK.inc
@@ -0,0 +1,3 @@
+ // Stores whether to allow insecure websites to make private network requests.
+ // See also: https://wicg.github.io/cors-rfc1918
+ INSECURE_PRIVATE_NETWORK,
diff --git a/services/network/cors/cors_url_loader.cc b/services/network/cors/cors_url_loader.cc
--- a/services/network/cors/cors_url_loader.cc
+++ b/services/network/cors/cors_url_loader.cc
@@ -13,16 +13,16 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
chrome/android/chrome_java_resources.gni | 2 +
chrome/android/chrome_java_sources.gni | 2 +
...button_group_referer_policy_preference.xml | 47 ++++++++++
...button_group_referer_policy_preference.xml | 47 +++++++++
.../java/res/xml/privacy_preferences.xml | 4 +
.../res/xml/referer_policy_preferences.xml | 31 +++++++
.../res/xml/referer_policy_preferences.xml | 31 ++++++
.../privacy/settings/PrivacySettings.java | 6 ++
.../RadioButtonGroupRefererSettings.java | 89 +++++++++++++++++++
.../settings/RefererSettingsFragment.java | 80 +++++++++++++++++
.../api/settings_private/prefs_util.cc | 5 ++
.../RadioButtonGroupRefererSettings.java | 89 +++++++++++++++++
.../settings/RefererSettingsFragment.java | 96 +++++++++++++++++++
.../api/settings_private/prefs_util.cc | 5 +
.../net/system_network_context_manager.cc | 4 +
chrome/browser/renderer_preferences_util.cc | 1 +
.../settings/privacy_page/privacy_page.html | 10 +++
.../settings/privacy_page/privacy_page.html | 10 ++
.../settings/privacy_page/privacy_page.ts | 18 ++++
.../strings/android_chrome_strings.grd | 24 +++++
chrome/browser/ui/prefs/pref_watcher.cc | 2 +
@@ -30,11 +30,11 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../settings_localized_strings_provider.cc | 4 +
chrome/common/pref_names.h | 3 +
...-referrals-in-cross-origin-navigation.grdp | 18 ++++
.../content/internal/context_menu_download.cc | 10 +++
.../content/internal/context_menu_download.cc | 10 ++
.../renderer_host/navigation_request.cc | 9 ++
.../network/public/cpp/resource_request.h | 2 +-
.../renderer_preferences.h | 1 +
23 files changed, 373 insertions(+), 1 deletion(-)
23 files changed, 389 insertions(+), 1 deletion(-)
create mode 100644 chrome/android/java/res/layout/radio_button_group_referer_policy_preference.xml
create mode 100644 chrome/android/java/res/xml/referer_policy_preferences.xml
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/RadioButtonGroupRefererSettings.java
@@ -295,7 +295,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
new file mode 100644
--- /dev/null
+++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/RefererSettingsFragment.java
@@ -0,0 +1,80 @@
@@ -0,0 +1,96 @@
+/*
+ This file is part of Bromite.
+
@@ -321,17 +321,21 @@ new file mode 100644
+import androidx.preference.Preference;
+import androidx.preference.PreferenceFragmentCompat;
+
+import org.chromium.base.supplier.ObservableSupplier;
+import org.chromium.base.supplier.ObservableSupplierImpl;
+
+import org.chromium.chrome.R;
+import org.chromium.chrome.browser.preferences.Pref;
+import org.chromium.chrome.browser.profiles.Profile;
+import org.chromium.chrome.browser.profiles.ProfileManager;
+import org.chromium.components.browser_ui.settings.TextMessagePreference;
+import org.chromium.chrome.browser.settings.ChromeBaseSettingsFragment;
+import org.chromium.components.browser_ui.settings.SettingsFragment;
+import org.chromium.components.browser_ui.settings.SettingsUtils;
+import org.chromium.components.browser_ui.settings.TextMessagePreference;
+import org.chromium.components.prefs.PrefService;
+import org.chromium.components.user_prefs.UserPrefs;
+
+public class RefererSettingsFragment
+ extends PreferenceFragmentCompat
+public class RefererSettingsFragment extends ChromeBaseSettingsFragment
+ implements Preference.OnPreferenceChangeListener {
+
+ static final String PREF_REFERER_POLICY = "referer_page_radio_button_group";
@@ -339,6 +343,8 @@ new file mode 100644
+ private RadioButtonGroupRefererSettings mRefererPreference;
+ private final PrefService prefService = UserPrefs.get(ProfileManager.getLastUsedRegularProfile());
+
+ private final ObservableSupplierImpl<String> mPageTitle = new ObservableSupplierImpl<>();
+
+ public static String getRefererSummaryString(Context context) {
+ int policy = UserPrefs.get(ProfileManager.getLastUsedRegularProfile())
+ .getInteger(Pref.REFERRERS_POLICY);
@@ -357,6 +363,16 @@ new file mode 100644
+ }
+
+ @Override
+ public @SettingsFragment.AnimationType int getAnimationType() {
+ return SettingsFragment.AnimationType.PROPERTY;
+ }
+
+ @Override
+ public ObservableSupplier<String> getPageTitle() {
+ return mPageTitle;
+ }
+
+ @Override
+ public void onCreatePreferences(Bundle bundle, String s) {
+ SettingsUtils.addPreferencesFromResource(this, R.xml.referer_policy_preferences);
+ getActivity().setTitle(R.string.referers_policy_title);
@@ -29,7 +29,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
build/config/android/config.gni | 4 +-
chrome/android/BUILD.gn | 32 +-
chrome/android/chrome_java_sources.gni | 5 -
chrome/android/java/AndroidManifest.xml | 50 ---
chrome/android/java/AndroidManifest.xml | 50 --
.../browser/ChromeBackgroundService.java | 11 +-
.../browser/PlayServicesVersionInfo.java | 12 +-
.../ChromeBackgroundTaskFactory.java | 3 -
@@ -37,14 +37,17 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
chrome/android/javatests/BUILD.gn | 7 -
chrome/android/junit/BUILD.gn | 6 -
chrome/browser/language/android/BUILD.gn | 3 -
.../language/AppLanguagePromoDialog.java | 31 --
.../language/AppLanguagePromoDialog.java | 31 -
.../language/settings/LanguageSettings.java | 6 -
chrome/browser/omaha/android/BUILD.gn | 1 -
.../browser/password_manager/android/BUILD.gn | 5 -
.../password_manager/GmsUpdateLauncher.java | 28 --
.../PasswordManagerAndroidBackendUtil.java | 38 +--
.../password_manager/GmsUpdateLauncher.java | 28 -
.../PasswordManagerAndroidBackendUtil.java | 38 +-
.../PasswordManagerHelper.java | 9 -
...swordSyncControllerDelegateBridgeImpl.java | 7 -
.../android/one_time_passwords/BUILD.gn | 2 -
.../AndroidSmsOtpFetchReceiverBridge.java | 6 +-
.../AndroidSmsOtpFetcher.java | 4 +-
.../push_messaging_service_factory.cc | 8 +-
.../notification_telemetry_service.cc | 1 +
chrome/browser/ui/BUILD.gn | 3 -
@@ -53,44 +56,46 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
chrome/browser/ui/webauthn/sheet_models.cc | 9 +-
.../browser/ui/webui/chrome_web_ui_configs.cc | 1 -
chrome/browser/webauthn/android/BUILD.gn | 1 -
.../CableAuthenticatorModuleProvider.java | 35 +--
.../CableAuthenticatorModuleProvider.java | 35 +-
chrome/browser/webauthn/cablev2_devices.cc | 3 +
...igitalCredentialsPresentationDelegate.java | 88 +-----
chrome/browser/webid/BUILD.gn | 3 -
.../DigitalCredentialsCreationDelegate.java | 112 ----
...igitalCredentialsPresentationDelegate.java | 88 +--
chrome/test/android/BUILD.gn | 2 -
.../ExternalNavigationHandler.java | 8 -
components/externalauth/android/BUILD.gn | 3 -
.../externalauth/ExternalAuthUtils.java | 34 +--
.../externalauth/ExternalAuthUtils.java | 34 +-
.../UserRecoverableErrorHandler.java | 8 -
.../gcm_driver/GoogleCloudMessagingV2.java | 2 +
components/gcm_driver/gcm_client_impl.cc | 4 +
.../gcm_driver/instance_id/android/BUILD.gn | 3 -
.../instance_id/InstanceIDBridge.java | 56 +---
.../instance_id/InstanceIDBridge.java | 56 +-
.../InstalledAppProviderImpl.java | 2 +-
.../media_router/browser/android/BUILD.gn | 11 -
.../media_router/BrowserMediaRouter.java | 21 +-
.../components/media_router/MediaSink.java | 44 +--
.../media_router/MediaStatusBridge.java | 40 +--
.../caf/BaseNotificationController.java | 59 ----
.../caf/BaseSessionController.java | 112 +------
.../caf/CafBaseMediaRouteProvider.java | 113 +------
.../caf/CafMediaRouteProvider.java | 21 --
.../media_router/caf/CafMessageHandler.java | 106 +------
.../components/media_router/MediaSink.java | 44 +-
.../media_router/MediaStatusBridge.java | 40 +-
.../caf/BaseNotificationController.java | 59 --
.../caf/BaseSessionController.java | 112 +---
.../caf/CafBaseMediaRouteProvider.java | 113 +---
.../caf/CafMediaRouteProvider.java | 21 -
.../media_router/caf/CafMessageHandler.java | 106 +---
.../media_router/caf/CastMediaSource.java | 10 +-
.../media_router/caf/CastOptionsProvider.java | 21 +-
.../caf/CastSessionController.java | 87 ------
.../caf/CastSessionController.java | 87 ---
.../media_router/caf/CastUtils.java | 8 -
.../CafExpandedControllerActivity.java | 46 +--
.../CafExpandedControllerActivity.java | 46 +-
.../CafRemotingMediaRouteProvider.java | 4 +-
.../remoting/FlingingControllerAdapter.java | 96 ------
.../remoting/FlingingControllerAdapter.java | 96 ---
.../caf/remoting/RemotingMediaSource.java | 8 +-
.../remoting/RemotingSessionController.java | 31 --
.../remoting/RemotingSessionController.java | 31 -
.../test/android/cast_emulator/BUILD.gn | 1 -
components/module_installer/android/BUILD.gn | 4 -
components/omnibox/common/BUILD.gn | 1 -
.../components/omnibox/OmniboxFeatures.java | 8 -
components/signin/public/android/BUILD.gn | 3 -
components/webauthn/android/BUILD.gn | 15 +-
.../webauthn/AuthenticatorImpl.java | 81 +----
.../webauthn/AuthenticatorImpl.java | 81 +--
.../webauthn/ConditionalUiState.java | 15 +
.../components/webauthn/GmsCoreUtils.java | 28 +-
.../webauthn/WebauthnModeProvider.java | 15 -
@@ -104,12 +109,13 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
services/BUILD.gn | 10 -
services/device/geolocation/BUILD.gn | 4 -
services/shape_detection/BUILD.gn | 2 -
third_party/android_deps/BUILD.gn | 286 +-----------------
third_party/android_deps/BUILD.gn | 273 +--------
third_party/android_deps/autorolled/BUILD.gn | 550 ------------------
.../preconditions/javatests/BUILD.gn | 1 -
.../gms/ChromiumPlayServicesAvailability.java | 10 +-
third_party/androidx/customizations.gni | 14 +-
third_party/cardboard/BUILD.gn | 4 -
85 files changed, 121 insertions(+), 1804 deletions(-)
91 files changed, 124 insertions(+), 2465 deletions(-)
create mode 100644 components/webauthn/android/java/src/org/chromium/components/webauthn/ConditionalUiState.java
diff --git a/android_webview/expectations/system_webview_bundle.AndroidManifest.expected b/android_webview/expectations/system_webview_bundle.AndroidManifest.expected
@@ -817,6 +823,70 @@ diff --git a/chrome/browser/password_manager/android/java/src/org/chromium/chrom
PasswordSyncControllerDelegateBridgeImplJni.get()
.onCredentialManagerError(mNativeDelegateBridgeImpl, error, apiErrorCode);
}
diff --git a/chrome/browser/password_manager/android/one_time_passwords/BUILD.gn b/chrome/browser/password_manager/android/one_time_passwords/BUILD.gn
--- a/chrome/browser/password_manager/android/one_time_passwords/BUILD.gn
+++ b/chrome/browser/password_manager/android/one_time_passwords/BUILD.gn
@@ -47,7 +47,6 @@ android_library("java") {
]
deps = [
- "$google_play_services_package:google_play_services_basement_java",
"//base:base_java",
"//build/android:build_java",
"//chrome/browser/password_manager/android/one_time_passwords:sms_otp_fetching_interface_java",
@@ -61,7 +60,6 @@ android_library("java") {
android_library("sms_otp_fetching_interface_java") {
deps = [
- "$google_play_services_package:google_play_services_basement_java",
"//base:base_java",
"//base:service_loader_java",
]
diff --git a/chrome/browser/password_manager/android/one_time_passwords/java/src/org/chromium/chrome/browser/password_manager/one_time_passwords/AndroidSmsOtpFetchReceiverBridge.java b/chrome/browser/password_manager/android/one_time_passwords/java/src/org/chromium/chrome/browser/password_manager/one_time_passwords/AndroidSmsOtpFetchReceiverBridge.java
--- a/chrome/browser/password_manager/android/one_time_passwords/java/src/org/chromium/chrome/browser/password_manager/one_time_passwords/AndroidSmsOtpFetchReceiverBridge.java
+++ b/chrome/browser/password_manager/android/one_time_passwords/java/src/org/chromium/chrome/browser/password_manager/one_time_passwords/AndroidSmsOtpFetchReceiverBridge.java
@@ -4,8 +4,6 @@
package org.chromium.chrome.browser.password_manager.one_time_passwords;
-import com.google.android.gms.common.api.ApiException;
-
import org.jni_zero.CalledByNative;
import org.jni_zero.NativeMethods;
@@ -34,11 +32,11 @@ class AndroidSmsOtpFetchReceiverBridge {
.onOtpValueRetrieved(mNativeReceiverBridge, otpValue);
}
- void onOtpValueRetrievalError(ApiException exception) {
+ void onOtpValueRetrievalError(Object exception) {
if (mNativeReceiverBridge == 0) return;
AndroidSmsOtpFetchReceiverBridgeJni.get()
- .onOtpValueRetrievalError(mNativeReceiverBridge, exception.getStatusCode());
+ .onOtpValueRetrievalError(mNativeReceiverBridge, 500);
}
@CalledByNative
diff --git a/chrome/browser/password_manager/android/one_time_passwords/java/src/org/chromium/chrome/browser/password_manager/one_time_passwords/AndroidSmsOtpFetcher.java b/chrome/browser/password_manager/android/one_time_passwords/java/src/org/chromium/chrome/browser/password_manager/one_time_passwords/AndroidSmsOtpFetcher.java
--- a/chrome/browser/password_manager/android/one_time_passwords/java/src/org/chromium/chrome/browser/password_manager/one_time_passwords/AndroidSmsOtpFetcher.java
+++ b/chrome/browser/password_manager/android/one_time_passwords/java/src/org/chromium/chrome/browser/password_manager/one_time_passwords/AndroidSmsOtpFetcher.java
@@ -3,8 +3,6 @@
// found in the LICENSE file.
package org.chromium.chrome.browser.password_manager.one_time_passwords;
-import com.google.android.gms.common.api.ApiException;
-
import org.chromium.base.Callback;
import org.chromium.build.annotations.NullMarked;
@@ -17,5 +15,5 @@ public interface AndroidSmsOtpFetcher {
* @param otpValueCallback Callback that is called on success with the fetched OTP value string.
* @param failureCallback A callback that is called on failure for any reason.
*/
- void retrieveSmsOtp(Callback<String> otpValueCallback, Callback<ApiException> failureCallback);
+ void retrieveSmsOtp(Callback<String> otpValueCallback, Callback<Object> failureCallback);
}
diff --git a/chrome/browser/push_messaging/push_messaging_service_factory.cc b/chrome/browser/push_messaging/push_messaging_service_factory.cc
--- a/chrome/browser/push_messaging/push_messaging_service_factory.cc
+++ b/chrome/browser/push_messaging/push_messaging_service_factory.cc
@@ -1018,6 +1088,156 @@ diff --git a/chrome/browser/webauthn/cablev2_devices.cc b/chrome/browser/webauth
ScopedListPrefUpdate update(profile->GetPrefs(),
kWebAuthnCablePairingsPrefName);
diff --git a/chrome/browser/webid/BUILD.gn b/chrome/browser/webid/BUILD.gn
--- a/chrome/browser/webid/BUILD.gn
+++ b/chrome/browser/webid/BUILD.gn
@@ -13,8 +13,6 @@ android_library("java") {
"android/java/src/org/chromium/chrome/browser/webid/IdentityCredentialsDelegate.java",
]
deps = [
- "$google_play_services_package:google_play_services_identity_credentials_java",
- "$google_play_services_package:google_play_services_tasks_java",
"//base:base_java",
"//base:service_loader_java",
"//content/public/android:content_java",
@@ -43,7 +41,6 @@ robolectric_library("junit") {
deps = [
":java",
- "$google_play_services_package:google_play_services_identity_credentials_java",
"//base:base_junit_test_support",
"//content/public/android:content_java",
"//third_party/junit:junit",
diff --git a/chrome/browser/webid/android/java/src/org/chromium/chrome/browser/webid/DigitalCredentialsCreationDelegate.java b/chrome/browser/webid/android/java/src/org/chromium/chrome/browser/webid/DigitalCredentialsCreationDelegate.java
--- a/chrome/browser/webid/android/java/src/org/chromium/chrome/browser/webid/DigitalCredentialsCreationDelegate.java
+++ b/chrome/browser/webid/android/java/src/org/chromium/chrome/browser/webid/DigitalCredentialsCreationDelegate.java
@@ -21,10 +21,6 @@ import androidx.credentials.exceptions.CreateCredentialException;
import androidx.credentials.exceptions.CreateCredentialUnknownException;
import androidx.credentials.provider.PendingIntentHandler;
-import com.google.android.gms.identitycredentials.CreateCredentialRequest;
-import com.google.android.gms.identitycredentials.IdentityCredentialClient;
-import com.google.android.gms.identitycredentials.IdentityCredentialManager;
-
import org.json.JSONException;
import org.json.JSONObject;
@@ -49,115 +45,7 @@ public class DigitalCredentialsCreationDelegate {
@OptIn(markerClass = androidx.credentials.ExperimentalDigitalCredentialApi.class)
public Promise<DigitalCredential> create(Activity window, String origin, String request) {
- final IdentityCredentialClient client =
- IdentityCredentialManager.Companion.getClient(window);
-
final Promise<DigitalCredential> result = new Promise<DigitalCredential>();
-
- ResultReceiver resultReceiver =
- new ResultReceiver(new Handler(Looper.getMainLooper())) {
- @Override
- protected void onReceiveResult(int code, Bundle data) {
- if (!result.isPending()) {
- // Promises don't support duplicate calls to fulfill/reject. If the
- // promise has been fulfilled/rejected already (e.g. due to erroneous
- // exception during the API call), return immediately.
- return;
- }
- Log.d(TAG, "Received a response");
- Intent providerData =
- Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU
- ? data.getParcelable(BUNDLE_KEY_PROVIDER_DATA, Intent.class)
- : data.getParcelable(BUNDLE_KEY_PROVIDER_DATA);
-
- if (providerData == null) {
- Log.d(TAG, "Response doesn't contain providerData");
- result.reject(
- new CreateCredentialUnknownException(
- "Response doesn't contain providerData"));
- return;
- }
-
- var response =
- PendingIntentHandler.retrieveCreateCredentialResponse(
- TYPE_DIGITAL_CREDENTIAL, providerData);
- if (response == null) {
- CreateCredentialException exception =
- PendingIntentHandler.retrieveCreateCredentialException(
- providerData);
- result.reject(
- exception == null
- ? new CreateCredentialUnknownException("empty response")
- : exception);
- return;
- }
- String responseJson =
- response.getData()
- .getString("androidx.credentials.BUNDLE_KEY_RESPONSE_JSON");
- if (responseJson == null) {
- result.reject(
- new CreateCredentialUnknownException(
- "Response doesn't contain responseJson"));
- return;
- }
- Log.d(TAG, "Response JSON: " + responseJson);
-
- DigitalCredential digitalCredential = parseResponse(responseJson);
- if (digitalCredential == null) {
- result.reject(
- new CreateCredentialUnknownException(
- "Failed to parse response"));
- return;
- }
- result.fulfill(digitalCredential);
- }
- };
-
- Bundle requestBundle = new Bundle();
- requestBundle.putString("androidx.credentials.BUNDLE_KEY_REQUEST_JSON", request);
- CreateCredentialRequest createRequest =
- new CreateCredentialRequest(
- TYPE_DIGITAL_CREDENTIAL,
- /* credentialData= */ requestBundle,
- /* candidateQueryData= */ new Bundle(),
- origin,
- request,
- resultReceiver);
-
- client.createCredential(createRequest)
- .addOnSuccessListener(
- response -> {
- if (response.getPendingIntent() == null) {
- Log.d(TAG, "Response doesn't contain pendingIntent");
- result.reject(
- new CreateCredentialUnknownException(
- "Response doesn't contain pendingIntent"));
- return;
- }
- try {
- Log.d(TAG, "Sending an intent for sender");
- Log.d(TAG, request);
- startIntentSenderForResult(
- /* activity= */ window,
- /* intent= */ response.getPendingIntent().getIntentSender(),
- /* requestCode= */ REQUEST_CODE_DIGITAL_CREDENTIALS_CREATION,
- /* fillInIntent= */ null,
- /* flagsMask= */ 0,
- /* flagsValues= */ 0,
- /* extraFlags= */ 0,
- /* options= */ null);
- } catch (SendIntentException e) {
- Log.e(TAG, "Sending an intent for sender failed");
- if (result.isPending()) {
- result.reject(e);
- }
- }
- })
- .addOnFailureListener(
- e -> {
- result.reject(new CreateCredentialUnknownException("unknown error"));
- });
-
return result;
}
diff --git a/chrome/browser/webid/android/java/src/org/chromium/chrome/browser/webid/DigitalCredentialsPresentationDelegate.java b/chrome/browser/webid/android/java/src/org/chromium/chrome/browser/webid/DigitalCredentialsPresentationDelegate.java
--- a/chrome/browser/webid/android/java/src/org/chromium/chrome/browser/webid/DigitalCredentialsPresentationDelegate.java
+++ b/chrome/browser/webid/android/java/src/org/chromium/chrome/browser/webid/DigitalCredentialsPresentationDelegate.java
@@ -3659,27 +3879,7 @@ diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD.
}
# The section below is generated by running
@@ -153,19 +144,6 @@ java_prebuilt("com_android_tools_sdk_common_java") {
visibility = [ "//build/android/unused_resources:*" ]
}
-# This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
-java_prebuilt("com_google_code_gson_gson_java") {
- jar_path = "cipd/libs/com_google_code_gson_gson/gson-2.8.0.jar"
- output_name = "com_google_code_gson_gson"
- enable_bytecode_checks = false
-}
-
-# This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
-java_prebuilt("com_squareup_javapoet_java") {
- jar_path = "cipd/libs/com_squareup_javapoet/javapoet-1.13.0.jar"
- output_name = "com_squareup_javapoet"
- enable_bytecode_checks = false
-}
if (!limit_android_deps) {
# This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
java_prebuilt("com_android_support_support_annotations_java") {
@@ -233,94 +211,6 @@ if (!limit_android_deps) {
@@ -233,94 +224,6 @@ if (!limit_android_deps) {
}
}
@@ -3774,7 +3974,7 @@ diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD.
# This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
java_prebuilt("com_googlecode_java_diff_utils_diffutils_java") {
@@ -500,180 +390,6 @@ if (!limit_android_deps) {
@@ -500,180 +403,6 @@ if (!limit_android_deps) {
deps = [ ":org_mockito_mockito_core_java" ]
}
@@ -3955,6 +4155,594 @@ diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD.
# This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
java_prebuilt("jakarta_inject_jakarta_inject_api_java") {
jar_path = "cipd/libs/jakarta_inject_jakarta_inject_api/jakarta.inject-api-2.0.1.jar"
diff --git a/third_party/android_deps/autorolled/BUILD.gn b/third_party/android_deps/autorolled/BUILD.gn
--- a/third_party/android_deps/autorolled/BUILD.gn
+++ b/third_party/android_deps/autorolled/BUILD.gn
@@ -139,342 +139,6 @@ template("define_autorolled_targets") {
deps = [ "//third_party/android_deps:org_ow2_asm_asm_tree_java" ]
}
if (!limit_android_deps) {
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- android_aar_prebuilt(
- "google_android_datatransport_transport_backend_cct_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_datatransport_transport_backend_cct/transport-backend-cct-4.0.0.aar"
- info_path = "autorolled/committed/libs/com_google_android_datatransport_transport_backend_cct/com_google_android_datatransport_transport_backend_cct.info"
- enable_bytecode_checks = false
- deps = [
- "$google_play_services_package:google_firebase_firebase_encoders_java",
- "$google_play_services_package:google_firebase_firebase_encoders_json_java",
- "//third_party/android_deps:google_android_datatransport_transport_api_java",
- "//third_party/android_deps:google_android_datatransport_transport_runtime_java",
- "//third_party/androidx:androidx_annotation_annotation_java",
- ]
- }
- }
-
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- android_aar_prebuilt("google_play_services_auth_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_gms_play_services_auth/play-services-auth-21.3.0.aar"
- info_path = "autorolled/committed/libs/com_google_android_gms_play_services_auth/com_google_android_gms_play_services_auth.info"
- enable_bytecode_checks = false
- deps = [
- "$google_play_services_package:google_play_services_auth_api_phone_java",
- "$google_play_services_package:google_play_services_auth_base_java",
- "$google_play_services_package:google_play_services_base_java",
- "$google_play_services_package:google_play_services_basement_java",
- "$google_play_services_package:google_play_services_fido_java",
- "$google_play_services_package:google_play_services_tasks_java",
- "//third_party/androidx:androidx_fragment_fragment_java",
- "//third_party/androidx:androidx_loader_loader_java",
- ]
- }
- }
-
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- android_aar_prebuilt("google_play_services_auth_api_phone_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_gms_play_services_auth_api_phone/play-services-auth-api-phone-18.2.0.aar"
- info_path = "autorolled/committed/libs/com_google_android_gms_play_services_auth_api_phone/com_google_android_gms_play_services_auth_api_phone.info"
- enable_bytecode_checks = false
- deps = [
- "$google_play_services_package:google_play_services_base_java",
- "$google_play_services_package:google_play_services_basement_java",
- "$google_play_services_package:google_play_services_tasks_java",
- "//third_party/android_deps:org_jetbrains_kotlinx_kotlinx_coroutines_core_java",
- "//third_party/android_deps:org_jetbrains_kotlinx_kotlinx_coroutines_play_services_java",
- "//third_party/kotlin_stdlib:kotlin_stdlib_java",
- ]
- }
- }
-
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- android_aar_prebuilt("google_play_services_auth_base_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_gms_play_services_auth_base/play-services-auth-base-18.1.0.aar"
- info_path = "autorolled/committed/libs/com_google_android_gms_play_services_auth_base/com_google_android_gms_play_services_auth_base.info"
- enable_bytecode_checks = false
- deps = [
- "$google_play_services_package:google_play_services_base_java",
- "$google_play_services_package:google_play_services_basement_java",
- "$google_play_services_package:google_play_services_tasks_java",
- "//third_party/androidx:androidx_collection_collection_java",
- ]
- }
- }
-
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- android_aar_prebuilt("google_play_services_auth_blockstore_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_gms_play_services_auth_blockstore/play-services-auth-blockstore-16.4.0.aar"
- info_path = "autorolled/committed/libs/com_google_android_gms_play_services_auth_blockstore/com_google_android_gms_play_services_auth_blockstore.info"
- enable_bytecode_checks = false
- deps = [
- "$google_play_services_package:google_play_services_base_java",
- "$google_play_services_package:google_play_services_basement_java",
- "$google_play_services_package:google_play_services_tasks_java",
- "//third_party/kotlin_stdlib:kotlin_stdlib_java",
- ]
- }
- }
-
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- android_aar_prebuilt("google_play_services_base_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_gms_play_services_base/play-services-base-18.7.0.aar"
- info_path = "autorolled/committed/libs/com_google_android_gms_play_services_base/com_google_android_gms_play_services_base.info"
- enable_bytecode_checks = false
- deps = [
- "$google_play_services_package:google_play_services_basement_java",
- "$google_play_services_package:google_play_services_tasks_java",
- "//third_party/androidx:androidx_collection_collection_java",
- "//third_party/androidx:androidx_core_core_java",
- "//third_party/androidx:androidx_fragment_fragment_java",
- ]
- }
- }
-
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- android_aar_prebuilt("google_play_services_basement_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_gms_play_services_basement/play-services-basement-18.7.0.aar"
- info_path = "autorolled/committed/libs/com_google_android_gms_play_services_basement/com_google_android_gms_play_services_basement.info"
- enable_bytecode_checks = false
- deps = [
- "//third_party/androidx:androidx_collection_collection_java",
- "//third_party/androidx:androidx_core_core_java",
- "//third_party/androidx:androidx_fragment_fragment_java",
- ]
-
- jar_excluded_patterns = []
- if (!enable_java_asserts) {
- # Omit the file since we use our own copy.
- jar_excluded_patterns +=
- [ "com/google/android/gms/common/internal/Preconditions.class" ]
- deps += [ "//third_party/android_deps/local_modifications/preconditions:gms_stub_preconditions_java" ]
- }
-
- # https://crbug.com/989505
- jar_excluded_patterns += [ "META-INF/proguard/*" ]
- input_jars_paths =
- [ "$android_sdk/optional/org.apache.http.legacy.jar" ]
- }
- }
-
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- android_aar_prebuilt("google_play_services_cast_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_gms_play_services_cast/play-services-cast-22.1.0.aar"
- info_path = "autorolled/committed/libs/com_google_android_gms_play_services_cast/com_google_android_gms_play_services_cast.info"
- enable_bytecode_checks = false
- deps = [
- "$google_play_services_package:google_play_services_base_java",
- "$google_play_services_package:google_play_services_basement_java",
- "$google_play_services_package:google_play_services_flags_java",
- "$google_play_services_package:google_play_services_tasks_java",
- "//third_party/androidx:androidx_core_core_java",
- "//third_party/androidx:androidx_mediarouter_mediarouter_java",
- "//third_party/kotlin_stdlib:kotlin_stdlib_java",
- ]
- }
- }
-
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- android_aar_prebuilt("google_play_services_cast_framework_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_gms_play_services_cast_framework/play-services-cast-framework-22.1.0.aar"
- info_path = "autorolled/committed/libs/com_google_android_gms_play_services_cast_framework/com_google_android_gms_play_services_cast_framework.info"
- enable_bytecode_checks = false
- deps = [
- "$google_play_services_package:google_play_services_base_java",
- "$google_play_services_package:google_play_services_basement_java",
- "$google_play_services_package:google_play_services_cast_java",
- "$google_play_services_package:google_play_services_tasks_java",
- "//third_party/android_deps:google_android_datatransport_transport_api_java",
- "//third_party/android_deps:google_android_datatransport_transport_backend_cct_java",
- "//third_party/android_deps:google_android_datatransport_transport_runtime_java",
- "//third_party/android_deps:guava_android_java",
- "//third_party/androidx:androidx_appcompat_appcompat_java",
- "//third_party/androidx:androidx_collection_collection_java",
- "//third_party/androidx:androidx_concurrent_concurrent_futures_java",
- "//third_party/androidx:androidx_core_core_java",
- "//third_party/androidx:androidx_fragment_fragment_java",
- "//third_party/androidx:androidx_media_media_java",
- "//third_party/androidx:androidx_mediarouter_mediarouter_java",
- "//third_party/androidx:androidx_recyclerview_recyclerview_java",
- "//third_party/kotlin_stdlib:kotlin_stdlib_java",
- ]
- }
- }
-
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- android_aar_prebuilt("google_play_services_fido_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_gms_play_services_fido/play-services-fido-21.2.0.aar"
- info_path = "autorolled/committed/libs/com_google_android_gms_play_services_fido/com_google_android_gms_play_services_fido.info"
- enable_bytecode_checks = false
- deps = [
- "$google_play_services_package:google_play_services_base_java",
- "$google_play_services_package:google_play_services_basement_java",
- "$google_play_services_package:google_play_services_tasks_java",
- "//third_party/android_deps:org_jetbrains_kotlinx_kotlinx_coroutines_core_java",
- "//third_party/kotlin_stdlib:kotlin_stdlib_java",
- ]
- }
- }
-
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- android_aar_prebuilt("google_play_services_gcm_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_gms_play_services_gcm/play-services-gcm-17.0.0.aar"
- info_path = "autorolled/committed/libs/com_google_android_gms_play_services_gcm/com_google_android_gms_play_services_gcm.info"
- enable_bytecode_checks = false
- deps = [
- "$google_play_services_package:google_play_services_base_java",
- "$google_play_services_package:google_play_services_basement_java",
- "$google_play_services_package:google_play_services_iid_java",
- "$google_play_services_package:google_play_services_stats_java",
- "//third_party/androidx:androidx_collection_collection_java",
- "//third_party/androidx:androidx_core_core_java",
- "//third_party/androidx:androidx_legacy_legacy_support_core_utils_java",
- ]
- }
- }
-
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- android_aar_prebuilt("google_play_services_identity_credentials_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_gms_play_services_identity_credentials/play-services-identity-credentials-16.0.0-alpha07.aar"
- info_path = "autorolled/committed/libs/com_google_android_gms_play_services_identity_credentials/com_google_android_gms_play_services_identity_credentials.info"
- enable_bytecode_checks = false
- deps = [
- "$google_play_services_package:google_play_services_base_java",
- "$google_play_services_package:google_play_services_basement_java",
- "$google_play_services_package:google_play_services_tasks_java",
- "//third_party/kotlin_stdlib:kotlin_stdlib_java",
- ]
- }
- }
-
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- android_aar_prebuilt("google_play_services_iid_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_gms_play_services_iid/play-services-iid-17.0.0.aar"
- info_path = "autorolled/committed/libs/com_google_android_gms_play_services_iid/com_google_android_gms_play_services_iid.info"
- enable_bytecode_checks = false
- deps = [
- "$google_play_services_package:google_play_services_base_java",
- "$google_play_services_package:google_play_services_basement_java",
- "$google_play_services_package:google_play_services_stats_java",
- "$google_play_services_package:google_play_services_tasks_java",
- "//third_party/androidx:androidx_collection_collection_java",
- "//third_party/androidx:androidx_core_core_java",
- ]
- }
- }
-
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- android_aar_prebuilt("google_play_services_instantapps_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_gms_play_services_instantapps/play-services-instantapps-18.1.0.aar"
- info_path = "autorolled/committed/libs/com_google_android_gms_play_services_instantapps/com_google_android_gms_play_services_instantapps.info"
- enable_bytecode_checks = false
- deps = [
- "$google_play_services_package:google_play_services_base_java",
- "$google_play_services_package:google_play_services_basement_java",
- "$google_play_services_package:google_play_services_tasks_java",
- ]
- }
- }
-
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- android_aar_prebuilt("google_play_services_location_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_gms_play_services_location/play-services-location-21.3.0.aar"
- info_path = "autorolled/committed/libs/com_google_android_gms_play_services_location/com_google_android_gms_play_services_location.info"
- enable_bytecode_checks = false
- deps = [
- "$google_play_services_package:google_play_services_base_java",
- "$google_play_services_package:google_play_services_basement_java",
- "$google_play_services_package:google_play_services_tasks_java",
- "//third_party/android_deps:org_jetbrains_kotlinx_kotlinx_coroutines_android_java",
- "//third_party/android_deps:org_jetbrains_kotlinx_kotlinx_coroutines_core_java",
- "//third_party/kotlin_stdlib:kotlin_stdlib_java",
- ]
- }
- }
-
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- android_aar_prebuilt("google_play_services_stats_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_gms_play_services_stats/play-services-stats-17.1.0.aar"
- info_path = "autorolled/committed/libs/com_google_android_gms_play_services_stats/com_google_android_gms_play_services_stats.info"
- enable_bytecode_checks = false
- deps = [
- "$google_play_services_package:google_play_services_basement_java",
- "//third_party/androidx:androidx_legacy_legacy_support_core_utils_java",
- ]
- }
- }
-
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- android_aar_prebuilt("google_play_services_tasks_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_gms_play_services_tasks/play-services-tasks-18.3.0.aar"
- info_path = "autorolled/committed/libs/com_google_android_gms_play_services_tasks/com_google_android_gms_play_services_tasks.info"
- enable_bytecode_checks = false
- deps = [
- "$google_play_services_package:google_play_services_basement_java",
- ]
- }
- }
-
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- android_aar_prebuilt("google_play_services_vision_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_gms_play_services_vision/play-services-vision-20.1.3.aar"
- info_path = "autorolled/committed/libs/com_google_android_gms_play_services_vision/com_google_android_gms_play_services_vision.info"
- enable_bytecode_checks = false
- deps = [
- "$google_play_services_package:google_play_services_base_java",
- "$google_play_services_package:google_play_services_basement_java",
- "$google_play_services_package:google_play_services_vision_common_java",
- ]
- }
- }
-
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- android_aar_prebuilt("google_play_services_vision_common_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_gms_play_services_vision_common/play-services-vision-common-19.1.3.aar"
- info_path = "autorolled/committed/libs/com_google_android_gms_play_services_vision_common/com_google_android_gms_play_services_vision_common.info"
- enable_bytecode_checks = false
- deps = [
- "$google_play_services_package:google_play_services_base_java",
- "$google_play_services_package:google_play_services_basement_java",
- "$google_play_services_package:google_play_services_clearcut_java",
- "$google_play_services_package:google_play_services_flags_java",
- "$google_play_services_package:google_play_services_phenotype_java",
- ]
- }
- }
-
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- android_aar_prebuilt(
- "com_google_android_libraries_identity_googleid_googleid_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_libraries_identity_googleid_googleid/googleid-1.1.1.aar"
- info_path = "autorolled/committed/libs/com_google_android_libraries_identity_googleid_googleid/com_google_android_libraries_identity_googleid_googleid.info"
- enable_bytecode_checks = false
- deps = [
- "//third_party/androidx:androidx_credentials_credentials_java",
- "//third_party/kotlin_stdlib:kotlin_stdlib_java",
- ]
- }
-
# This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
if (!defined(material_design_target)) {
android_aar_prebuilt("com_google_android_material_material_java") {
@@ -523,24 +187,6 @@ template("define_autorolled_targets") {
}
}
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (!defined(playcore_target)) {
- android_aar_prebuilt("com_google_android_play_feature_delivery_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_play_feature_delivery/feature-delivery-2.1.0.aar"
- info_path = "autorolled/committed/libs/com_google_android_play_feature_delivery/com_google_android_play_feature_delivery.info"
- enable_bytecode_checks = false
-
- # Target is swapped out when internal code is enabled.
- # Please depend on //third_party/android_deps:playcore_java instead.
- visibility = [ "//third_party/android_deps:*" ]
- deps = [
- "$google_play_services_package:google_play_services_basement_java",
- "$google_play_services_package:google_play_services_tasks_java",
- "//third_party/android_deps:com_google_android_play_core_common_java",
- ]
- }
- }
-
# This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
java_prebuilt("com_google_code_findbugs_jsr305_java") {
jar_path = "autorolled/cipd/libs/com_google_code_findbugs_jsr305/jsr305-3.0.2.jar"
@@ -642,21 +288,6 @@ template("define_autorolled_targets") {
deps = [ "//third_party/kotlin_stdlib:kotlin_stdlib_java" ]
}
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- java_prebuilt(
- "org_jetbrains_kotlinx_kotlinx_coroutines_play_services_java") {
- jar_path = "autorolled/cipd/libs/org_jetbrains_kotlinx_kotlinx_coroutines_play_services/kotlinx-coroutines-play-services-1.10.1.jar"
- output_name = "org_jetbrains_kotlinx_kotlinx_coroutines_play_services"
- supports_android = true
- requires_android = true
- enable_bytecode_checks = false
- deps = [
- "$google_play_services_package:google_play_services_tasks_java",
- "//third_party/android_deps:org_jetbrains_kotlinx_kotlinx_coroutines_core_java",
- "//third_party/kotlin_stdlib:kotlin_stdlib_java",
- ]
- }
-
# This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
java_prebuilt("org_jetbrains_kotlinx_kotlinx_serialization_core_jvm_java") {
jar_path = "autorolled/cipd/libs/org_jetbrains_kotlinx_kotlinx_serialization_core_jvm/kotlinx-serialization-core-jvm-1.7.2.jar"
@@ -695,126 +326,6 @@ template("define_autorolled_targets") {
]
}
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- android_aar_prebuilt("google_android_datatransport_transport_api_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_datatransport_transport_api/transport-api-4.0.0.aar"
- info_path = "autorolled/committed/libs/com_google_android_datatransport_transport_api/com_google_android_datatransport_transport_api.info"
- enable_bytecode_checks = false
-
- # To remove visibility constraint, add this dependency to
- # //third_party/android_deps/autorolled/build.gradle.
- visibility = [
- ":*",
- "//third_party/androidx:*",
- ]
- deps = [ "//third_party/androidx:androidx_annotation_annotation_java" ]
- }
- }
-
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- android_aar_prebuilt(
- "google_android_datatransport_transport_runtime_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_datatransport_transport_runtime/transport-runtime-4.0.0.aar"
- info_path = "autorolled/committed/libs/com_google_android_datatransport_transport_runtime/com_google_android_datatransport_transport_runtime.info"
- enable_bytecode_checks = false
-
- # To remove visibility constraint, add this dependency to
- # //third_party/android_deps/autorolled/build.gradle.
- visibility = [
- ":*",
- "//third_party/androidx:*",
- ]
- deps = [
- "$google_play_services_package:google_firebase_firebase_encoders_java",
- "$google_play_services_package:google_firebase_firebase_encoders_proto_java",
- "//third_party/android_deps:google_android_datatransport_transport_api_java",
- "//third_party/android_deps:javax_inject_javax_inject_java",
- "//third_party/androidx:androidx_annotation_annotation_java",
- ]
- }
- }
-
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- android_aar_prebuilt("google_play_services_clearcut_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_gms_play_services_clearcut/play-services-clearcut-17.0.0.aar"
- info_path = "autorolled/committed/libs/com_google_android_gms_play_services_clearcut/com_google_android_gms_play_services_clearcut.info"
- enable_bytecode_checks = false
-
- # To remove visibility constraint, add this dependency to
- # //third_party/android_deps/autorolled/build.gradle.
- visibility = [
- ":*",
- "//third_party/androidx:*",
- ]
- deps = [
- "$google_play_services_package:google_play_services_base_java",
- "$google_play_services_package:google_play_services_basement_java",
- "$google_play_services_package:google_play_services_phenotype_java",
- "$google_play_services_package:google_play_services_tasks_java",
- "//third_party/androidx:androidx_core_core_java",
- ]
- }
- }
-
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- android_aar_prebuilt("google_play_services_flags_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_gms_play_services_flags/play-services-flags-18.1.0.aar"
- info_path = "autorolled/committed/libs/com_google_android_gms_play_services_flags/com_google_android_gms_play_services_flags.info"
- enable_bytecode_checks = false
-
- # To remove visibility constraint, add this dependency to
- # //third_party/android_deps/autorolled/build.gradle.
- visibility = [
- ":*",
- "//third_party/androidx:*",
- ]
- deps = [
- "$google_play_services_package:google_play_services_base_java",
- "$google_play_services_package:google_play_services_basement_java",
- ]
- }
- }
-
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- android_aar_prebuilt("google_play_services_phenotype_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_gms_play_services_phenotype/play-services-phenotype-17.0.0.aar"
- info_path = "autorolled/committed/libs/com_google_android_gms_play_services_phenotype/com_google_android_gms_play_services_phenotype.info"
- enable_bytecode_checks = false
-
- # To remove visibility constraint, add this dependency to
- # //third_party/android_deps/autorolled/build.gradle.
- visibility = [
- ":*",
- "//third_party/androidx:*",
- ]
- deps = [
- "$google_play_services_package:google_play_services_base_java",
- "$google_play_services_package:google_play_services_basement_java",
- "$google_play_services_package:google_play_services_tasks_java",
- "//third_party/androidx:androidx_core_core_java",
- ]
- }
- }
-
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- android_aar_prebuilt("com_google_android_play_core_common_java") {
- aar_path = "autorolled/cipd/libs/com_google_android_play_core_common/core-common-2.0.3.aar"
- info_path = "autorolled/committed/libs/com_google_android_play_core_common/com_google_android_play_core_common.info"
- enable_bytecode_checks = false
-
- # To remove visibility constraint, add this dependency to
- # //third_party/android_deps/autorolled/build.gradle.
- visibility = [
- ":*",
- "//third_party/androidx:*",
- ]
- }
-
# This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
java_prebuilt("com_google_auto_value_auto_value_annotations_java") {
jar_path = "autorolled/cipd/libs/com_google_auto_value_auto_value_annotations/auto-value-annotations-1.11.0.jar"
@@ -831,67 +342,6 @@ template("define_autorolled_targets") {
testonly = true
}
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- java_prebuilt("google_firebase_firebase_encoders_java") {
- jar_path = "autorolled/cipd/libs/com_google_firebase_firebase_encoders/firebase-encoders-17.0.0.jar"
- output_name = "com_google_firebase_firebase_encoders"
- supports_android = true
- requires_android = true
- enable_bytecode_checks = false
-
- # To remove visibility constraint, add this dependency to
- # //third_party/android_deps/autorolled/build.gradle.
- visibility = [
- ":*",
- "//third_party/androidx:*",
- ]
- deps = [ "//third_party/androidx:androidx_annotation_annotation_java" ]
- }
- }
-
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- android_aar_prebuilt("google_firebase_firebase_encoders_json_java") {
- aar_path = "autorolled/cipd/libs/com_google_firebase_firebase_encoders_json/firebase-encoders-json-18.0.0.aar"
- info_path = "autorolled/committed/libs/com_google_firebase_firebase_encoders_json/com_google_firebase_firebase_encoders_json.info"
- enable_bytecode_checks = false
-
- # To remove visibility constraint, add this dependency to
- # //third_party/android_deps/autorolled/build.gradle.
- visibility = [
- ":*",
- "//third_party/androidx:*",
- ]
- deps = [
- "$google_play_services_package:google_firebase_firebase_encoders_java",
- "//third_party/androidx:androidx_annotation_annotation_java",
- ]
- }
- }
-
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- if (google_play_services_package == "//third_party/android_deps") {
- java_prebuilt("google_firebase_firebase_encoders_proto_java") {
- jar_path = "autorolled/cipd/libs/com_google_firebase_firebase_encoders_proto/firebase-encoders-proto-16.0.0.jar"
- output_name = "com_google_firebase_firebase_encoders_proto"
- supports_android = true
- requires_android = true
- enable_bytecode_checks = false
-
- # To remove visibility constraint, add this dependency to
- # //third_party/android_deps/autorolled/build.gradle.
- visibility = [
- ":*",
- "//third_party/androidx:*",
- ]
- deps = [
- "$google_play_services_package:google_firebase_firebase_encoders_java",
- "//third_party/androidx:androidx_annotation_annotation_java",
- ]
- }
- }
-
# This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
java_prebuilt(
"com_google_testparameterinjector_test_parameter_injector_java") {
diff --git a/third_party/android_deps/local_modifications/preconditions/javatests/BUILD.gn b/third_party/android_deps/local_modifications/preconditions/javatests/BUILD.gn
--- a/third_party/android_deps/local_modifications/preconditions/javatests/BUILD.gn
+++ b/third_party/android_deps/local_modifications/preconditions/javatests/BUILD.gn
@@ -6,24 +6,17 @@ restore https://chromium-review.googlesource.com/c/chromium/src/+/5554182
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
.../chrome/browser/bookmarks/BookmarkToolbar.java | 13 +++++++++++++
.../bookmarks/BookmarkToolbarCoordinator.java | 1 +
.../browser/bookmarks/BookmarkToolbarMediator.java | 1 +
.../bookmarks/BookmarkToolbarProperties.java | 9 +++++++++
.../bookmarks/BookmarkToolbarViewBinder.java | 4 ++++
5 files changed, 28 insertions(+)
.../chrome/browser/bookmarks/BookmarkToolbar.java | 12 ++++++++++++
.../bookmarks/BookmarkToolbarCoordinator.java | 1 +
.../browser/bookmarks/BookmarkToolbarMediator.java | 1 +
.../browser/bookmarks/BookmarkToolbarProperties.java | 9 +++++++++
.../browser/bookmarks/BookmarkToolbarViewBinder.java | 4 ++++
5 files changed, 27 insertions(+)
diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbar.java b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbar.java
--- a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbar.java
+++ b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbar.java
@@ -13,12 +13,14 @@ import android.view.View;
import android.view.View.OnClickListener;
import androidx.annotation.IdRes;
+import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar.OnMenuItemClickListener;
import androidx.core.view.MenuCompat;
@@ -19,6 +19,7 @@ import androidx.core.view.MenuCompat;
import org.chromium.build.annotations.NullMarked;
import org.chromium.build.annotations.Nullable;
import org.chromium.chrome.browser.bookmarks.BookmarkUiState.BookmarkUiMode;
@@ -31,7 +24,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows
import org.chromium.components.bookmarks.BookmarkId;
import org.chromium.components.browser_ui.util.ToolbarUtils;
import org.chromium.components.browser_ui.widget.selectable_list.SelectableListToolbar;
@@ -35,8 +37,10 @@ import java.util.function.Function;
@@ -35,8 +36,10 @@ import java.util.function.Function;
@NullMarked
public class BookmarkToolbar extends SelectableListToolbar<BookmarkId>
implements OnMenuItemClickListener, OnClickListener {
@@ -42,7 +35,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows
private boolean mEditButtonVisible;
private boolean mNewFolderButtonVisible;
private boolean mNewFolderButtonEnabled;
@@ -65,6 +69,11 @@ public class BookmarkToolbar extends SelectableListToolbar<BookmarkId>
@@ -65,6 +68,11 @@ public class BookmarkToolbar extends SelectableListToolbar<BookmarkId>
setOnMenuItemClickListener(this);
}
@@ -54,7 +47,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows
void setSelectionDelegate(SelectionDelegate selectionDelegate) {
mSelectionDelegate = selectionDelegate;
getMenu().setGroupEnabled(R.id.selection_mode_menu_group, true);
@@ -168,6 +177,10 @@ public class BookmarkToolbar extends SelectableListToolbar<BookmarkId>
@@ -168,6 +176,10 @@ public class BookmarkToolbar extends SelectableListToolbar<BookmarkId>
getMenu().findItem(id).setChecked(true);
}
@@ -28,7 +28,8 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../SuggestionsNavigationDelegate.java | 27 +-
.../tile/MostVisitedTilesCoordinator.java | 6 +-
.../tile/MostVisitedTilesGridLayout.java | 287 ++++++++++++++++++
.../tile/MostVisitedTilesMediator.java | 4 +-
.../tile/MostVisitedTilesMediator.java | 5 +-
.../tile/TileDragDelegateImpl.java | 6 +-
.../suggestions/tile/TileRenderer.java | 8 +-
.../suggestions/tile/TilesLinearLayout.java | 2 +-
.../engagement/important_sites_util.cc | 2 +-
@@ -36,10 +37,11 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../browser/flags/ChromeFeatureList.java | 3 +-
.../client_util/HomeModulesRankingHelper.java | 1 +
.../history/core/browser/top_sites_impl.h | 2 +-
components/ntp_tiles/custom_links_store.cc | 2 -
.../Restore-Simplified-NTP-launch.inc | 12 +
.../Restore-Simplified-NTP-launch.inc | 5 +
.../Restore-Simplified-NTP-launch.inc | 1 +
33 files changed, 534 insertions(+), 47 deletions(-)
35 files changed, 537 insertions(+), 53 deletions(-)
create mode 100644 chrome/android/java/res/layout/ntp_shortcuts.xml
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/feedback/SimplifiedNtpFeedbackSource.java
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/suggestions/tile/MostVisitedTilesGridLayout.java
@@ -1005,6 +1007,44 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/suggestions/til
ViewStub noMvPlaceholderStub,
TileRenderer renderer,
PropertyModel propertyModel,
@@ -164,7 +164,6 @@ public class MostVisitedTilesMediator implements TileGroup.Observer, TemplateUrl
@Override
public void onCustomTileCreation(Tile tile) {
- mMvTilesLayout.ensureTileIsInViewOnNextLayout(tile.getIndex());
}
public void onConfigurationChanged() {
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/suggestions/tile/TileDragDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/suggestions/tile/TileDragDelegateImpl.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/suggestions/tile/TileDragDelegateImpl.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/suggestions/tile/TileDragDelegateImpl.java
@@ -64,7 +64,7 @@ class TileDragDelegateImpl implements TileGroup.TileDragDelegate, TileDragSessio
private static final float DOMINATE_TRESHOLD_RATIO = 0.4f;
// Parent container for dragged tiles.
- private final MostVisitedTilesLayout mMvTilesLayout;
+ private final MostVisitedTilesGridLayout mMvTilesLayout;
private final float mTileWidthPx;
@@ -85,7 +85,7 @@ class TileDragDelegateImpl implements TileGroup.TileDragDelegate, TileDragSessio
// Runnable to cancel tile movement that might not have completed yet, due to animation.
private @Nullable Runnable mPendingChangeCanceller;
- public TileDragDelegateImpl(MostVisitedTilesLayout mvTilesLayout) {
+ public TileDragDelegateImpl(MostVisitedTilesGridLayout mvTilesLayout) {
mMvTilesLayout = mvTilesLayout;
Resources res = mMvTilesLayout.getResources();
mTileWidthPx = res.getDimensionPixelSize(R.dimen.tile_view_width);
@@ -187,7 +187,7 @@ class TileDragDelegateImpl implements TileGroup.TileDragDelegate, TileDragSessio
@Override
public SiteSuggestion getTileViewData(TileView view) {
- return mMvTilesLayout.getTileViewData(view);
+ return null;
}
private void cancelPendingChange() {
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/suggestions/tile/TileRenderer.java b/chrome/android/java/src/org/chromium/chrome/browser/suggestions/tile/TileRenderer.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/suggestions/tile/TileRenderer.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/suggestions/tile/TileRenderer.java
@@ -1122,6 +1162,18 @@ diff --git a/components/history/core/browser/top_sites_impl.h b/components/histo
// This class allows requests for most visited urls on any thread. All other
// methods must be invoked on the UI thread. All mutations to internal state
diff --git a/components/ntp_tiles/custom_links_store.cc b/components/ntp_tiles/custom_links_store.cc
--- a/components/ntp_tiles/custom_links_store.cc
+++ b/components/ntp_tiles/custom_links_store.cc
@@ -63,8 +63,6 @@ std::vector<CustomLinksManager::Link> CustomLinksStore::RetrieveLinks() {
if (!has_recorded_first_load_stats) {
has_recorded_first_load_stats = true;
- ntp_tiles::metrics::RecordNumberOfCustomTilesOnFirstNtp(
- static_cast<int>(links.size()));
}
return links;
diff --git a/cromite_flags/chrome/browser/about_flags_cc/Restore-Simplified-NTP-launch.inc b/cromite_flags/chrome/browser/about_flags_cc/Restore-Simplified-NTP-launch.inc
new file mode 100644
--- /dev/null
@@ -7,7 +7,7 @@ Voice button and legacy share/voice functionality is not restored.
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
.../ReaderModeToolbarButtonController.java | 5 +++--
.../ReaderModeToolbarButtonController.java | 4 ++--
.../ContextualPageActionController.java | 4 ++++
.../chrome/browser/settings/MainSettings.java | 9 +--------
.../segmentation_platform_config.cc | 1 +
@@ -19,13 +19,13 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../adaptive/AdaptiveToolbarStats.java | 2 ++
...oButtonGroupAdaptiveToolbarPreference.java | 19 ++++++++++++-------
...ve-button-in-top-toolbar-customization.inc | 1 +
12 files changed, 41 insertions(+), 21 deletions(-)
12 files changed, 40 insertions(+), 21 deletions(-)
create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Restore-adaptive-button-in-top-toolbar-customization.inc
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/dom_distiller/ReaderModeToolbarButtonController.java b/chrome/android/java/src/org/chromium/chrome/browser/dom_distiller/ReaderModeToolbarButtonController.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/dom_distiller/ReaderModeToolbarButtonController.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/dom_distiller/ReaderModeToolbarButtonController.java
@@ -39,11 +39,12 @@ public class ReaderModeToolbarButtonController extends BaseButtonDataProvider {
@@ -39,11 +39,11 @@ public class ReaderModeToolbarButtonController extends BaseButtonDataProvider {
modalDialogManager,
buttonDrawable,
context.getString(R.string.reader_view_text_alt),
@@ -35,8 +35,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/dom_distiller/R
/* iphCommandBuilder= */ null,
AdaptiveToolbarButtonVariant.READER_MODE,
- /* tooltipTextResId= */ Resources.ID_NULL);
+ /* tooltipTextResId= */ R.string.reader_mode_action_chip_label_simplify_page,
+ /* showBackgroundHighlight= */ true);
+ /* tooltipTextResId= */ R.string.reader_mode_action_chip_label_simplify_page);
}
@Override
@@ -47,7 +46,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/segmentation_pl
&& mTabSupplier.get().getId() == tab.getId();
if (!isSameTab) return;
+ if (signalAccumulator.hasReaderMode()
+ if (mSignalAccumulator.hasReaderMode()
+ && result == AdaptiveToolbarButtonVariant.UNKNOWN) {
+ result = AdaptiveToolbarButtonVariant.READER_MODE;
+ }
+13 -7
View File
@@ -21,14 +21,14 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../chrome/browser/app/ChromeActivity.java | 1 +
.../init/ChromeBrowserInitializer.java | 3 +
.../PrivacyPreferencesManagerImpl.java | 42 ++++
.../settings/UserAgentPreferences.java | 183 ++++++++++++++++++
.../settings/UserAgentPreferences.java | 189 ++++++++++++++++++
.../browser/tab/RequestDesktopUtils.java | 1 +
.../chromium/chrome/browser/tab/TabImpl.java | 64 +++++-
.../chromium/chrome/browser/tab/TabUtils.java | 7 +-
.../browser/android/content/content_utils.cc | 32 ++-
.../preferences/browser_prefs_android.cc | 7 +
.../privacy_preferences_manager_impl.cc | 126 ++++++++++++
...ktop_site_web_contents_observer_android.cc | 11 ++
...ktop_site_web_contents_observer_android.cc | 11 +
...sktop_site_web_contents_observer_android.h | 2 +
.../preferences/ChromePreferenceKeys.java | 2 -
.../settings/PrivacyPreferencesManager.java | 8 +
@@ -37,16 +37,16 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../tabwindow/TabWindowManagerImpl.java | 18 ++
.../strings/android_chrome_strings.grd | 26 +++
chrome/common/pref_names.h | 8 +
...omiteRequestDesktopSiteContentSetting.java | 76 ++++++++
...omiteRequestDesktopSiteContentSetting.java | 76 +++++++
.../request_desktop_site.grdp | 18 ++
.../widget/RadioButtonWithEditText.java | 11 ++
.../widget/RadioButtonWithEditText.java | 11 +
.../navigation_controller_android.cc | 4 +
.../navigation_controller_android.h | 1 +
.../renderer_host/render_process_host_impl.cc | 1 +
.../browser/web_contents/web_contents_impl.cc | 6 +-
.../framehost/NavigationControllerImpl.java | 3 +-
content/renderer/render_thread_impl.cc | 1 -
36 files changed, 794 insertions(+), 17 deletions(-)
36 files changed, 800 insertions(+), 17 deletions(-)
create mode 100644 chrome/android/java/res/layout/custom_useragent_preferences.xml
create mode 100644 chrome/android/java/res/xml/useragent_preferences.xml
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/settings/UserAgentPreferences.java
@@ -364,7 +364,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/UserAg
new file mode 100644
--- /dev/null
+++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/UserAgentPreferences.java
@@ -0,0 +1,183 @@
@@ -0,0 +1,189 @@
+/*
+ This file is part of Bromite.
+
@@ -408,6 +408,7 @@ new file mode 100644
+import org.chromium.components.browser_ui.settings.SettingsUtils;
+import org.chromium.components.content_settings.ContentSettingsType;
+import org.chromium.components.browser_ui.site_settings.WebsitePreferenceBridge;
+import org.chromium.components.browser_ui.settings.SettingsFragment;
+import org.chromium.chrome.browser.app.tabwindow.TabWindowManagerSingleton;
+import org.chromium.chrome.browser.tabwindow.TabWindowManager;
+import org.chromium.chrome.browser.privacy.settings.PrivacyPreferencesManagerImpl;
@@ -420,7 +421,7 @@ new file mode 100644
+ */
+public class UserAgentPreferences
+ extends PreferenceFragmentCompat
+ implements RadioGroup.OnCheckedChangeListener,
+ implements RadioGroup.OnCheckedChangeListener, SettingsFragment,
+ ProfileDependentSetting {
+
+ private RadioButtonWithDescription useDefaultAgentSwitch;
@@ -433,6 +434,11 @@ new file mode 100644
+ private Profile mProfile;
+
+ @Override
+ public @AnimationType int getAnimationType() {
+ return AnimationType.PROPERTY;
+ }
+
+ @Override
+ public void setProfile(Profile profile) {
+ mProfile = profile;
+ }
+4 -18
View File
@@ -15,13 +15,13 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../browser/firstrun/FirstRunActivity.java | 23 +-
.../firstrun/FirstRunFlowSequencer.java | 58 +--
.../browser/firstrun/FirstRunUtils.java | 1 +
.../firstrun/ToSAndUMAFirstRunFragment.java | 335 +++++++++++++++++
.../firstrun/ToSAndUMAFirstRunFragment.java | 321 +++++++++++++++++
.../firstrun/TosAndUmaFragmentView.java | 336 ++++++++++++++++++
.../signin/ChildAccountStatusSupplier.java | 4 +
...creenSigninAndHistorySyncActivityBase.java | 6 +-
.../browser/locale/LocaleManagerDelegate.java | 5 +-
.../Welcome-screen.grdp | 27 ++
15 files changed, 917 insertions(+), 79 deletions(-)
15 files changed, 903 insertions(+), 79 deletions(-)
create mode 100644 chrome/android/java/res/layout/fre_tosanduma.xml
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAndUMAFirstRunFragment.java
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/firstrun/TosAndUmaFragmentView.java
@@ -495,7 +495,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAnd
new file mode 100644
--- /dev/null
+++ b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAndUMAFirstRunFragment.java
@@ -0,0 +1,335 @@
@@ -0,0 +1,321 @@
+// Copyright 2015 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
@@ -783,21 +783,7 @@ new file mode 100644
+ }
+
+ private boolean getUmaCheckBoxInitialState() {
+ // Metrics and crash reporting could not be permitted by policy.
+ if (!isWaitingForNativeAndPolicyInit()
+ && !PrivacyPreferencesManagerImpl.getInstance()
+ .isUsageAndCrashReportingPermittedByPolicy()) {
+ return false;
+ }
+
+ // A user could start FRE and accept terms of service, then close the browser and start
+ // again. In this case we rely on whatever state the user has already set.
+ if (FirstRunUtils.didAcceptTermsOfService()) {
+ return PrivacyPreferencesManagerImpl.getInstance()
+ .isUsageAndCrashReportingPermittedByUser();
+ }
+
+ return FirstRunActivity.DEFAULT_METRICS_AND_CRASH_REPORTING;
+ return false;
+ }
+
+ // Exposed methods for ToSAndUMACCTFirstRunFragment
+4 -5
View File
@@ -22,7 +22,7 @@ Based on Chromium 133.0.6943.49
.../content/browser/adblock_filter_match.h | 30 +
.../browser/adblock_internals_page_handler.cc | 171 ++
.../browser/adblock_internals_page_handler.h | 61 +
.../content/browser/adblock_internals_ui.cc | 68 +
.../content/browser/adblock_internals_ui.cc | 67 +
.../content/browser/adblock_internals_ui.h | 49 +
.../browser/adblock_url_loader_factory.cc | 813 ++++++++++
.../browser/adblock_url_loader_factory.h | 100 ++
@@ -365,7 +365,7 @@ Based on Chromium 133.0.6943.49
tools/eyeo/update_git_grafts.py | 138 ++
tools/gritsettings/resource_ids.spec | 12 +
.../histograms/metadata/extensions/enums.xml | 8 +-
361 files changed, 48845 insertions(+), 8 deletions(-)
361 files changed, 48844 insertions(+), 8 deletions(-)
create mode 100644 components/adblock/BUILD.gn
create mode 100644 components/adblock/CHANGELOG.md
create mode 100644 components/adblock/LICENSE
@@ -3465,7 +3465,7 @@ diff --git a/components/adblock/content/browser/adblock_internals_ui.cc b/compon
new file mode 100644
--- /dev/null
+++ b/components/adblock/content/browser/adblock_internals_ui.cc
@@ -0,0 +1,68 @@
@@ -0,0 +1,67 @@
+
+/* \
+ * This file is part of eyeo Chromium SDK, \
@@ -3517,8 +3517,7 @@ new file mode 100644
+ "trusted-types static-types "
+ // Add TrustedTypes policies necessary for using Polymer.
+ "polymer-html-literal polymer-template-event-attribute-policy;");
+ source->AddResourcePaths(
+ base::span(kAdblockInternalsResources, kAdblockInternalsResourcesSize));
+ source->AddResourcePaths(kAdblockInternalsResources);
+ source->SetDefaultResource(IDR_ADBLOCK_INTERNALS_ADBLOCK_INTERNALS_HTML);
+}
+