diff --git a/DEPS b/DEPS index 463ca6c77c7c..6e27ecec8d77 100644 --- a/DEPS +++ b/DEPS @@ -11,7 +11,7 @@ gclient_gn_args = [ vars = { 'chromium_version': - 'af5e1805f244bb71328690460ddd3d48ef3b1eca', + '6c775c358b709f4353bc693623bf58820adf3918', 'node_version': 'v12.9.1', 'nan_version': diff --git a/electron_paks.gni b/electron_paks.gni index e66e9f98bf5b..98e518aca6f8 100644 --- a/electron_paks.gni +++ b/electron_paks.gni @@ -147,7 +147,7 @@ template("electron_paks") { source_patterns = [ "${root_gen_dir}/chrome/platform_locale_settings_", "${root_gen_dir}/components/strings/components_strings_", - "${root_gen_dir}/content/app/strings/content_strings_", + "${root_gen_dir}/third_party/blink/public/strings/blink_strings_", "${root_gen_dir}/device/bluetooth/strings/bluetooth_strings_", "${root_gen_dir}/services/strings/services_strings_", "${root_gen_dir}/ui/strings/app_locale_settings_", @@ -156,9 +156,9 @@ template("electron_paks") { deps = [ "//chrome/app/resources:platform_locale_settings", "//components/strings:components_strings", - "//content/app/strings", "//device/bluetooth/strings", "//services/strings", + "//third_party/blink/public/strings", "//ui/strings:app_locale_settings", "//ui/strings:ui_strings", ] diff --git a/patches/boringssl/expose_aes-cfb.patch b/patches/boringssl/expose_aes-cfb.patch index 10e0173ad344..18ab556c35f7 100644 --- a/patches/boringssl/expose_aes-cfb.patch +++ b/patches/boringssl/expose_aes-cfb.patch @@ -23,23 +23,6 @@ index b132265bc103658dba3de6e0c3dc50d3634da5b0..588a4773437c311877f275bf3679f968 } else if (OPENSSL_strcasecmp(name, "aes-128-ctr") == 0) { return EVP_aes_128_ctr(); } else if (OPENSSL_strcasecmp(name, "aes-192-ctr") == 0) { -diff --git a/decrepit/cfb/cfb.c b/decrepit/cfb/cfb.c -index d3a176163303a202baeb1f95727c6ed3525439d6..21d108a7b73d454aa6b0e324df4b67088d60302a 100644 ---- a/decrepit/cfb/cfb.c -+++ b/decrepit/cfb/cfb.c -@@ -57,4 +57,12 @@ static const EVP_CIPHER aes_128_cfb128 = { - NULL /* cleanup */, NULL /* ctrl */, - }; - -+static const EVP_CIPHER aes_256_cfb128 = { -+ NID_aes_128_cfb128, 1 /* block_size */, 32 /* key_size */, -+ 16 /* iv_len */, sizeof(EVP_CFB_CTX), EVP_CIPH_CFB_MODE, -+ NULL /* app_data */, aes_cfb_init_key, aes_cfb128_cipher, -+ NULL /* cleanup */, NULL /* ctrl */, -+}; -+ - const EVP_CIPHER *EVP_aes_128_cfb128(void) { return &aes_128_cfb128; } -+const EVP_CIPHER *EVP_aes_256_cfb128(void) { return &aes_256_cfb128; } diff --git a/decrepit/evp/evp_do_all.c b/decrepit/evp/evp_do_all.c index 53cb9d2dc8f1962a70dc12b648d27c32be8aca4b..84af06fc56e4aa72d4d48801d7c037add0221747 100644 --- a/decrepit/evp/evp_do_all.c @@ -67,7 +50,7 @@ index 53cb9d2dc8f1962a70dc12b648d27c32be8aca4b..84af06fc56e4aa72d4d48801d7c037ad callback(EVP_aes_192_ctr(), "aes-192-ctr", NULL, arg); callback(EVP_aes_256_ctr(), "aes-256-ctr", NULL, arg); diff --git a/include/openssl/cipher.h b/include/openssl/cipher.h -index ea7a940ab3003f6919322ef1c4b7caaa9dea8588..5320d5d84c10c6396eb869dc1767b31afeeac4ef 100644 +index d22a6c216a2afe29f9507c90a190a4c6992c06a5..0bde0af4b25fbc24ee479b0ffffa037481c71e53 100644 --- a/include/openssl/cipher.h +++ b/include/openssl/cipher.h @@ -424,6 +424,7 @@ OPENSSL_EXPORT const EVP_CIPHER *EVP_des_ede3_ecb(void); @@ -76,5 +59,5 @@ index ea7a940ab3003f6919322ef1c4b7caaa9dea8588..5320d5d84c10c6396eb869dc1767b31a OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_128_cfb128(void); +OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_256_cfb128(void); - // EVP_bf_ecb is Blowfish in ECB mode and is only available in decrepit. - OPENSSL_EXPORT const EVP_CIPHER *EVP_bf_ecb(void); + // EVP_aes_256_cfb128 is only available in decrepit. + OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_256_cfb128(void); diff --git a/patches/chromium/.patches b/patches/chromium/.patches index 438dcfbcb388..2a65994d789b 100644 --- a/patches/chromium/.patches +++ b/patches/chromium/.patches @@ -79,3 +79,4 @@ expose_setuseragent_on_networkcontext.patch feat_add_set_theme_source_to_allow_apps_to.patch revert_cleanup_remove_menu_subtitles_sublabels.patch ui_views_fix_jumbo_build.patch +fix_windows_build.patch diff --git a/patches/chromium/blink_local_frame.patch b/patches/chromium/blink_local_frame.patch index 8e3bc738becd..c324295ae6ed 100644 --- a/patches/chromium/blink_local_frame.patch +++ b/patches/chromium/blink_local_frame.patch @@ -14,7 +14,7 @@ when there is code doing that. This patch reverts the change to fix the crash in Electron. diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc -index 1dc588e0683232fd40fea4fd4b9d4869ccacfaac..66107801f2a4ceddca509fc3737c750d4a798fbf 100644 +index af0db8b9f5b93b51d6d0edb100d551a78a55ae4d..bab05e53d7c87547916b456bf55bc497c322a042 100644 --- a/third_party/blink/renderer/core/frame/local_frame.cc +++ b/third_party/blink/renderer/core/frame/local_frame.cc @@ -338,10 +338,6 @@ void LocalFrame::DetachImpl(FrameDetachType type) { diff --git a/patches/chromium/blink_world_context.patch b/patches/chromium/blink_world_context.patch index 84c5208d4d9d..cf53b536b71e 100644 --- a/patches/chromium/blink_world_context.patch +++ b/patches/chromium/blink_world_context.patch @@ -37,7 +37,7 @@ index 0fccae4bfe95944bd203240524f358d8ea97f654..107593a056ab68b4e4aa1cd172c35334 return BindingSecurity::ShouldAllowAccessToFrame( CurrentDOMWindow(V8PerIsolateData::MainThreadIsolate()), diff --git a/third_party/blink/renderer/core/frame/web_local_frame_impl.h b/third_party/blink/renderer/core/frame/web_local_frame_impl.h -index 9fbb94efc829928a1b1e284d529dd5562619dc20..0a0904ab66d55753252ccf484c03c07c8dac002b 100644 +index 34dae0a5417921a9caca53bfb83c26a37029303a..a68c19ef62ecdbe9d24de5a367ff21744332acc7 100644 --- a/third_party/blink/renderer/core/frame/web_local_frame_impl.h +++ b/third_party/blink/renderer/core/frame/web_local_frame_impl.h @@ -150,6 +150,8 @@ class CORE_EXPORT WebLocalFrameImpl final diff --git a/patches/chromium/build_win_disable_zc_twophase.patch b/patches/chromium/build_win_disable_zc_twophase.patch index b1d3ad8ab9b1..4fd433a7c411 100644 --- a/patches/chromium/build_win_disable_zc_twophase.patch +++ b/patches/chromium/build_win_disable_zc_twophase.patch @@ -8,7 +8,7 @@ Windows. This is to workaround the bug in crbug.com/969698#c10 until fixes have landed in upstream. diff --git a/build/config/win/BUILD.gn b/build/config/win/BUILD.gn -index edb193a5f3ac04b1ea017d3744a5ac1383fc055b..459368d9885f26f80c6bbef452a3be0706cb7c13 100644 +index a3a164b41b45381061c7fceb7d7ec1fdb4907792..8de0cb6a8d1987f84aaca5c3bb30ead0a2019bef 100644 --- a/build/config/win/BUILD.gn +++ b/build/config/win/BUILD.gn @@ -2,6 +2,7 @@ diff --git a/patches/chromium/can_create_window.patch b/patches/chromium/can_create_window.patch index 824e6d8457d0..8dcee6bd866b 100644 --- a/patches/chromium/can_create_window.patch +++ b/patches/chromium/can_create_window.patch @@ -5,10 +5,10 @@ Subject: can_create_window.patch diff --git a/content/browser/frame_host/render_frame_host_impl.cc b/content/browser/frame_host/render_frame_host_impl.cc -index bfcb977fbf2400e4ae8c7ea0b69d2b733ed410dc..be064ded7bfa3f96b5230e5bf00f68a0a8f618c2 100644 +index d5845d0263477b01ddf1e8bf5075e1a813751360..3d0bb0760b222eb3dd916ec032179fec62b3e6cc 100644 --- a/content/browser/frame_host/render_frame_host_impl.cc +++ b/content/browser/frame_host/render_frame_host_impl.cc -@@ -3985,6 +3985,7 @@ void RenderFrameHostImpl::CreateNewWindow( +@@ -4023,6 +4023,7 @@ void RenderFrameHostImpl::CreateNewWindow( last_committed_origin_, params->window_container_type, params->target_url, params->referrer.To(), params->frame_name, params->disposition, *params->features, @@ -32,10 +32,10 @@ index 94b48f4a88df48f51adff20bc7954b0989e5ae05..a8eb7ba81afd2c8fb87544fb70a8ef86 // Operation result when the renderer asks the browser to create a new window. diff --git a/content/public/browser/content_browser_client.cc b/content/public/browser/content_browser_client.cc -index 6d2b19d1b65496425e0850d8c224b4bf9eefa567..df6f9848ba8ae1e8e7c6e5415b3a4c2efaf6f055 100644 +index 64e7acba1a5fb12323e5e8da90b544b6bbad1802..8301dbc5f4f7c4186fa5f25de34885beec28c7c8 100644 --- a/content/public/browser/content_browser_client.cc +++ b/content/public/browser/content_browser_client.cc -@@ -493,6 +493,8 @@ bool ContentBrowserClient::CanCreateWindow( +@@ -498,6 +498,8 @@ bool ContentBrowserClient::CanCreateWindow( const std::string& frame_name, WindowOpenDisposition disposition, const blink::mojom::WindowFeatures& features, @@ -45,10 +45,10 @@ index 6d2b19d1b65496425e0850d8c224b4bf9eefa567..df6f9848ba8ae1e8e7c6e5415b3a4c2e bool opener_suppressed, bool* no_javascript_access) { diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h -index a9131e72beefd3fd706640d5eeb82646a7ffe65d..7578110f13b23e9585a181bba3e73a3996f60faf 100644 +index 84a8e2fcf0e55bb9582a277f4ff2f76739a6a7ad..109d3166e85a28978bc0bf1f8f698537b1831699 100644 --- a/content/public/browser/content_browser_client.h +++ b/content/public/browser/content_browser_client.h -@@ -179,6 +179,7 @@ class RenderFrameHost; +@@ -178,6 +178,7 @@ class RenderFrameHost; class RenderProcessHost; class RenderViewHost; class ResourceContext; @@ -56,7 +56,7 @@ index a9131e72beefd3fd706640d5eeb82646a7ffe65d..7578110f13b23e9585a181bba3e73a39 class SerialDelegate; class SiteInstance; class SpeechRecognitionManagerDelegate; -@@ -779,6 +780,8 @@ class CONTENT_EXPORT ContentBrowserClient { +@@ -783,6 +784,8 @@ class CONTENT_EXPORT ContentBrowserClient { const std::string& frame_name, WindowOpenDisposition disposition, const blink::mojom::WindowFeatures& features, @@ -66,7 +66,7 @@ index a9131e72beefd3fd706640d5eeb82646a7ffe65d..7578110f13b23e9585a181bba3e73a39 bool opener_suppressed, bool* no_javascript_access); diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc -index f14d1f7fe20e81b9e488f787db00cd114cce16a7..94bfcf7ae25f6f5c2d1fdf93b96350bd229045e3 100644 +index 4da7798e01aca97295042ce21fb8bffb602cf528..afd19c939fe8ee369afa1a85bd0ccefc9e084177 100644 --- a/content/renderer/render_view_impl.cc +++ b/content/renderer/render_view_impl.cc @@ -73,6 +73,7 @@ @@ -77,7 +77,7 @@ index f14d1f7fe20e81b9e488f787db00cd114cce16a7..94bfcf7ae25f6f5c2d1fdf93b96350bd #include "content/renderer/media/audio/audio_device_factory.h" #include "content/renderer/media/webrtc/peer_connection_dependency_factory.h" #include "content/renderer/media/webrtc/rtc_peer_connection_handler.h" -@@ -1325,6 +1326,8 @@ WebView* RenderViewImpl::CreateView( +@@ -1324,6 +1325,8 @@ WebView* RenderViewImpl::CreateView( } params->features = ConvertWebWindowFeaturesToMojoWindowFeatures(features); diff --git a/patches/chromium/content_browser_main_loop.patch b/patches/chromium/content_browser_main_loop.patch index 6b8a01c87237..ba6ac74f7175 100644 --- a/patches/chromium/content_browser_main_loop.patch +++ b/patches/chromium/content_browser_main_loop.patch @@ -8,7 +8,7 @@ run before shutdown. This is required to cleanup WebContents asynchronously in atom::CommonWebContentsDelegate::ResetManageWebContents. diff --git a/content/browser/browser_main_loop.cc b/content/browser/browser_main_loop.cc -index 28521684fd37dca5ea4251c166be33470b5ae0d8..cd5f3ef6b679899cd28068e39715d5c4847595cc 100644 +index 4b4a82b2f42deba33b82750fca85aa6c6258f36e..367cfbe389907c2f76b348be2f5c503fd6193541 100644 --- a/content/browser/browser_main_loop.cc +++ b/content/browser/browser_main_loop.cc @@ -1505,7 +1505,7 @@ void BrowserMainLoop::MainMessageLoopRun() { diff --git a/patches/chromium/dcheck.patch b/patches/chromium/dcheck.patch index 7e262d7ad709..2793ab28c615 100644 --- a/patches/chromium/dcheck.patch +++ b/patches/chromium/dcheck.patch @@ -17,10 +17,10 @@ only one or two specific checks fail. Then it's better to simply comment out the failing checks and allow the rest of the target to have them enabled. diff --git a/content/browser/frame_host/navigation_controller_impl.cc b/content/browser/frame_host/navigation_controller_impl.cc -index c8c28a5c1677b353e698b7fea91653fe08ebb77b..b5730d792e58ad090bb21a922fe828a53535bc4a 100644 +index cc20a064d1d2f12bec488e0b44acf4db3be54c0f..752033bb32ceaba06c3b543acbf85ee6e7a8651f 100644 --- a/content/browser/frame_host/navigation_controller_impl.cc +++ b/content/browser/frame_host/navigation_controller_impl.cc -@@ -1212,8 +1212,10 @@ NavigationType NavigationControllerImpl::ClassifyNavigation( +@@ -1213,8 +1213,10 @@ NavigationType NavigationControllerImpl::ClassifyNavigation( return NAVIGATION_TYPE_NEW_SUBFRAME; } @@ -33,7 +33,7 @@ index c8c28a5c1677b353e698b7fea91653fe08ebb77b..b5730d792e58ad090bb21a922fe828a5 if (rfh->GetParent()) { // All manual subframes would be did_create_new_entry and handled above, so -@@ -1465,7 +1467,10 @@ void NavigationControllerImpl::RendererDidNavigateToNewPage( +@@ -1466,7 +1468,10 @@ void NavigationControllerImpl::RendererDidNavigateToNewPage( new_entry->GetFavicon() = GetLastCommittedEntry()->GetFavicon(); } diff --git a/patches/chromium/disable_color_correct_rendering.patch b/patches/chromium/disable_color_correct_rendering.patch index 67332ec6c4b5..2ff48374f848 100644 --- a/patches/chromium/disable_color_correct_rendering.patch +++ b/patches/chromium/disable_color_correct_rendering.patch @@ -20,7 +20,7 @@ to deal with color spaces. That is being tracked at https://crbug.com/634542 and https://crbug.com/711107. diff --git a/cc/trees/layer_tree_settings.h b/cc/trees/layer_tree_settings.h -index 18d99c39b5ec1ba5f8fdd808139f0b5a2de53f60..f03a6f00b9dcc044ef151466f6e16c983f73ce69 100644 +index 2c4a9f30c8f56e4f29dd48d247d7a7085ba4656f..ee72f68397993558f9c51e4e5417f21cb513547b 100644 --- a/cc/trees/layer_tree_settings.h +++ b/cc/trees/layer_tree_settings.h @@ -95,6 +95,8 @@ class CC_EXPORT LayerTreeSettings { @@ -66,10 +66,10 @@ index f17aa1fa451f1b99d7f083e07edd49b11f7639e4..09f7c5d6a92d89c199b296771a8ff60c !command_line->HasSwitch(switches::kUIDisablePartialSwap); #if defined(OS_MACOSX) diff --git a/components/viz/service/display/gl_renderer.cc b/components/viz/service/display/gl_renderer.cc -index 8c67161c4a4b970fb9393a9a73a239b5aecb95cf..99ea5a9832aca67030e92e4761209872190388eb 100644 +index 6492ff14fc09cbc42a96a6af3d2a243a8c0a7b06..1b6bab010c6db50a0ef68de5aa0a086d33a75434 100644 --- a/components/viz/service/display/gl_renderer.cc +++ b/components/viz/service/display/gl_renderer.cc -@@ -81,6 +81,9 @@ +@@ -83,6 +83,9 @@ using gpu::gles2::GLES2Interface; @@ -79,7 +79,7 @@ index 8c67161c4a4b970fb9393a9a73a239b5aecb95cf..99ea5a9832aca67030e92e4761209872 namespace viz { namespace { -@@ -557,8 +560,9 @@ void GLRenderer::DoDrawQuad(const DrawQuad* quad, +@@ -561,8 +564,9 @@ void GLRenderer::DoDrawQuad(const DrawQuad* quad, void GLRenderer::DrawDebugBorderQuad(const DebugBorderDrawQuad* quad) { SetBlendEnabled(quad->ShouldDrawWithBlending()); @@ -91,7 +91,7 @@ index 8c67161c4a4b970fb9393a9a73a239b5aecb95cf..99ea5a9832aca67030e92e4761209872 // Use the full quad_rect for debug quads to not move the edges based on // partial swaps. -@@ -1455,7 +1459,8 @@ void GLRenderer::ChooseRPDQProgram(DrawRenderPassDrawQuadParams* params, +@@ -1416,7 +1420,8 @@ void GLRenderer::ChooseRPDQProgram(DrawRenderPassDrawQuadParams* params, params->use_color_matrix, tint_gl_composited_content_, params->apply_shader_based_rounded_corner && ShouldApplyRoundedCorner(params->quad)), @@ -101,7 +101,7 @@ index 8c67161c4a4b970fb9393a9a73a239b5aecb95cf..99ea5a9832aca67030e92e4761209872 } void GLRenderer::UpdateRPDQUniforms(DrawRenderPassDrawQuadParams* params) { -@@ -1926,8 +1931,8 @@ void GLRenderer::DrawSolidColorQuad(const SolidColorDrawQuad* quad, +@@ -1887,8 +1892,8 @@ void GLRenderer::DrawSolidColorQuad(const SolidColorDrawQuad* quad, SetUseProgram(ProgramKey::SolidColor(use_aa ? USE_AA : NO_AA, tint_gl_composited_content_, ShouldApplyRoundedCorner(quad)), @@ -112,7 +112,7 @@ index 8c67161c4a4b970fb9393a9a73a239b5aecb95cf..99ea5a9832aca67030e92e4761209872 SetShaderColor(color, opacity); if (current_program_->rounded_corner_rect_location() != -1) { SetShaderRoundedCorner( -@@ -2082,8 +2087,8 @@ void GLRenderer::DrawContentQuadAA(const ContentDrawQuadBase* quad, +@@ -2043,8 +2048,8 @@ void GLRenderer::DrawContentQuadAA(const ContentDrawQuadBase* quad, : NON_PREMULTIPLIED_ALPHA, false, false, tint_gl_composited_content_, ShouldApplyRoundedCorner(quad)), @@ -123,7 +123,7 @@ index 8c67161c4a4b970fb9393a9a73a239b5aecb95cf..99ea5a9832aca67030e92e4761209872 if (current_program_->tint_color_matrix_location() != -1) { auto matrix = cc::DebugColors::TintCompositedContentColorTransformMatrix(); -@@ -2179,8 +2184,8 @@ void GLRenderer::DrawContentQuadNoAA(const ContentDrawQuadBase* quad, +@@ -2140,8 +2145,8 @@ void GLRenderer::DrawContentQuadNoAA(const ContentDrawQuadBase* quad, !quad->ShouldDrawWithBlending(), has_tex_clamp_rect, tint_gl_composited_content_, ShouldApplyRoundedCorner(quad)), @@ -134,7 +134,7 @@ index 8c67161c4a4b970fb9393a9a73a239b5aecb95cf..99ea5a9832aca67030e92e4761209872 if (current_program_->tint_color_matrix_location() != -1) { auto matrix = cc::DebugColors::TintCompositedContentColorTransformMatrix(); -@@ -2283,7 +2288,7 @@ void GLRenderer::DrawYUVVideoQuad(const YUVVideoDrawQuad* quad, +@@ -2244,7 +2249,7 @@ void GLRenderer::DrawYUVVideoQuad(const YUVVideoDrawQuad* quad, DCHECK_NE(src_color_space, src_color_space.GetAsFullRangeRGB()); gfx::ColorSpace dst_color_space = @@ -143,7 +143,7 @@ index 8c67161c4a4b970fb9393a9a73a239b5aecb95cf..99ea5a9832aca67030e92e4761209872 // Force sRGB output on Windows for overlay candidate video quads to match // DirectComposition behavior in case these switch between overlays and // compositing. See https://crbug.com/811118 for details. -@@ -2439,8 +2444,8 @@ void GLRenderer::DrawStreamVideoQuad(const StreamVideoDrawQuad* quad, +@@ -2400,8 +2405,8 @@ void GLRenderer::DrawStreamVideoQuad(const StreamVideoDrawQuad* quad, SetUseProgram(ProgramKey::VideoStream(tex_coord_precision, ShouldApplyRoundedCorner(quad)), @@ -154,7 +154,7 @@ index 8c67161c4a4b970fb9393a9a73a239b5aecb95cf..99ea5a9832aca67030e92e4761209872 DCHECK_EQ(GL_TEXTURE0, GetActiveTextureUnit(gl_)); gl_->BindTexture(GL_TEXTURE_EXTERNAL_OES, lock.texture_id()); -@@ -2497,8 +2502,8 @@ void GLRenderer::FlushTextureQuadCache(BoundGeometry flush_binding) { +@@ -2458,8 +2463,8 @@ void GLRenderer::FlushTextureQuadCache(BoundGeometry flush_binding) { draw_cache_.nearest_neighbor ? GL_NEAREST : GL_LINEAR); // Bind the program to the GL state. @@ -165,7 +165,7 @@ index 8c67161c4a4b970fb9393a9a73a239b5aecb95cf..99ea5a9832aca67030e92e4761209872 if (current_program_->rounded_corner_rect_location() != -1) { SetShaderRoundedCorner( -@@ -3195,7 +3200,9 @@ void GLRenderer::PrepareGeometry(BoundGeometry binding) { +@@ -3156,7 +3161,9 @@ void GLRenderer::PrepareGeometry(BoundGeometry binding) { void GLRenderer::SetUseProgram(const ProgramKey& program_key_no_color, const gfx::ColorSpace& src_color_space, const gfx::ColorSpace& dst_color_space) { @@ -176,7 +176,7 @@ index 8c67161c4a4b970fb9393a9a73a239b5aecb95cf..99ea5a9832aca67030e92e4761209872 gfx::ColorSpace adjusted_color_space = src_color_space; float sdr_white_level = current_frame()->sdr_white_level; -@@ -3574,7 +3581,7 @@ void GLRenderer::CopyRenderPassDrawQuadToOverlayResource( +@@ -3535,7 +3542,7 @@ void GLRenderer::CopyRenderPassDrawQuadToOverlayResource( *overlay_texture = FindOrCreateOverlayTexture( params.quad->render_pass_id, iosurface_width, iosurface_height, @@ -185,7 +185,7 @@ index 8c67161c4a4b970fb9393a9a73a239b5aecb95cf..99ea5a9832aca67030e92e4761209872 *new_bounds = gfx::RectF(updated_dst_rect.origin(), gfx::SizeF((*overlay_texture)->texture.size())); -@@ -3792,8 +3799,8 @@ void GLRenderer::FlushOverdrawFeedback(const gfx::Rect& output_rect) { +@@ -3753,8 +3760,8 @@ void GLRenderer::FlushOverdrawFeedback(const gfx::Rect& output_rect) { PrepareGeometry(SHARED_BINDING); @@ -196,17 +196,17 @@ index 8c67161c4a4b970fb9393a9a73a239b5aecb95cf..99ea5a9832aca67030e92e4761209872 gfx::Transform render_matrix; render_matrix.Translate(0.5 * output_rect.width() + output_rect.x(), -@@ -3953,3 +3960,5 @@ gfx::Size GLRenderer::GetRenderPassBackingPixelSize( +@@ -3914,3 +3921,5 @@ gfx::Size GLRenderer::GetRenderPassBackingPixelSize( } } // namespace viz + +#undef PATCH_CS diff --git a/content/browser/gpu/gpu_process_host.cc b/content/browser/gpu/gpu_process_host.cc -index d38084e36ab82c3c91f7ab5504557707eedbb2fc..ede28387d3fa868c61e291202ab9e8f95f7aa870 100644 +index 6eacfaffb8a0bc938d1f9b8c098b46dfb4b11869..0be82fd07bcef72a613219e1f664665a1beb959d 100644 --- a/content/browser/gpu/gpu_process_host.cc +++ b/content/browser/gpu/gpu_process_host.cc -@@ -194,6 +194,7 @@ GpuTerminationStatus ConvertToGpuTerminationStatus( +@@ -197,6 +197,7 @@ GpuTerminationStatus ConvertToGpuTerminationStatus( // Command-line switches to propagate to the GPU process. static const char* const kSwitchNames[] = { @@ -215,10 +215,10 @@ index d38084e36ab82c3c91f7ab5504557707eedbb2fc..ede28387d3fa868c61e291202ab9e8f9 service_manager::switches::kGpuSandboxAllowSysVShm, service_manager::switches::kGpuSandboxFailuresFatal, diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc -index 2aaa6b123b917b9b819aa2a2d3fb27179a57a8ec..cfbb71f8ab6a192e49093cc214589ccb40f646b1 100644 +index b14ed42882fb7feffdb1c481f8d02007d38f134c..b7ab31f636044255e2bc7a1b692611c8ec85d316 100644 --- a/content/browser/renderer_host/render_process_host_impl.cc +++ b/content/browser/renderer_host/render_process_host_impl.cc -@@ -219,6 +219,7 @@ +@@ -221,6 +221,7 @@ #include "ui/base/ui_base_switches.h" #include "ui/base/ui_base_switches_util.h" #include "ui/display/display_switches.h" @@ -226,7 +226,7 @@ index 2aaa6b123b917b9b819aa2a2d3fb27179a57a8ec..cfbb71f8ab6a192e49093cc214589ccb #include "ui/gl/gl_switches.h" #include "ui/native_theme/native_theme_features.h" #include "url/url_constants.h" -@@ -2910,6 +2911,7 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer( +@@ -2945,6 +2946,7 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer( // Propagate the following switches to the renderer command line (along // with any associated values) if present in the browser command line. static const char* const kSwitchNames[] = { @@ -235,10 +235,10 @@ index 2aaa6b123b917b9b819aa2a2d3fb27179a57a8ec..cfbb71f8ab6a192e49093cc214589ccb network::switches::kExplicitlyAllowedPorts, service_manager::switches::kDisableInProcessStackTraces, diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc -index 928f3d91c3750482e0da1fa885c1e03fdd3285b6..42363587fdd1ebadf7042d2e1dde7442d86a5e4a 100644 +index 33bb95b2f08c7cb0483b966f1564926efbf5c487..b5debb36fa35f98d871ba9e1f8a01c15cf0d0aee 100644 --- a/content/renderer/render_widget.cc +++ b/content/renderer/render_widget.cc -@@ -2863,6 +2863,9 @@ cc::LayerTreeSettings RenderWidget::GenerateLayerTreeSettings( +@@ -2888,6 +2888,9 @@ cc::LayerTreeSettings RenderWidget::GenerateLayerTreeSettings( settings.main_frame_before_activation_enabled = cmd.HasSwitch(cc::switches::kEnableMainFrameBeforeActivation); diff --git a/patches/chromium/disable_hidden.patch b/patches/chromium/disable_hidden.patch index a8fcf1323b02..a4200336ca24 100644 --- a/patches/chromium/disable_hidden.patch +++ b/patches/chromium/disable_hidden.patch @@ -5,10 +5,10 @@ Subject: disable_hidden.patch diff --git a/content/browser/renderer_host/render_widget_host_impl.cc b/content/browser/renderer_host/render_widget_host_impl.cc -index 3f9d2f2a42106e3f4ab7539256021a0446e17a2a..ebe6315a98f9654d2cbc54c09f79a17f18e267a7 100644 +index a8f29674dd39a7df74af53cccd630b87ab6de1ef..bb537f4114f17a2a01b97d667ee1ab41ac9bbb7f 100644 --- a/content/browser/renderer_host/render_widget_host_impl.cc +++ b/content/browser/renderer_host/render_widget_host_impl.cc -@@ -675,6 +675,9 @@ void RenderWidgetHostImpl::WasHidden() { +@@ -683,6 +683,9 @@ void RenderWidgetHostImpl::WasHidden() { if (is_hidden_) return; @@ -19,10 +19,10 @@ index 3f9d2f2a42106e3f4ab7539256021a0446e17a2a..ebe6315a98f9654d2cbc54c09f79a17f TRACE_EVENT0("renderer_host", "RenderWidgetHostImpl::WasHidden"); diff --git a/content/browser/renderer_host/render_widget_host_impl.h b/content/browser/renderer_host/render_widget_host_impl.h -index 58df8dfdd530a760fa8e9ecc9ef3901f444b255f..9ed9ebbbd01ff9d23b6cf0bd5cff1b19b9856077 100644 +index 9fdfbce61531bb213007a0aabaa9ed84acb079bb..c07e8949f90953b39719d1d545a40b8df8dcb024 100644 --- a/content/browser/renderer_host/render_widget_host_impl.h +++ b/content/browser/renderer_host/render_widget_host_impl.h -@@ -185,6 +185,9 @@ class CONTENT_EXPORT RenderWidgetHostImpl +@@ -200,6 +200,9 @@ class CONTENT_EXPORT RenderWidgetHostImpl // RenderWidgetHostImpl. static RenderWidgetHostImpl* From(RenderWidgetHost* rwh); diff --git a/patches/chromium/disable_user_gesture_requirement_for_beforeunload_dialogs.patch b/patches/chromium/disable_user_gesture_requirement_for_beforeunload_dialogs.patch index 5ee92d0c4b3e..35062b60d02e 100644 --- a/patches/chromium/disable_user_gesture_requirement_for_beforeunload_dialogs.patch +++ b/patches/chromium/disable_user_gesture_requirement_for_beforeunload_dialogs.patch @@ -6,10 +6,10 @@ Subject: disable_user_gesture_requirement_for_beforeunload_dialogs.patch See https://github.com/electron/electron/issues/10754 diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink/renderer/core/dom/document.cc -index f53c4cbadd759c4a0ba411c6a35c71ff269836a7..d643b0607ff9133b97f912c7f0a4e66ac2c01855 100644 +index 3165488dd7d5aadc7aff9c9639f67167d8e8913b..cd5e054f351291ebc16d4c62cb2848fd3d04695c 100644 --- a/third_party/blink/renderer/core/dom/document.cc +++ b/third_party/blink/renderer/core/dom/document.cc -@@ -4181,7 +4181,9 @@ bool Document::DispatchBeforeUnloadEvent(ChromeClient* chrome_client, +@@ -4180,7 +4180,9 @@ bool Document::DispatchBeforeUnloadEvent(ChromeClient* chrome_client, "frame that never had a user gesture since its load. " "https://www.chromestatus.com/feature/5082396709879808"; Intervention::GenerateReport(frame_, "BeforeUnloadNoGesture", message); diff --git a/patches/chromium/exclude-a-few-test-files-from-build.patch b/patches/chromium/exclude-a-few-test-files-from-build.patch index aa29f453ccd9..02f09ac8705b 100644 --- a/patches/chromium/exclude-a-few-test-files-from-build.patch +++ b/patches/chromium/exclude-a-few-test-files-from-build.patch @@ -7,10 +7,10 @@ Compilation of those files fails with the Chromium 68. Remove the patch during the Chromium 69 upgrade. diff --git a/third_party/blink/renderer/platform/BUILD.gn b/third_party/blink/renderer/platform/BUILD.gn -index 7378cf2fc726289d0bdfafef41f190042e95072b..530ee5729291b5a6285ab22a4efaac4dad2b9766 100644 +index f72614d6e36ceac938721a0cae2e94928e79f866..725bc3a05554d6fbf9ce1c089058c73bb8ceff05 100644 --- a/third_party/blink/renderer/platform/BUILD.gn +++ b/third_party/blink/renderer/platform/BUILD.gn -@@ -1774,7 +1774,7 @@ jumbo_source_set("blink_platform_unittests_sources") { +@@ -1778,7 +1778,7 @@ jumbo_source_set("blink_platform_unittests_sources") { "graphics/paint/drawing_display_item_test.cc", "graphics/paint/drawing_recorder_test.cc", "graphics/paint/float_clip_rect_test.cc", diff --git a/patches/chromium/expose_setuseragent_on_networkcontext.patch b/patches/chromium/expose_setuseragent_on_networkcontext.patch index 134a5336975c..332ec71c1d98 100644 --- a/patches/chromium/expose_setuseragent_on_networkcontext.patch +++ b/patches/chromium/expose_setuseragent_on_networkcontext.patch @@ -33,10 +33,10 @@ index 0ccfe130f00ec3b6c75cd8ee04d5a2777e1fd00c..653829457d58bf92057cc36aa8a28970 DISALLOW_COPY_AND_ASSIGN(StaticHttpUserAgentSettings); }; diff --git a/services/network/network_context.cc b/services/network/network_context.cc -index c36657fc18c705c7224e6c57c8c50b7f641060fa..9a748d3a0cb7c8c6fd730404690c7c12b0974262 100644 +index 03d916c2355409557b1f754fc31eaea945409d13..e3bbad948821a57930b6dd529ebcb581091fab99 100644 --- a/services/network/network_context.cc +++ b/services/network/network_context.cc -@@ -917,6 +917,13 @@ void NetworkContext::SetNetworkConditions( +@@ -924,6 +924,13 @@ void NetworkContext::SetNetworkConditions( std::move(network_conditions)); } @@ -63,10 +63,10 @@ index 581196b6d4a0054bc213e4eada1a97a8e0453c5f..96fe00e951771ac0017ee4e60a545a99 void SetEnableReferrers(bool enable_referrers) override; #if defined(OS_CHROMEOS) diff --git a/services/network/public/mojom/network_context.mojom b/services/network/public/mojom/network_context.mojom -index 6b7571dbf1464284ce30953a27c1ac2099f1872f..955e945c5f0f12a739d0cccaef41a241ea5557f8 100644 +index d5986452c813579d96a90817b468922db5b5a91e..2104d5413a89a9345784040b761de296a595fb8b 100644 --- a/services/network/public/mojom/network_context.mojom +++ b/services/network/public/mojom/network_context.mojom -@@ -889,6 +889,9 @@ interface NetworkContext { +@@ -886,6 +886,9 @@ interface NetworkContext { SetNetworkConditions(mojo_base.mojom.UnguessableToken throttling_profile_id, NetworkConditions? conditions); diff --git a/patches/chromium/fix_windows_build.patch b/patches/chromium/fix_windows_build.patch new file mode 100644 index 000000000000..8e3ee120f112 --- /dev/null +++ b/patches/chromium/fix_windows_build.patch @@ -0,0 +1,58 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Jeremy Apthorp +Date: Fri, 20 Sep 2019 22:56:34 +0000 +Subject: fix windows build + +Upstream: https://chromium-review.googlesource.com/c/chromium/src/+/1817205 + +diff --git a/content/browser/frame_host/back_forward_cache_impl.cc b/content/browser/frame_host/back_forward_cache_impl.cc +index cbd6bc1bf77519dd155b911e2a23d599814c37a4..ccf138a0ba2bf18acf6a0b3d4406acf0819cb134 100644 +--- a/content/browser/frame_host/back_forward_cache_impl.cc ++++ b/content/browser/frame_host/back_forward_cache_impl.cc +@@ -253,8 +253,9 @@ void BackForwardCacheImpl::PostTaskToDestroyEvictedFrames() { + weak_factory_.GetWeakPtr())); + } + +-void BackForwardCacheImpl::DisableForRenderFrameHost(GlobalFrameRoutingId id, +- std::string_view reason) { ++void BackForwardCacheImpl::DisableForRenderFrameHost( ++ GlobalFrameRoutingId id, ++ const std::string& reason) { + DCHECK_CURRENTLY_ON(BrowserThread::UI); + auto* rfh = RenderFrameHostImpl::FromID(id); + if (rfh) +diff --git a/content/browser/frame_host/back_forward_cache_impl.h b/content/browser/frame_host/back_forward_cache_impl.h +index e81ffc453710ee117bbc7080c3930ad6e1e5ff95..19f4b59c0efac6fc4b9306468b7160f99c4e3375 100644 +--- a/content/browser/frame_host/back_forward_cache_impl.h ++++ b/content/browser/frame_host/back_forward_cache_impl.h +@@ -149,7 +149,7 @@ class CONTENT_EXPORT BackForwardCacheImpl : public BackForwardCache { + + // BackForwardCache: + void DisableForRenderFrameHost(GlobalFrameRoutingId id, +- std::string_view reason) override; ++ const std::string& reason) override; + + private: + // Destroys all evicted frames in the BackForwardCache. +diff --git a/content/public/browser/back_forward_cache.h b/content/public/browser/back_forward_cache.h +index f7abe8bec74130587b09d66b37f04a7d28ab3705..7e17c4afed0d265fb618dca5cc1bc12b28165ec4 100644 +--- a/content/public/browser/back_forward_cache.h ++++ b/content/public/browser/back_forward_cache.h +@@ -5,8 +5,6 @@ + #ifndef CONTENT_PUBLIC_BROWSER_BACK_FORWARD_CACHE_H_ + #define CONTENT_PUBLIC_BROWSER_BACK_FORWARD_CACHE_H_ + +-#include +- + #include "content/common/content_export.h" + #include "content/public/browser/global_routing_id.h" + +@@ -43,7 +41,7 @@ class CONTENT_EXPORT BackForwardCache { + // |id|: If no RenderFrameHost can be found for the given id nothing happens. + // |reason|: Free form string to be used in logging and metrics. + virtual void DisableForRenderFrameHost(GlobalFrameRoutingId id, +- std::string_view reason) = 0; ++ const std::string& reason) = 0; + + protected: + BackForwardCache() = default; diff --git a/patches/chromium/frame_host_manager.patch b/patches/chromium/frame_host_manager.patch index 826134a5911d..7de80c149ea3 100644 --- a/patches/chromium/frame_host_manager.patch +++ b/patches/chromium/frame_host_manager.patch @@ -42,13 +42,13 @@ index 906a1ee4ac58b0744a32153bbaafeac4322a60e4..c90f4aead36cbf3767dc5094728963c2 // another SiteInstance for the same site. void RegisterSiteInstance(SiteInstanceImpl* site_instance); diff --git a/content/browser/frame_host/render_frame_host_manager.cc b/content/browser/frame_host/render_frame_host_manager.cc -index c51d888191854be22038380462dce27ea5d51319..ce07eb7a9079a16f59dddf836a9d2b705ce3d5f3 100644 +index 03079e389c51e620350087796f874c9369ebe98b..7cee9bb94a267fa4a0a6c474f46242660ec68a9c 100644 --- a/content/browser/frame_host/render_frame_host_manager.cc +++ b/content/browser/frame_host/render_frame_host_manager.cc @@ -2219,6 +2219,21 @@ bool RenderFrameHostManager::InitRenderView( scoped_refptr RenderFrameHostManager::GetSiteInstanceForNavigationRequest( - const NavigationRequest& request) { + NavigationRequest* request) { + BrowserContext* browser_context = nullptr; + scoped_refptr candidate_site_instance; + if (!GetContentClient()->browser()->CanUseCustomSiteInstance()) { @@ -67,16 +67,16 @@ index c51d888191854be22038380462dce27ea5d51319..ce07eb7a9079a16f59dddf836a9d2b70 SiteInstance* current_site_instance = render_frame_host_->GetSiteInstance(); // All children of MHTML documents must be MHTML documents. They all live in -@@ -2263,6 +2278,59 @@ RenderFrameHostManager::GetSiteInstanceForNavigationRequest( - request.common_params().url); +@@ -2262,6 +2277,59 @@ RenderFrameHostManager::GetSiteInstanceForNavigationRequest( + request->common_params().url); no_renderer_swap_allowed |= - request.from_begin_navigation() && !can_renderer_initiate_transfer; + request->from_begin_navigation() && !can_renderer_initiate_transfer; + + if (!GetContentClient()->browser()->CanUseCustomSiteInstance()) { -+ bool has_navigation_started = request.state() != NavigationRequest::NOT_STARTED; ++ bool has_navigation_started = request->state() != NavigationRequest::NOT_STARTED; + bool has_response_started = -+ (request.state() == NavigationRequest::RESPONSE_STARTED || -+ request.state() == NavigationRequest::FAILED) && ++ (request->state() == NavigationRequest::RESPONSE_STARTED || ++ request->state() == NavigationRequest::FAILED) && + !speculative_render_frame_host_; + // Gives user a chance to choose a custom site instance. + SiteInstance* affinity_site_instance = nullptr; @@ -85,7 +85,7 @@ index c51d888191854be22038380462dce27ea5d51319..ce07eb7a9079a16f59dddf836a9d2b70 + ContentBrowserClient::SiteInstanceForNavigationType siteInstanceType = + GetContentClient()->browser()->ShouldOverrideSiteInstanceForNavigation( + current_frame_host(), speculative_frame_host(), browser_context, -+ request.common_params().url, has_navigation_started, ++ request->common_params().url, has_navigation_started, + has_response_started, &affinity_site_instance); + switch (siteInstanceType) { + case ContentBrowserClient::SiteInstanceForNavigationType:: @@ -94,12 +94,12 @@ index c51d888191854be22038380462dce27ea5d51319..ce07eb7a9079a16f59dddf836a9d2b70 + candidate_site_instance + ? candidate_site_instance + : current_site_instance->CreateRelatedSiteInstance( -+ request.common_params().url); ++ request->common_params().url); + should_register_site_instance = true; + break; + case ContentBrowserClient::SiteInstanceForNavigationType::FORCE_NEW: + overriden_site_instance = current_site_instance->CreateRelatedSiteInstance( -+ request.common_params().url); ++ request->common_params().url); + should_register_site_instance = true; + break; + case ContentBrowserClient::SiteInstanceForNavigationType::FORCE_CURRENT: @@ -127,7 +127,7 @@ index c51d888191854be22038380462dce27ea5d51319..ce07eb7a9079a16f59dddf836a9d2b70 } else { // Subframe navigations will use the current renderer, unless specifically // allowed to swap processes. -@@ -2274,23 +2342,28 @@ RenderFrameHostManager::GetSiteInstanceForNavigationRequest( +@@ -2273,23 +2341,28 @@ RenderFrameHostManager::GetSiteInstanceForNavigationRequest( if (no_renderer_swap_allowed && !should_swap_for_error_isolation) return scoped_refptr(current_site_instance); @@ -144,12 +144,12 @@ index c51d888191854be22038380462dce27ea5d51319..ce07eb7a9079a16f59dddf836a9d2b70 + } scoped_refptr dest_site_instance = GetSiteInstanceForNavigation( - request.common_params().url, request.source_site_instance(), -- request.dest_site_instance(), candidate_site_instance, -+ request.dest_site_instance(), candidate_site_instance.get(), - request.common_params().transition, - request.state() == NavigationRequest::FAILED, - request.GetRestoreType() != RestoreType::NONE, request.is_view_source(), + request->common_params().url, request->source_site_instance(), +- request->dest_site_instance(), candidate_site_instance, ++ request->dest_site_instance(), candidate_site_instance.get(), + request->common_params().transition, + request->state() == NavigationRequest::FAILED, + request->GetRestoreType() != RestoreType::NONE, request->is_view_source(), was_server_redirect); + GetContentClient()->browser()->RegisterPendingSiteInstance( @@ -186,7 +186,7 @@ index 1edb9fd6b0c383f291735dd1a952fcb7b17cc87f..23967f040eb346be265faa2a92562e1f size_t GetRelatedActiveContentsCount() override; bool RequiresDedicatedProcess() override; diff --git a/content/public/browser/content_browser_client.cc b/content/public/browser/content_browser_client.cc -index df6f9848ba8ae1e8e7c6e5415b3a4c2efaf6f055..d032d13c4395fc00ccc548d6241b298965b23d20 100644 +index 8301dbc5f4f7c4186fa5f25de34885beec28c7c8..c7c2c69ae13702f32df34026f7cba2f362f047a3 100644 --- a/content/public/browser/content_browser_client.cc +++ b/content/public/browser/content_browser_client.cc @@ -44,6 +44,21 @@ @@ -212,10 +212,10 @@ index df6f9848ba8ae1e8e7c6e5415b3a4c2efaf6f055..d032d13c4395fc00ccc548d6241b2989 const MainFunctionParams& parameters) { return nullptr; diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h -index 7578110f13b23e9585a181bba3e73a3996f60faf..cbb1eed3af4e8b56c07786a5f35525e5dee629f4 100644 +index 109d3166e85a28978bc0bf1f8f698537b1831699..185b0cfe917ca0ccbb5e20a984162a7f11704881 100644 --- a/content/public/browser/content_browser_client.h +++ b/content/public/browser/content_browser_client.h -@@ -206,8 +206,45 @@ struct WebPreferences; +@@ -205,8 +205,45 @@ struct WebPreferences; // the observer interfaces.) class CONTENT_EXPORT ContentBrowserClient { public: diff --git a/patches/chromium/gritsettings_resource_ids.patch b/patches/chromium/gritsettings_resource_ids.patch index f54b04d242f8..7e2d671f4b97 100644 --- a/patches/chromium/gritsettings_resource_ids.patch +++ b/patches/chromium/gritsettings_resource_ids.patch @@ -6,10 +6,10 @@ Subject: gritsettings_resource_ids.patch Add electron resources file to the list of resource ids generation. diff --git a/tools/gritsettings/resource_ids b/tools/gritsettings/resource_ids -index a4c39b1f6b141056b35ff8b7d9283863d057d0a2..b3a6bb5c948d7ebe6d9746e9210d97344c8a5c9e 100644 +index 8849b94cebc5bbdf62382833c9d51795bca882c0..8b64628d9dcbe78279d6a0596683d3880ea08892 100644 --- a/tools/gritsettings/resource_ids +++ b/tools/gritsettings/resource_ids -@@ -465,6 +465,11 @@ +@@ -448,6 +448,11 @@ "includes": [28880], }, diff --git a/patches/chromium/libgtkui_export.patch b/patches/chromium/libgtkui_export.patch index 900efbe07bef..3cbf97097f3b 100644 --- a/patches/chromium/libgtkui_export.patch +++ b/patches/chromium/libgtkui_export.patch @@ -6,7 +6,7 @@ Subject: libgtkui_export.patch Export libgtkui symbols for the GN component build. diff --git a/chrome/browser/ui/libgtkui/gtk_util.h b/chrome/browser/ui/libgtkui/gtk_util.h -index d75427b5d5a0aca237cacc9654a8298e26285a81..8608d083a3eb6fe6b22e059cd68834ec4ded0458 100644 +index e0ab34ca088e65b97ea6ce19c765e514acda760f..8c742d93ffabbd9795f9ba021b23c972e66eaec3 100644 --- a/chrome/browser/ui/libgtkui/gtk_util.h +++ b/chrome/browser/ui/libgtkui/gtk_util.h @@ -11,6 +11,7 @@ @@ -15,9 +15,9 @@ index d75427b5d5a0aca237cacc9654a8298e26285a81..8608d083a3eb6fe6b22e059cd68834ec #include "ui/views/window/frame_buttons.h" +#include "chrome/browser/ui/libgtkui/libgtkui_export.h" - namespace aura { - class Window; -@@ -33,10 +34,10 @@ namespace libgtkui { + typedef union _GdkEvent GdkEvent; + +@@ -36,10 +37,10 @@ namespace libgtkui { extern const color_utils::HSL kDefaultTintFrameIncognito; @@ -30,7 +30,7 @@ index d75427b5d5a0aca237cacc9654a8298e26285a81..8608d083a3eb6fe6b22e059cd68834ec GdkModifierType GetGdkModifierForAccelerator( const ui::Accelerator& accelerator); -@@ -49,7 +50,7 @@ void TurnButtonBlue(GtkWidget* button); +@@ -52,7 +53,7 @@ void TurnButtonBlue(GtkWidget* button); // Sets |dialog| as transient for |parent|, which will keep it on top and center // it above |parent|. Do nothing if |parent| is nullptr. @@ -39,7 +39,7 @@ index d75427b5d5a0aca237cacc9654a8298e26285a81..8608d083a3eb6fe6b22e059cd68834ec // Gets the transient parent aura window for |dialog|. aura::Window* GetAuraTransientParent(GtkWidget* dialog); -@@ -155,7 +156,7 @@ void ApplyCssToContext(GtkStyleContext* context, const std::string& css); +@@ -158,7 +159,7 @@ void ApplyCssToContext(GtkStyleContext* context, const std::string& css); // Get the 'color' property from the style context created by // GetStyleContextFromCss(|css_selector|). @@ -48,7 +48,7 @@ index d75427b5d5a0aca237cacc9654a8298e26285a81..8608d083a3eb6fe6b22e059cd68834ec ScopedCssProvider GetCssProvider(const std::string& css); -@@ -168,7 +169,7 @@ void RenderBackground(const gfx::Size& size, +@@ -171,7 +172,7 @@ void RenderBackground(const gfx::Size& size, // Renders a background from the style context created by // GetStyleContextFromCss(|css_selector|) into a 24x24 bitmap and // returns the average color. diff --git a/patches/chromium/mas_no_private_api.patch b/patches/chromium/mas_no_private_api.patch index 2910656ace42..f9e3f0aa7130 100644 --- a/patches/chromium/mas_no_private_api.patch +++ b/patches/chromium/mas_no_private_api.patch @@ -38,7 +38,7 @@ index 743d1364bcd13e24ecbe5ced730161d15b8c3e93..a7e81072194c00baa0aa3159a6bfe374 // is concerned. @property(nonatomic, readonly) NSString* subrole; diff --git a/content/browser/accessibility/browser_accessibility_cocoa.mm b/content/browser/accessibility/browser_accessibility_cocoa.mm -index 62f17dcca78fc7d9f851456120f7ddde09208dbe..95ec2b203d243a33383c022506ea0a572334043d 100644 +index ae504a5cf56876318ee395af3def53bb5776a43a..4552a30f321fa91a61bbad8e81845468dab3a5ff 100644 --- a/content/browser/accessibility/browser_accessibility_cocoa.mm +++ b/content/browser/accessibility/browser_accessibility_cocoa.mm @@ -225,6 +225,7 @@ @@ -49,7 +49,7 @@ index 62f17dcca78fc7d9f851456120f7ddde09208dbe..95ec2b203d243a33383c022506ea0a57 extern "C" { // The following are private accessibility APIs required for cursor navigation -@@ -422,6 +423,7 @@ void AddMisspelledTextAttributes(const AXPlatformRange& ax_range, +@@ -432,6 +433,7 @@ void AddMisspelledTextAttributes(const AXPlatformRange& ax_range, AddMisspelledTextAttributes(ax_range, attributed_text); return attributed_text; } @@ -57,7 +57,7 @@ index 62f17dcca78fc7d9f851456120f7ddde09208dbe..95ec2b203d243a33383c022506ea0a57 // Returns an autoreleased copy of the AXNodeData's attribute. NSString* NSStringForStringAttribute(BrowserAccessibility* browserAccessibility, -@@ -689,7 +691,9 @@ + (void)initialize { +@@ -699,7 +701,9 @@ + (void)initialize { {NSAccessibilityEditableAncestorAttribute, @"editableAncestor"}, {NSAccessibilityElementBusyAttribute, @"elementBusy"}, {NSAccessibilityEnabledAttribute, @"enabled"}, @@ -67,7 +67,7 @@ index 62f17dcca78fc7d9f851456120f7ddde09208dbe..95ec2b203d243a33383c022506ea0a57 {NSAccessibilityExpandedAttribute, @"expanded"}, {NSAccessibilityFocusableAncestorAttribute, @"focusableAncestor"}, {NSAccessibilityFocusedAttribute, @"focused"}, -@@ -724,13 +728,17 @@ + (void)initialize { +@@ -734,13 +738,17 @@ + (void)initialize { {NSAccessibilityRowsAttribute, @"rows"}, // TODO(aboxhall): expose // NSAccessibilityServesAsTitleForUIElementsAttribute @@ -85,7 +85,7 @@ index 62f17dcca78fc7d9f851456120f7ddde09208dbe..95ec2b203d243a33383c022506ea0a57 {NSAccessibilitySizeAttribute, @"size"}, {NSAccessibilitySortDirectionAttribute, @"sortDirection"}, {NSAccessibilitySubroleAttribute, @"subrole"}, -@@ -1228,6 +1236,7 @@ - (NSNumber*)enabled { +@@ -1238,6 +1246,7 @@ - (NSNumber*)enabled { ax::mojom::Restriction::kDisabled]; } @@ -93,7 +93,7 @@ index 62f17dcca78fc7d9f851456120f7ddde09208dbe..95ec2b203d243a33383c022506ea0a57 // Returns a text marker that points to the last character in the document that // can be selected with VoiceOver. - (id)endTextMarker { -@@ -1238,6 +1247,7 @@ - (id)endTextMarker { +@@ -1248,6 +1257,7 @@ - (id)endTextMarker { BrowserAccessibilityPositionInstance position = root->CreatePositionAt(0); return CreateTextMarker(position->CreatePositionAtEndOfAnchor()); } @@ -101,7 +101,7 @@ index 62f17dcca78fc7d9f851456120f7ddde09208dbe..95ec2b203d243a33383c022506ea0a57 - (NSNumber*)expanded { if (![self instanceActive]) -@@ -2112,6 +2122,7 @@ - (NSValue*)selectedTextRange { +@@ -2122,6 +2132,7 @@ - (NSValue*)selectedTextRange { return [NSValue valueWithRange:NSMakeRange(selStart, selLength)]; } @@ -109,7 +109,7 @@ index 62f17dcca78fc7d9f851456120f7ddde09208dbe..95ec2b203d243a33383c022506ea0a57 - (id)selectedTextMarkerRange { if (![self instanceActive]) return nil; -@@ -2147,6 +2158,7 @@ - (id)selectedTextMarkerRange { +@@ -2157,6 +2168,7 @@ - (id)selectedTextMarkerRange { CreateAXPlatformRange(*anchorObject, anchorOffset, anchorAffinity, *focusObject, focusOffset, focusAffinity)); } @@ -117,7 +117,7 @@ index 62f17dcca78fc7d9f851456120f7ddde09208dbe..95ec2b203d243a33383c022506ea0a57 - (NSValue*)size { if (![self instanceActive]) -@@ -2179,6 +2191,7 @@ - (NSString*)sortDirection { +@@ -2189,6 +2201,7 @@ - (NSString*)sortDirection { return nil; } @@ -125,7 +125,7 @@ index 62f17dcca78fc7d9f851456120f7ddde09208dbe..95ec2b203d243a33383c022506ea0a57 // Returns a text marker that points to the first character in the document that // can be selected with VoiceOver. - (id)startTextMarker { -@@ -2189,6 +2202,7 @@ - (id)startTextMarker { +@@ -2199,6 +2212,7 @@ - (id)startTextMarker { BrowserAccessibilityPositionInstance position = root->CreatePositionAt(0); return CreateTextMarker(position->CreatePositionAtStartOfAnchor()); } @@ -133,7 +133,7 @@ index 62f17dcca78fc7d9f851456120f7ddde09208dbe..95ec2b203d243a33383c022506ea0a57 // Returns a subrole based upon the role. - (NSString*)subrole { -@@ -2480,11 +2494,13 @@ - (NSAttributedString*)attributedValueForRange:(NSRange)range { +@@ -2490,11 +2504,13 @@ - (NSAttributedString*)attributedValueForRange:(NSRange)range { NSMutableAttributedString* attributedValue = [[[NSMutableAttributedString alloc] initWithString:value] autorelease]; @@ -147,7 +147,7 @@ index 62f17dcca78fc7d9f851456120f7ddde09208dbe..95ec2b203d243a33383c022506ea0a57 return [attributedValue attributedSubstringFromRange:range]; } -@@ -2567,9 +2583,8 @@ - (id)accessibilityAttributeValue:(NSString*)attribute +@@ -2577,9 +2593,8 @@ - (id)accessibilityAttributeValue:(NSString*)attribute return ToBrowserAccessibilityCocoa(cell); } @@ -159,7 +159,7 @@ index 62f17dcca78fc7d9f851456120f7ddde09208dbe..95ec2b203d243a33383c022506ea0a57 BrowserAccessibilityPositionInstance position = CreatePositionFromTextMarker(parameter); if (!position->IsNullPosition()) -@@ -2859,6 +2874,7 @@ - (id)accessibilityAttributeValue:(NSString*)attribute +@@ -2869,6 +2884,7 @@ - (id)accessibilityAttributeValue:(NSString*)attribute return CreateTextMarker(root->CreatePositionAt(index)); } @@ -167,7 +167,7 @@ index 62f17dcca78fc7d9f851456120f7ddde09208dbe..95ec2b203d243a33383c022506ea0a57 if ([attribute isEqualToString: NSAccessibilityBoundsForRangeParameterizedAttribute]) { -@@ -2892,6 +2908,7 @@ - (id)accessibilityAttributeValue:(NSString*)attribute +@@ -2902,6 +2918,7 @@ - (id)accessibilityAttributeValue:(NSString*)attribute return nil; } @@ -175,7 +175,7 @@ index 62f17dcca78fc7d9f851456120f7ddde09208dbe..95ec2b203d243a33383c022506ea0a57 if ([attribute isEqualToString: NSAccessibilityLineTextMarkerRangeForTextMarkerParameterizedAttribute]) { -@@ -2972,6 +2989,7 @@ AXPlatformRange range(position->CreatePreviousLineStartPosition( +@@ -2982,6 +2999,7 @@ AXPlatformRange range(position->CreatePreviousLineStartPosition( return @(child->GetIndexInParent()); } @@ -280,7 +280,7 @@ index 8e4a469b6f0675dc7b82543d5758f0c2ec226809..2fcfb6edb5f57bd25756257b77361d25 void BluetoothAdapterMac::RemovePairingDelegateInternal( diff --git a/media/audio/BUILD.gn b/media/audio/BUILD.gn -index 35fd1d7da0adfb8c8bef3d2ff3aa9ac25285421a..b7eda4e11c464e733e4ddb1cbf009ba811fc332a 100644 +index b27ebeea53b9762ff1cfa1c2dbcec4e8e689069c..1a5d380fa6a425e90e2a07820019bb797ca0ffb3 100644 --- a/media/audio/BUILD.gn +++ b/media/audio/BUILD.gn @@ -180,6 +180,12 @@ source_set("audio") { diff --git a/patches/chromium/network_service_allow_remote_certificate_verification_logic.patch b/patches/chromium/network_service_allow_remote_certificate_verification_logic.patch index d079b238a802..82196e316b0a 100644 --- a/patches/chromium/network_service_allow_remote_certificate_verification_logic.patch +++ b/patches/chromium/network_service_allow_remote_certificate_verification_logic.patch @@ -5,10 +5,10 @@ Subject: network_service_allow_remote_certificate_verification_logic.patch diff --git a/services/network/network_context.cc b/services/network/network_context.cc -index fd4c3971348e1e1b6e4368840f1271659bcdafd3..c36657fc18c705c7224e6c57c8c50b7f641060fa 100644 +index dad53e4c3cc4d1537664c4423810f69a9e4dd591..03d916c2355409557b1f754fc31eaea945409d13 100644 --- a/services/network/network_context.cc +++ b/services/network/network_context.cc -@@ -89,6 +89,11 @@ +@@ -90,6 +90,11 @@ #include "services/network/url_loader.h" #include "services/network/url_request_context_builder_mojo.h" @@ -20,7 +20,7 @@ index fd4c3971348e1e1b6e4368840f1271659bcdafd3..c36657fc18c705c7224e6c57c8c50b7f #if BUILDFLAG(IS_CT_SUPPORTED) #include "components/certificate_transparency/chrome_ct_policy_enforcer.h" #include "components/certificate_transparency/chrome_require_ct_delegate.h" -@@ -317,6 +322,79 @@ std::string HashesToBase64String(const net::HashValueVector& hashes) { +@@ -318,6 +323,79 @@ std::string HashesToBase64String(const net::HashValueVector& hashes) { } // namespace @@ -100,7 +100,7 @@ index fd4c3971348e1e1b6e4368840f1271659bcdafd3..c36657fc18c705c7224e6c57c8c50b7f constexpr uint32_t NetworkContext::kMaxOutstandingRequestsPerProcess; NetworkContext::PendingCertVerify::PendingCertVerify() = default; -@@ -466,6 +544,13 @@ void NetworkContext::SetClient( +@@ -473,6 +551,13 @@ void NetworkContext::SetClient( client_.Bind(std::move(client)); } @@ -114,7 +114,7 @@ index fd4c3971348e1e1b6e4368840f1271659bcdafd3..c36657fc18c705c7224e6c57c8c50b7f void NetworkContext::CreateURLLoaderFactory( mojom::URLLoaderFactoryRequest request, mojom::URLLoaderFactoryParamsPtr params) { -@@ -1541,12 +1626,19 @@ URLRequestContextOwner NetworkContext::MakeURLRequestContext() { +@@ -1548,12 +1633,19 @@ URLRequestContextOwner NetworkContext::MakeURLRequestContext() { net::SystemTrustStoreProvider::CreateDefaultForSSL()))); } #endif @@ -169,7 +169,7 @@ index 21dd391b7330c362e3795fddc2943ed6832d0383..581196b6d4a0054bc213e4eada1a97a8 // CertNetFetcher is not used by the current platform. scoped_refptr cert_net_fetcher_; diff --git a/services/network/public/mojom/network_context.mojom b/services/network/public/mojom/network_context.mojom -index fe7ed5d396d9cba480a785f46d0df471c117c86e..6b7571dbf1464284ce30953a27c1ac2099f1872f 100644 +index 83a32d8b533d64b5ff65626d434e5ff731992642..d5986452c813579d96a90817b468922db5b5a91e 100644 --- a/services/network/public/mojom/network_context.mojom +++ b/services/network/public/mojom/network_context.mojom @@ -165,6 +165,17 @@ interface TrustedURLLoaderHeaderClient { @@ -190,7 +190,7 @@ index fe7ed5d396d9cba480a785f46d0df471c117c86e..6b7571dbf1464284ce30953a27c1ac20 // Parameters for constructing a network context. struct NetworkContextParams { // Name used by memory tools to identify the context. -@@ -727,6 +738,9 @@ interface NetworkContext { +@@ -724,6 +735,9 @@ interface NetworkContext { // Sets a client for this network context. SetClient(pending_remote client); diff --git a/patches/chromium/out_of_process_instance.patch b/patches/chromium/out_of_process_instance.patch index 30a13a1fecee..1328ff92880a 100644 --- a/patches/chromium/out_of_process_instance.patch +++ b/patches/chromium/out_of_process_instance.patch @@ -5,7 +5,7 @@ Subject: out_of_process_instance.patch diff --git a/pdf/out_of_process_instance.cc b/pdf/out_of_process_instance.cc -index c6b9448faffb8b66c45c643b6fd756e6bc6a32e1..834f387c2f17bfab48a451f0eec634682e97e82d 100644 +index 3d8c99deca6997f08103e4d48361abcb9b829ba4..2afdec5fef22f3aa37633bd09321141f3cc5708f 100644 --- a/pdf/out_of_process_instance.cc +++ b/pdf/out_of_process_instance.cc @@ -478,7 +478,9 @@ bool OutOfProcessInstance::Init(uint32_t argc, diff --git a/patches/chromium/printing.patch b/patches/chromium/printing.patch index 9541af89098b..f215d6acfd65 100644 --- a/patches/chromium/printing.patch +++ b/patches/chromium/printing.patch @@ -393,7 +393,7 @@ index f9f5d1c07e4068d0706770ca81bd92ce166c3822..9f0e079b941296fa27b8cf0a66abfa45 // Like PrintMsg_PrintPages, but using the print preview document's frame/node. IPC_MESSAGE_ROUTED0(PrintMsg_PrintForSystemDialog) diff --git a/components/printing/renderer/print_render_frame_helper.cc b/components/printing/renderer/print_render_frame_helper.cc -index fa6f27bf54f1877438a106961b6d236c771d6800..aeb45309624b0ddce874bb85db3f0cea2c48245a 100644 +index 97fb26be0325ef5e44757a1c016d57baadfcd3fb..eaa9712632c30abe3df596678c540520c6dd4e16 100644 --- a/components/printing/renderer/print_render_frame_helper.cc +++ b/components/printing/renderer/print_render_frame_helper.cc @@ -38,6 +38,7 @@ @@ -404,7 +404,7 @@ index fa6f27bf54f1877438a106961b6d236c771d6800..aeb45309624b0ddce874bb85db3f0cea #include "printing/units.h" #include "third_party/blink/public/common/associated_interfaces/associated_interface_registry.h" #include "third_party/blink/public/common/frame/frame_owner_element_type.h" -@@ -1146,7 +1147,8 @@ void PrintRenderFrameHelper::ScriptedPrint(bool user_initiated) { +@@ -1153,7 +1154,8 @@ void PrintRenderFrameHelper::ScriptedPrint(bool user_initiated) { web_frame->DispatchBeforePrintEvent(); if (!weak_this) return; @@ -414,7 +414,7 @@ index fa6f27bf54f1877438a106961b6d236c771d6800..aeb45309624b0ddce874bb85db3f0cea if (weak_this) web_frame->DispatchAfterPrintEvent(); } -@@ -1224,7 +1226,9 @@ void PrintRenderFrameHelper::InitiatePrintPreview( +@@ -1228,7 +1230,9 @@ void PrintRenderFrameHelper::InitiatePrintPreview( #endif // BUILDFLAG(ENABLE_PRINT_PREVIEW) } @@ -425,7 +425,7 @@ index fa6f27bf54f1877438a106961b6d236c771d6800..aeb45309624b0ddce874bb85db3f0cea if (ipc_nesting_level_ > 1) return; -@@ -1237,7 +1241,8 @@ void PrintRenderFrameHelper::OnPrintPages() { +@@ -1241,7 +1245,8 @@ void PrintRenderFrameHelper::OnPrintPages() { // If we are printing a PDF extension frame, find the plugin node and print // that instead. auto plugin = delegate_->GetPdfElement(frame); @@ -435,7 +435,7 @@ index fa6f27bf54f1877438a106961b6d236c771d6800..aeb45309624b0ddce874bb85db3f0cea if (weak_this) frame->DispatchAfterPrintEvent(); // WARNING: |this| may be gone at this point. Do not do any more work here and -@@ -1254,7 +1259,7 @@ void PrintRenderFrameHelper::OnPrintForSystemDialog() { +@@ -1258,7 +1263,7 @@ void PrintRenderFrameHelper::OnPrintForSystemDialog() { } auto weak_this = weak_ptr_factory_.GetWeakPtr(); Print(frame, print_preview_context_.source_node(), @@ -444,7 +444,7 @@ index fa6f27bf54f1877438a106961b6d236c771d6800..aeb45309624b0ddce874bb85db3f0cea if (weak_this) frame->DispatchAfterPrintEvent(); // WARNING: |this| may be gone at this point. Do not do any more work here and -@@ -1290,6 +1295,8 @@ void PrintRenderFrameHelper::OnPrintPreview( +@@ -1293,6 +1298,8 @@ void PrintRenderFrameHelper::OnPrintPreview( if (ipc_nesting_level_ > 1) return; @@ -453,7 +453,7 @@ index fa6f27bf54f1877438a106961b6d236c771d6800..aeb45309624b0ddce874bb85db3f0cea print_preview_context_.OnPrintPreview(); UMA_HISTOGRAM_ENUMERATION("PrintPreview.PreviewEvent", -@@ -1663,7 +1670,9 @@ void PrintRenderFrameHelper::PrintNode(const blink::WebNode& node) { +@@ -1666,7 +1673,9 @@ void PrintRenderFrameHelper::PrintNode(const blink::WebNode& node) { auto self = weak_ptr_factory_.GetWeakPtr(); Print(duplicate_node.GetDocument().GetFrame(), duplicate_node, @@ -464,7 +464,7 @@ index fa6f27bf54f1877438a106961b6d236c771d6800..aeb45309624b0ddce874bb85db3f0cea // Check if |this| is still valid. if (!self) return; -@@ -1674,7 +1683,9 @@ void PrintRenderFrameHelper::PrintNode(const blink::WebNode& node) { +@@ -1677,7 +1686,9 @@ void PrintRenderFrameHelper::PrintNode(const blink::WebNode& node) { void PrintRenderFrameHelper::Print(blink::WebLocalFrame* frame, const blink::WebNode& node, @@ -475,7 +475,7 @@ index fa6f27bf54f1877438a106961b6d236c771d6800..aeb45309624b0ddce874bb85db3f0cea // If still not finished with earlier print request simply ignore. if (prep_frame_view_) return; -@@ -1682,7 +1693,7 @@ void PrintRenderFrameHelper::Print(blink::WebLocalFrame* frame, +@@ -1685,7 +1696,7 @@ void PrintRenderFrameHelper::Print(blink::WebLocalFrame* frame, FrameReference frame_ref(frame); int expected_page_count = 0; @@ -484,7 +484,7 @@ index fa6f27bf54f1877438a106961b6d236c771d6800..aeb45309624b0ddce874bb85db3f0cea DidFinishPrinting(FAIL_PRINT_INIT); return; // Failed to init print page settings. } -@@ -1702,8 +1713,11 @@ void PrintRenderFrameHelper::Print(blink::WebLocalFrame* frame, +@@ -1705,8 +1716,11 @@ void PrintRenderFrameHelper::Print(blink::WebLocalFrame* frame, PrintMsg_PrintPages_Params print_settings; auto self = weak_ptr_factory_.GetWeakPtr(); @@ -498,8 +498,8 @@ index fa6f27bf54f1877438a106961b6d236c771d6800..aeb45309624b0ddce874bb85db3f0cea // Check if |this| is still valid. if (!self) return; -@@ -1910,10 +1924,23 @@ std::vector PrintRenderFrameHelper::GetPrintedPages( - return printed_pages; +@@ -1930,10 +1944,23 @@ void PrintRenderFrameHelper::IPCProcessed() { + base::ThreadTaskRunnerHandle::Get()->DeleteSoon(FROM_HERE, this); } -bool PrintRenderFrameHelper::InitPrintSettings(bool fit_to_paper_size) { @@ -525,7 +525,7 @@ index fa6f27bf54f1877438a106961b6d236c771d6800..aeb45309624b0ddce874bb85db3f0cea // Check if the printer returned any settings, if the settings is empty, we // can safely assume there are no printer drivers configured. So we safely // terminate. -@@ -1933,12 +1960,14 @@ bool PrintRenderFrameHelper::InitPrintSettings(bool fit_to_paper_size) { +@@ -1953,12 +1980,14 @@ bool PrintRenderFrameHelper::InitPrintSettings(bool fit_to_paper_size) { return result; } @@ -545,7 +545,7 @@ index fa6f27bf54f1877438a106961b6d236c771d6800..aeb45309624b0ddce874bb85db3f0cea Send(new PrintHostMsg_ShowInvalidPrinterSettingsError(routing_id())); return false; diff --git a/components/printing/renderer/print_render_frame_helper.h b/components/printing/renderer/print_render_frame_helper.h -index a4f11e5e5ab7e00522fff073d89b5e7638a19d21..1d94e895ff1d8b86e8e8e6a4189b08471e2728d5 100644 +index 00b3e4647a192411262bc5e7c1c0cfac3e3f81bb..5bade84672ef9d8b8acb8e8d503760aca6635cb7 100644 --- a/components/printing/renderer/print_render_frame_helper.h +++ b/components/printing/renderer/print_render_frame_helper.h @@ -204,7 +204,8 @@ class PrintRenderFrameHelper diff --git a/patches/chromium/revert_cleanup_remove_menu_subtitles_sublabels.patch b/patches/chromium/revert_cleanup_remove_menu_subtitles_sublabels.patch index ce240a87da06..14fa50c1d0e2 100644 --- a/patches/chromium/revert_cleanup_remove_menu_subtitles_sublabels.patch +++ b/patches/chromium/revert_cleanup_remove_menu_subtitles_sublabels.patch @@ -180,10 +180,10 @@ index 73f0ab6d84d2cab6732866a6dc4b781faf630c0e..3319d058e8303066e0159d02d27ee2e8 return base::string16(); } diff --git a/ui/base/models/menu_model.h b/ui/base/models/menu_model.h -index e0324ff11fb8c6b578ea7e902488235c33ec5485..690aa082b6be0bd576770d03ac94075183c1f9d6 100644 +index b0ae539ba1dc5a4c11390267c3053058e92e7f34..1e28cd2b1bc66d512ea4e0b8ae62bc8ec03d7a1b 100644 --- a/ui/base/models/menu_model.h +++ b/ui/base/models/menu_model.h -@@ -64,6 +64,10 @@ class UI_BASE_EXPORT MenuModel { +@@ -65,6 +65,10 @@ class UI_BASE_EXPORT MenuModel : public base::SupportsWeakPtr { // Returns the label of the item at the specified index. virtual base::string16 GetLabelAt(int index) const = 0; diff --git a/patches/chromium/scroll_bounce_flag.patch b/patches/chromium/scroll_bounce_flag.patch index 12efebc64982..15c5b9c53e19 100644 --- a/patches/chromium/scroll_bounce_flag.patch +++ b/patches/chromium/scroll_bounce_flag.patch @@ -6,10 +6,10 @@ Subject: scroll_bounce_flag.patch Patch to make scrollBounce option work. diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc -index 56bff36825b02d3aa5ec1ded29b1dc7265df4f7e..569c83ae7cdcc0c7b3c3edf352b379c3b427e651 100644 +index 6e789503d67890f74d66fead6a1dbe97be50466e..7003db227bfc03521fb7a74953604f48c31838b8 100644 --- a/content/renderer/render_thread_impl.cc +++ b/content/renderer/render_thread_impl.cc -@@ -1523,7 +1523,7 @@ bool RenderThreadImpl::IsGpuMemoryBufferCompositorResourcesEnabled() { +@@ -1517,7 +1517,7 @@ bool RenderThreadImpl::IsGpuMemoryBufferCompositorResourcesEnabled() { } bool RenderThreadImpl::IsElasticOverscrollEnabled() { diff --git a/patches/chromium/support_mixed_sandbox_with_zygote.patch b/patches/chromium/support_mixed_sandbox_with_zygote.patch index 15c81d26a46f..6bba40b29b62 100644 --- a/patches/chromium/support_mixed_sandbox_with_zygote.patch +++ b/patches/chromium/support_mixed_sandbox_with_zygote.patch @@ -22,10 +22,10 @@ However, the patch would need to be reviewed by the security team, as it does touch a security-sensitive class. diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc -index 25fd6ca609bdffcd62b5d16c7da9fbd37490b993..2aaa6b123b917b9b819aa2a2d3fb27179a57a8ec 100644 +index 65b6d31f5438c1f97fccef4dd3c71ed125a15d5c..b14ed42882fb7feffdb1c481f8d02007d38f134c 100644 --- a/content/browser/renderer_host/render_process_host_impl.cc +++ b/content/browser/renderer_host/render_process_host_impl.cc -@@ -390,6 +390,11 @@ class RendererSandboxedProcessLauncherDelegate +@@ -392,6 +392,11 @@ class RendererSandboxedProcessLauncherDelegate { } @@ -37,7 +37,7 @@ index 25fd6ca609bdffcd62b5d16c7da9fbd37490b993..2aaa6b123b917b9b819aa2a2d3fb2717 ~RendererSandboxedProcessLauncherDelegate() override {} #if defined(OS_WIN) -@@ -411,6 +416,9 @@ class RendererSandboxedProcessLauncherDelegate +@@ -413,6 +418,9 @@ class RendererSandboxedProcessLauncherDelegate #if BUILDFLAG(USE_ZYGOTE_HANDLE) service_manager::ZygoteHandle GetZygote() override { @@ -47,7 +47,7 @@ index 25fd6ca609bdffcd62b5d16c7da9fbd37490b993..2aaa6b123b917b9b819aa2a2d3fb2717 const base::CommandLine& browser_command_line = *base::CommandLine::ForCurrentProcess(); base::CommandLine::StringType renderer_prefix = -@@ -425,10 +433,13 @@ class RendererSandboxedProcessLauncherDelegate +@@ -427,10 +435,13 @@ class RendererSandboxedProcessLauncherDelegate return service_manager::SANDBOX_TYPE_RENDERER; } @@ -62,7 +62,7 @@ index 25fd6ca609bdffcd62b5d16c7da9fbd37490b993..2aaa6b123b917b9b819aa2a2d3fb2717 }; const char kSessionStorageHolderKey[] = "kSessionStorageHolderKey"; -@@ -1688,11 +1699,18 @@ bool RenderProcessHostImpl::Init() { +@@ -1690,11 +1701,18 @@ bool RenderProcessHostImpl::Init() { cmd_line->PrependWrapper(renderer_prefix); AppendRendererCommandLine(cmd_line.get()); diff --git a/patches/chromium/ui_views_fix_jumbo_build.patch b/patches/chromium/ui_views_fix_jumbo_build.patch index 8a7f9652a007..4d09b2d801e5 100644 --- a/patches/chromium/ui_views_fix_jumbo_build.patch +++ b/patches/chromium/ui_views_fix_jumbo_build.patch @@ -16,7 +16,7 @@ COMPONENT_EXPORT(UI_BASE_FEATURES) bool IsFormControlsRefreshEnabled(); ninja: build stopped: subcommand failed. diff --git a/ui/views/BUILD.gn b/ui/views/BUILD.gn -index b12b2137e8cd24c28d9c9e6845161ac1756f6425..a6df1985f24b023355b0643c12d5685463dd187e 100644 +index 916debe91b00e84de13157a6fc7a5748619f37fa..ce667ff0239573145671c09fb8f3d377c044beb0 100644 --- a/ui/views/BUILD.gn +++ b/ui/views/BUILD.gn @@ -580,6 +580,7 @@ jumbo_component("views") { diff --git a/patches/chromium/web_contents.patch b/patches/chromium/web_contents.patch index c6a3db707e6c..424307ea0368 100644 --- a/patches/chromium/web_contents.patch +++ b/patches/chromium/web_contents.patch @@ -5,10 +5,10 @@ Subject: web_contents.patch diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc -index f194fb62a05aafdc617f6ce56bc2f447fd8b5d15..6f18e4888a345de3941b0a19ef91239f435671f3 100644 +index ba990c79d5bf88077cef601d63d604b2e372bab3..709230e0ecf624c0014b3a2e61f90c25dc23ebe7 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -2137,6 +2137,12 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params) { +@@ -2142,6 +2142,12 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params) { std::string unique_name; frame_tree_.root()->SetFrameName(params.main_frame_name, unique_name); @@ -21,7 +21,7 @@ index f194fb62a05aafdc617f6ce56bc2f447fd8b5d15..6f18e4888a345de3941b0a19ef91239f WebContentsViewDelegate* delegate = GetContentClient()->browser()->GetWebContentsViewDelegate(this); -@@ -2152,6 +2158,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params) { +@@ -2157,6 +2163,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params) { &render_view_host_delegate_view_); } } diff --git a/script/zip_manifests/dist_zip.linux.arm.manifest b/script/zip_manifests/dist_zip.linux.arm.manifest index 328c4e5848d8..07355ac98a50 100644 --- a/script/zip_manifests/dist_zip.linux.arm.manifest +++ b/script/zip_manifests/dist_zip.linux.arm.manifest @@ -8,6 +8,7 @@ icudtl.dat libEGL.so libGLESv2.so libffmpeg.so +libvk_swiftshader.so locales/am.pak locales/ar.pak locales/bg.pak @@ -67,6 +68,5 @@ resources/default_app.asar snapshot_blob.bin swiftshader/libEGL.so swiftshader/libGLESv2.so -swiftshader/libvk_swiftshader.so v8_context_snapshot.bin version diff --git a/script/zip_manifests/dist_zip.linux.arm64.manifest b/script/zip_manifests/dist_zip.linux.arm64.manifest index 328c4e5848d8..07355ac98a50 100644 --- a/script/zip_manifests/dist_zip.linux.arm64.manifest +++ b/script/zip_manifests/dist_zip.linux.arm64.manifest @@ -8,6 +8,7 @@ icudtl.dat libEGL.so libGLESv2.so libffmpeg.so +libvk_swiftshader.so locales/am.pak locales/ar.pak locales/bg.pak @@ -67,6 +68,5 @@ resources/default_app.asar snapshot_blob.bin swiftshader/libEGL.so swiftshader/libGLESv2.so -swiftshader/libvk_swiftshader.so v8_context_snapshot.bin version diff --git a/script/zip_manifests/dist_zip.linux.x64.manifest b/script/zip_manifests/dist_zip.linux.x64.manifest index 328c4e5848d8..07355ac98a50 100644 --- a/script/zip_manifests/dist_zip.linux.x64.manifest +++ b/script/zip_manifests/dist_zip.linux.x64.manifest @@ -8,6 +8,7 @@ icudtl.dat libEGL.so libGLESv2.so libffmpeg.so +libvk_swiftshader.so locales/am.pak locales/ar.pak locales/bg.pak @@ -67,6 +68,5 @@ resources/default_app.asar snapshot_blob.bin swiftshader/libEGL.so swiftshader/libGLESv2.so -swiftshader/libvk_swiftshader.so v8_context_snapshot.bin version diff --git a/script/zip_manifests/dist_zip.linux.x86.manifest b/script/zip_manifests/dist_zip.linux.x86.manifest index 328c4e5848d8..07355ac98a50 100644 --- a/script/zip_manifests/dist_zip.linux.x86.manifest +++ b/script/zip_manifests/dist_zip.linux.x86.manifest @@ -8,6 +8,7 @@ icudtl.dat libEGL.so libGLESv2.so libffmpeg.so +libvk_swiftshader.so locales/am.pak locales/ar.pak locales/bg.pak @@ -67,6 +68,5 @@ resources/default_app.asar snapshot_blob.bin swiftshader/libEGL.so swiftshader/libGLESv2.so -swiftshader/libvk_swiftshader.so v8_context_snapshot.bin version diff --git a/shell/browser/api/atom_api_session.cc b/shell/browser/api/atom_api_session.cc index 598462819b07..b471121c236d 100644 --- a/shell/browser/api/atom_api_session.cc +++ b/shell/browser/api/atom_api_session.cc @@ -527,7 +527,7 @@ void Session::DownloadURL(const GURL& url) { void Session::CreateInterruptedDownload(const mate::Dictionary& options) { int64_t offset = 0, length = 0; - double start_time = 0.0; + double start_time = base::Time::Now().ToDoubleT(); std::string mime_type, last_modified, etag; base::FilePath path; std::vector url_chain; diff --git a/shell/browser/api/atom_api_url_request_ns.cc b/shell/browser/api/atom_api_url_request_ns.cc index 1779e9c9c3bc..2d260e79e128 100644 --- a/shell/browser/api/atom_api_url_request_ns.cc +++ b/shell/browser/api/atom_api_url_request_ns.cc @@ -401,7 +401,7 @@ void URLRequestNS::OnComplete(bool success) { void URLRequestNS::OnResponseStarted( const GURL& final_url, - const network::ResourceResponseHead& response_head) { + const network::mojom::URLResponseHead& response_head) { // Don't emit any event after request cancel. if (request_state_ & STATE_ERROR) return; @@ -413,7 +413,7 @@ void URLRequestNS::OnResponseStarted( void URLRequestNS::OnRedirect( const net::RedirectInfo& redirect_info, - const network::ResourceResponseHead& response_head, + const network::mojom::URLResponseHead& response_head, std::vector* to_be_removed_headers) { if (!loader_) return; diff --git a/shell/browser/api/atom_api_url_request_ns.h b/shell/browser/api/atom_api_url_request_ns.h index 6c7e5c11d757..da02b3a6ce84 100644 --- a/shell/browser/api/atom_api_url_request_ns.h +++ b/shell/browser/api/atom_api_url_request_ns.h @@ -65,9 +65,9 @@ class URLRequestNS : public mate::EventEmitter, friend class UploadDataPipeGetter; void OnResponseStarted(const GURL& final_url, - const network::ResourceResponseHead& response_head); + const network::mojom::URLResponseHead& response_head); void OnRedirect(const net::RedirectInfo& redirect_info, - const network::ResourceResponseHead& response_head, + const network::mojom::URLResponseHead& response_head, std::vector* to_be_removed_headers); void OnUploadProgress(uint64_t position, uint64_t total); void OnWrite(MojoResult result); diff --git a/shell/browser/atom_browser_client.cc b/shell/browser/atom_browser_client.cc index c3b2491b41df..234304150416 100644 --- a/shell/browser/atom_browser_client.cc +++ b/shell/browser/atom_browser_client.cc @@ -1047,7 +1047,7 @@ bool AtomBrowserClient::PreSpawnRenderer(sandbox::TargetPolicy* policy, } #endif // defined(OS_WIN) -bool AtomBrowserClient::BindAssociatedInterfaceRequestFromFrame( +bool AtomBrowserClient::BindAssociatedReceiverFromFrame( content::RenderFrameHost* render_frame_host, const std::string& interface_name, mojo::ScopedInterfaceEndpointHandle* handle) { diff --git a/shell/browser/atom_browser_client.h b/shell/browser/atom_browser_client.h index dfa4598c8d16..fed6ac5a2d61 100644 --- a/shell/browser/atom_browser_client.h +++ b/shell/browser/atom_browser_client.h @@ -191,7 +191,7 @@ class AtomBrowserClient : public content::ContentBrowserClient, bool PreSpawnRenderer(sandbox::TargetPolicy* policy, RendererSpawnFlags flags) override; #endif - bool BindAssociatedInterfaceRequestFromFrame( + bool BindAssociatedReceiverFromFrame( content::RenderFrameHost* render_frame_host, const std::string& interface_name, mojo::ScopedInterfaceEndpointHandle* handle) override; diff --git a/shell/browser/atom_download_manager_delegate.cc b/shell/browser/atom_download_manager_delegate.cc index 122fb0a7d70c..1ca768e03a27 100644 --- a/shell/browser/atom_download_manager_delegate.cc +++ b/shell/browser/atom_download_manager_delegate.cc @@ -90,6 +90,7 @@ void AtomDownloadManagerDelegate::OnDownloadPathGenerated( const content::DownloadTargetCallback& callback, const base::FilePath& default_path) { DCHECK_CURRENTLY_ON(content::BrowserThread::UI); + base::ThreadRestrictions::ScopedAllowIO allow_io; auto* item = download_manager_->GetDownload(download_id); if (!item) diff --git a/shell/browser/net/url_pipe_loader.cc b/shell/browser/net/url_pipe_loader.cc index fdd16a26ab08..e127fcbbedb2 100644 --- a/shell/browser/net/url_pipe_loader.cc +++ b/shell/browser/net/url_pipe_loader.cc @@ -59,7 +59,7 @@ void URLPipeLoader::NotifyComplete(int result) { void URLPipeLoader::OnResponseStarted( const GURL& final_url, - const network::ResourceResponseHead& response_head) { + const network::mojom::URLResponseHead& response_head) { mojo::ScopedDataPipeProducerHandle producer; mojo::ScopedDataPipeConsumerHandle consumer; MojoResult rv = mojo::CreateDataPipe(nullptr, &producer, &consumer); @@ -70,7 +70,7 @@ void URLPipeLoader::OnResponseStarted( producer_ = std::make_unique(std::move(producer)); - client_->OnReceiveResponse(response_head); + client_->OnReceiveResponse(response_head.Clone()); client_->OnStartLoadingResponseBody(std::move(consumer)); } diff --git a/shell/browser/net/url_pipe_loader.h b/shell/browser/net/url_pipe_loader.h index 59ea2f29bca0..b38ccec5b4c4 100644 --- a/shell/browser/net/url_pipe_loader.h +++ b/shell/browser/net/url_pipe_loader.h @@ -47,7 +47,7 @@ class URLPipeLoader : public network::mojom::URLLoader, base::DictionaryValue upload_data); void NotifyComplete(int result); void OnResponseStarted(const GURL& final_url, - const network::ResourceResponseHead& response_head); + const network::mojom::URLResponseHead& response_head); void OnWrite(base::OnceClosure resume, MojoResult result); // SimpleURLLoaderStreamConsumer: diff --git a/shell/browser/ui/inspectable_web_contents_impl.cc b/shell/browser/ui/inspectable_web_contents_impl.cc index 037921a817af..62dc3289605d 100644 --- a/shell/browser/ui/inspectable_web_contents_impl.cc +++ b/shell/browser/ui/inspectable_web_contents_impl.cc @@ -173,7 +173,7 @@ class InspectableWebContentsImpl::NetworkResourceLoader private: void OnResponseStarted(const GURL& final_url, - const network::ResourceResponseHead& response_head) { + const network::mojom::URLResponseHead& response_head) { response_headers_ = response_head.headers; } diff --git a/spec-main/api-session-spec.ts b/spec-main/api-session-spec.ts index b5b25eab313f..eecc02f53a29 100644 --- a/spec-main/api-session-spec.ts +++ b/spec-main/api-session-spec.ts @@ -736,7 +736,7 @@ describe('session module', () => { describe('ses.createInterruptedDownload(options)', () => { afterEach(closeAllWindows) - it('can create an interrupted download item', (done) => { + it('can create an interrupted download item', async () => { const downloadFilePath = path.join(__dirname, '..', 'fixtures', 'mock.pdf') const options = { path: downloadFilePath, @@ -746,17 +746,16 @@ describe('session module', () => { length: 5242880 } const w = new BrowserWindow({ show: false }) - w.webContents.session.once('will-download', function (e, item) { - expect(item.getState()).to.equal('interrupted') - item.cancel() - expect(item.getURLChain()).to.deep.equal(options.urlChain) - expect(item.getMimeType()).to.equal(options.mimeType) - expect(item.getReceivedBytes()).to.equal(options.offset) - expect(item.getTotalBytes()).to.equal(options.length) - expect(item.savePath).to.equal(downloadFilePath) - done() - }) + const p = emittedOnce(w.webContents.session, 'will-download') w.webContents.session.createInterruptedDownload(options) + const [, item] = await p + expect(item.getState()).to.equal('interrupted') + item.cancel() + expect(item.getURLChain()).to.deep.equal(options.urlChain) + expect(item.getMimeType()).to.equal(options.mimeType) + expect(item.getReceivedBytes()).to.equal(options.offset) + expect(item.getTotalBytes()).to.equal(options.length) + expect(item.savePath).to.equal(downloadFilePath) }) it('can be resumed', async () => {