chore: bump chromium to 136.0.7103.149 (36-x-y) (#47295)
* chore: bump chromium in DEPS to 136.0.7103.149 * chore: update patches --------- Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com> Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
This commit is contained in:
parent
14ba395d45
commit
6e22f50bf8
5 changed files with 12 additions and 129 deletions
2
DEPS
2
DEPS
|
@ -2,7 +2,7 @@ gclient_gn_args_from = 'src'
|
|||
|
||||
vars = {
|
||||
'chromium_version':
|
||||
'136.0.7103.116',
|
||||
'136.0.7103.149',
|
||||
'node_version':
|
||||
'v22.15.1',
|
||||
'nan_version':
|
||||
|
|
|
@ -149,4 +149,3 @@ mac_fix_check_on_ime_reconversion_due_to_invalid_replacement_range.patch
|
|||
fix_osr_stutter_fix_backport_for_electron.patch
|
||||
do_not_check_the_order_of_display_id_order_on_windows.patch
|
||||
make_focus_methods_in_webcontentsviewchildframe_notimplemented.patch
|
||||
cherry-pick-69d5a982aed6.patch
|
||||
|
|
|
@ -7,23 +7,10 @@ Build libc++ as static library to compile and pass
|
|||
nan tests
|
||||
|
||||
diff --git a/buildtools/third_party/libc++/BUILD.gn b/buildtools/third_party/libc++/BUILD.gn
|
||||
index 29e8bbcb5e7ee2fb310ce00b0c20913424adc9c8..649330dde1e2b717e0af5a15834bf96ae4e19245 100644
|
||||
index d2e6e482d82782d1004e1f8ea377e69cbbe2677b..2bb9ec60180cf80be6e565081d56ea747820196b 100644
|
||||
--- a/buildtools/third_party/libc++/BUILD.gn
|
||||
+++ b/buildtools/third_party/libc++/BUILD.gn
|
||||
@@ -269,7 +269,11 @@ libcxx_modules("std_wctype_h") {
|
||||
if (libcxx_is_shared) {
|
||||
_libcxx_target_type = "shared_library"
|
||||
} else {
|
||||
- _libcxx_target_type = "source_set"
|
||||
+ if (is_win) {
|
||||
+ _libcxx_target_type = "source_set"
|
||||
+ } else {
|
||||
+ _libcxx_target_type = "static_library"
|
||||
+ }
|
||||
}
|
||||
|
||||
target(_libcxx_target_type, "libc++") {
|
||||
@@ -278,6 +282,7 @@ target(_libcxx_target_type, "libc++") {
|
||||
@@ -272,6 +272,7 @@ target(libcxx_target_type, "libc++") {
|
||||
# need to explicitly depend on libc++.
|
||||
visibility = [
|
||||
"//build/config:common_deps",
|
||||
|
@ -31,16 +18,3 @@ index 29e8bbcb5e7ee2fb310ce00b0c20913424adc9c8..649330dde1e2b717e0af5a15834bf96a
|
|||
"//third_party/catapult/devil:devil",
|
||||
]
|
||||
if (is_linux) {
|
||||
diff --git a/buildtools/third_party/libc++abi/BUILD.gn b/buildtools/third_party/libc++abi/BUILD.gn
|
||||
index 331ea447ea15e9f439396d4c7d41832de60adf4a..b96a994c43ac2ed0b0d5ec599f907ea0b501156e 100644
|
||||
--- a/buildtools/third_party/libc++abi/BUILD.gn
|
||||
+++ b/buildtools/third_party/libc++abi/BUILD.gn
|
||||
@@ -6,7 +6,7 @@ import("//build/config/android/config.gni")
|
||||
import("//build/config/c++/c++.gni")
|
||||
import("//build/config/unwind.gni")
|
||||
|
||||
-source_set("libc++abi") {
|
||||
+static_library("libc++abi") {
|
||||
if (export_libcxxabi_from_executables) {
|
||||
visibility = [ "//build/config:executable_deps" ]
|
||||
} else {
|
||||
|
|
|
@ -1,90 +0,0 @@
|
|||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Guido Urdaneta <guidou@chromium.org>
|
||||
Date: Thu, 15 May 2025 06:22:26 -0700
|
||||
Subject: Disable relaxed mode for audio devices
|
||||
|
||||
Relaxed mode is required only for cameras and there have been
|
||||
reports of problems with audio bluetooth devices.
|
||||
|
||||
Bug: 417256410
|
||||
Change-Id: Icfff72e5de12ea9efa1f0fe529b8a01ff4b5a149
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6550297
|
||||
Commit-Queue: Guido Urdaneta <guidou@chromium.org>
|
||||
Reviewed-by: Palak Agarwal <agpalak@chromium.org>
|
||||
Cr-Commit-Position: refs/heads/main@{#1460672}
|
||||
|
||||
diff --git a/content/browser/renderer_host/media/media_devices_manager.cc b/content/browser/renderer_host/media/media_devices_manager.cc
|
||||
index 4d3189e34c90f2be18d44c4a6f42859b495f58ae..20ca4a98945f9d7a37bec292442147376659f8df 100644
|
||||
--- a/content/browser/renderer_host/media/media_devices_manager.cc
|
||||
+++ b/content/browser/renderer_host/media/media_devices_manager.cc
|
||||
@@ -354,7 +354,8 @@ struct MediaDevicesManager::EnumerationRequest {
|
||||
// considered valid for some time after an enumeration.
|
||||
class MediaDevicesManager::CacheInfo {
|
||||
public:
|
||||
- CacheInfo() = default;
|
||||
+ explicit CacheInfo(bool allow_relaxed_mode)
|
||||
+ : allow_relaxed_mode_(allow_relaxed_mode) {}
|
||||
|
||||
void InvalidateCache() {
|
||||
DCHECK(thread_checker_.CalledOnValidThread());
|
||||
@@ -425,7 +426,7 @@ class MediaDevicesManager::CacheInfo {
|
||||
void RecordSpuriousInvalidation() {
|
||||
DCHECK(thread_checker_.CalledOnValidThread());
|
||||
CHECK(IsRelaxedCacheFeatureEnabled());
|
||||
- if (is_in_relaxed_mode_) {
|
||||
+ if (is_in_relaxed_mode_ || !allow_relaxed_mode_) {
|
||||
return;
|
||||
}
|
||||
if (++num_spurious_invalidations_ >= kMaxSpuriousInvalidations) {
|
||||
@@ -434,6 +435,8 @@ class MediaDevicesManager::CacheInfo {
|
||||
}
|
||||
}
|
||||
|
||||
+ bool allow_relaxed_mode() const { return allow_relaxed_mode_; }
|
||||
+
|
||||
private:
|
||||
bool IsCacheExpired() const {
|
||||
CHECK(IsRelaxedCacheFeatureEnabled());
|
||||
@@ -451,9 +454,13 @@ class MediaDevicesManager::CacheInfo {
|
||||
int64_t seq_last_invalidation_ = 0;
|
||||
bool is_update_ongoing_ = false;
|
||||
int num_spurious_invalidations_ = 0;
|
||||
+ const bool allow_relaxed_mode_;
|
||||
// This is eventually set to true on systems where the normal cache policy
|
||||
// can result in notification loops. Once set to true, it is never set back
|
||||
// to false in order to avoid these loops. See https://crbug.com/325590346.
|
||||
+ // An invariant that must be preserved at all times is that
|
||||
+ // `is_in_relaxed_mode_` can be set to true only if `allow_relaxed_mode_` is
|
||||
+ // true.
|
||||
bool is_in_relaxed_mode_ = false;
|
||||
base::TimeTicks time_last_update_;
|
||||
base::ThreadChecker thread_checker_;
|
||||
@@ -551,7 +558,6 @@ MediaDevicesManager::MediaDevicesManager(
|
||||
stop_removed_input_device_cb_(std::move(stop_removed_input_device_cb)),
|
||||
ui_input_device_change_cb_(std::move(ui_input_device_change_cb)),
|
||||
permission_checker_(std::make_unique<MediaDevicesPermissionChecker>()),
|
||||
- cache_infos_(static_cast<size_t>(MediaDeviceType::kNumMediaDeviceTypes)),
|
||||
get_salt_and_origin_cb_(
|
||||
base::BindRepeating(&GetMediaDeviceSaltAndOrigin)) {
|
||||
DCHECK_CURRENTLY_ON(BrowserThread::IO);
|
||||
@@ -559,6 +565,20 @@ MediaDevicesManager::MediaDevicesManager(
|
||||
DCHECK(video_capture_manager_.get());
|
||||
DCHECK(!stop_removed_input_device_cb_.is_null());
|
||||
DCHECK(!ui_input_device_change_cb_.is_null());
|
||||
+ // Enable relaxed mode only for cameras.
|
||||
+ // Audio devices do not need relaxed mode and it can interfere with bluetooth
|
||||
+ // notifications. See https://crbug.com/417256410
|
||||
+ cache_infos_.emplace_back(/*allow_relaxed_mode=*/false);
|
||||
+ cache_infos_.emplace_back(/*allow_relaxed_mode=*/true);
|
||||
+ cache_infos_.emplace_back(/*allow_relaxed_mode=*/false);
|
||||
+ CHECK_EQ(cache_infos_.size(),
|
||||
+ static_cast<size_t>(MediaDeviceType::kNumMediaDeviceTypes));
|
||||
+ CHECK(!cache_infos_[static_cast<size_t>(MediaDeviceType::kMediaAudioInput)]
|
||||
+ .allow_relaxed_mode());
|
||||
+ CHECK(cache_infos_[static_cast<size_t>(MediaDeviceType::kMediaVideoInput)]
|
||||
+ .allow_relaxed_mode());
|
||||
+ CHECK(!cache_infos_[static_cast<size_t>(MediaDeviceType::kMediaAudioOutput)]
|
||||
+ .allow_relaxed_mode());
|
||||
SendLogMessage("MediaDevicesManager()");
|
||||
cache_policies_.fill(CachePolicy::NO_CACHE);
|
||||
}
|
|
@ -16,10 +16,10 @@ It also:
|
|||
This may be partially upstreamed to Chromium in the future.
|
||||
|
||||
diff --git a/ui/gtk/select_file_dialog_linux_gtk.cc b/ui/gtk/select_file_dialog_linux_gtk.cc
|
||||
index b83f0177a2adb0a19be49684f865941e6708f626..a8c7032cfc122b97665c41da9e1191e747b95a33 100644
|
||||
index 4a9118dcabbc0cffeea17dc26a8e1f2a54604766..4ae6001c0376822d41a77949ce05ea0328abcee4 100644
|
||||
--- a/ui/gtk/select_file_dialog_linux_gtk.cc
|
||||
+++ b/ui/gtk/select_file_dialog_linux_gtk.cc
|
||||
@@ -259,8 +259,12 @@ void SelectFileDialogLinuxGtk::SelectFileImpl(
|
||||
@@ -261,8 +261,12 @@ void SelectFileDialogLinuxGtk::SelectFileImpl(
|
||||
case SELECT_EXISTING_FOLDER:
|
||||
dialog = CreateSelectFolderDialog(type, title_string, default_path,
|
||||
owning_window);
|
||||
|
@ -34,7 +34,7 @@ index b83f0177a2adb0a19be49684f865941e6708f626..a8c7032cfc122b97665c41da9e1191e7
|
|||
break;
|
||||
case SELECT_OPEN_FILE:
|
||||
dialog = CreateFileOpenDialog(title_string, default_path, owning_window);
|
||||
@@ -407,9 +411,11 @@ GtkWidget* SelectFileDialogLinuxGtk::CreateFileOpenHelper(
|
||||
@@ -409,9 +413,11 @@ GtkWidget* SelectFileDialogLinuxGtk::CreateFileOpenHelper(
|
||||
const std::string& title,
|
||||
const base::FilePath& default_path,
|
||||
gfx::NativeWindow parent) {
|
||||
|
@ -47,7 +47,7 @@ index b83f0177a2adb0a19be49684f865941e6708f626..a8c7032cfc122b97665c41da9e1191e7
|
|||
SetGtkTransientForAura(dialog, parent);
|
||||
AddFilters(GTK_FILE_CHOOSER(dialog));
|
||||
|
||||
@@ -425,6 +431,7 @@ GtkWidget* SelectFileDialogLinuxGtk::CreateFileOpenHelper(
|
||||
@@ -427,6 +433,7 @@ GtkWidget* SelectFileDialogLinuxGtk::CreateFileOpenHelper(
|
||||
GtkFileChooserSetCurrentFolder(GTK_FILE_CHOOSER(dialog),
|
||||
*last_opened_path());
|
||||
}
|
||||
|
@ -55,7 +55,7 @@ index b83f0177a2adb0a19be49684f865941e6708f626..a8c7032cfc122b97665c41da9e1191e7
|
|||
return dialog;
|
||||
}
|
||||
|
||||
@@ -440,11 +447,15 @@ GtkWidget* SelectFileDialogLinuxGtk::CreateSelectFolderDialog(
|
||||
@@ -442,11 +449,15 @@ GtkWidget* SelectFileDialogLinuxGtk::CreateSelectFolderDialog(
|
||||
? l10n_util::GetStringUTF8(IDS_SELECT_UPLOAD_FOLDER_DIALOG_TITLE)
|
||||
: l10n_util::GetStringUTF8(IDS_SELECT_FOLDER_DIALOG_TITLE);
|
||||
}
|
||||
|
@ -76,7 +76,7 @@ index b83f0177a2adb0a19be49684f865941e6708f626..a8c7032cfc122b97665c41da9e1191e7
|
|||
|
||||
GtkWidget* dialog = GtkFileChooserDialogNew(
|
||||
title_string.c_str(), nullptr, GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER,
|
||||
@@ -466,7 +477,8 @@ GtkWidget* SelectFileDialogLinuxGtk::CreateSelectFolderDialog(
|
||||
@@ -468,7 +479,8 @@ GtkWidget* SelectFileDialogLinuxGtk::CreateSelectFolderDialog(
|
||||
gtk_file_filter_add_mime_type(only_folders, "inode/directory");
|
||||
gtk_file_filter_add_mime_type(only_folders, "text/directory");
|
||||
gtk_file_chooser_add_filter(chooser, only_folders);
|
||||
|
@ -86,7 +86,7 @@ index b83f0177a2adb0a19be49684f865941e6708f626..a8c7032cfc122b97665c41da9e1191e7
|
|||
return dialog;
|
||||
}
|
||||
|
||||
@@ -503,10 +515,11 @@ GtkWidget* SelectFileDialogLinuxGtk::CreateSaveAsDialog(
|
||||
@@ -505,10 +517,11 @@ GtkWidget* SelectFileDialogLinuxGtk::CreateSaveAsDialog(
|
||||
std::string title_string =
|
||||
!title.empty() ? title
|
||||
: l10n_util::GetStringUTF8(IDS_SAVE_AS_DIALOG_TITLE);
|
||||
|
@ -100,7 +100,7 @@ index b83f0177a2adb0a19be49684f865941e6708f626..a8c7032cfc122b97665c41da9e1191e7
|
|||
GTK_RESPONSE_ACCEPT);
|
||||
SetGtkTransientForAura(dialog, parent);
|
||||
|
||||
@@ -532,9 +545,10 @@ GtkWidget* SelectFileDialogLinuxGtk::CreateSaveAsDialog(
|
||||
@@ -534,9 +547,10 @@ GtkWidget* SelectFileDialogLinuxGtk::CreateSaveAsDialog(
|
||||
gtk_file_chooser_set_select_multiple(GTK_FILE_CHOOSER(dialog), FALSE);
|
||||
// Overwrite confirmation is always enabled in GTK4.
|
||||
if (!GtkCheckVersion(4)) {
|
||||
|
@ -113,7 +113,7 @@ index b83f0177a2adb0a19be49684f865941e6708f626..a8c7032cfc122b97665c41da9e1191e7
|
|||
return dialog;
|
||||
}
|
||||
|
||||
@@ -589,15 +603,29 @@ void SelectFileDialogLinuxGtk::OnSelectSingleFolderDialogResponse(
|
||||
@@ -591,15 +605,29 @@ void SelectFileDialogLinuxGtk::OnSelectSingleFolderDialogResponse(
|
||||
void SelectFileDialogLinuxGtk::OnSelectMultiFileDialogResponse(
|
||||
GtkWidget* dialog,
|
||||
int response_id) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue