diff --git a/BUILD.gn b/BUILD.gn index aa3abb7fc..945448a54 100644 --- a/BUILD.gn +++ b/BUILD.gn @@ -640,7 +640,6 @@ static_library("libcef_static") { "//printing/features", "//skia", "//storage/browser", - "//third_party/brotli", "//third_party/cld", "//third_party/hunspell", "//third_party/leveldatabase", diff --git a/CHROMIUM_BUILD_COMPATIBILITY.txt b/CHROMIUM_BUILD_COMPATIBILITY.txt index 90d0ccd88..98383005c 100644 --- a/CHROMIUM_BUILD_COMPATIBILITY.txt +++ b/CHROMIUM_BUILD_COMPATIBILITY.txt @@ -7,5 +7,5 @@ # https://bitbucket.org/chromiumembedded/cef/wiki/BranchesAndBuilding { - 'chromium_checkout': 'refs/tags/56.0.2924.51', + 'chromium_checkout': 'refs/tags/56.0.2924.76', } diff --git a/libcef/browser/net/internal_scheme_handler.cc b/libcef/browser/net/internal_scheme_handler.cc index a2b47abf5..e62c9bdfa 100644 --- a/libcef/browser/net/internal_scheme_handler.cc +++ b/libcef/browser/net/internal_scheme_handler.cc @@ -14,7 +14,6 @@ #include "base/strings/utf_string_conversions.h" #include "base/threading/thread_restrictions.h" #include "net/base/mime_util.h" -#include "third_party/brotli/dec/decode.h" #include "ui/base/resource/resource_bundle.h" namespace scheme { @@ -49,24 +48,6 @@ std::string GetMimeType(const std::string& filename) { return "text/plain"; } -bool DecodeBrotli(const base::StringPiece& encoded, - std::string& decoded) { - size_t decoded_size; - - const uint8_t* encoded_response_buffer = - reinterpret_cast(encoded.data()); - if (!BrotliDecompressedSize(encoded.size(), encoded_response_buffer, - &decoded_size)) { - return false; - } - - decoded.resize(decoded_size); - return BrotliDecompressBuffer(encoded.size(), encoded_response_buffer, - &decoded_size, - reinterpret_cast(&decoded[0])) == - BROTLI_RESULT_SUCCESS; -} - class RedirectHandler : public CefResourceHandler { public: explicit RedirectHandler(const GURL& url) @@ -172,16 +153,6 @@ class InternalHandlerFactory : public CefSchemeHandlerFactory { base::StringPiece piece = CefContentClient::Get()->GetDataResource( action.resource_id, ui::SCALE_FACTOR_NONE); if (!piece.empty()) { - std::string decoded; - if (action.encoding == - InternalHandlerDelegate::Action::ENCODING_BROTLI && - !DecodeBrotli(piece, decoded)) { - decoded = "Unable to decode content!"; - } - - if (!decoded.empty()) - piece = base::StringPiece(decoded); - action.stream = CefStreamReader::CreateForData(const_cast(piece.data()), piece.size()); @@ -212,8 +183,7 @@ class InternalHandlerFactory : public CefSchemeHandlerFactory { InternalHandlerDelegate::Action::Action() : stream_size(-1), - resource_id(-1), - encoding(ENCODING_NONE) { + resource_id(-1) { } CefRefPtr CreateInternalHandlerFactory( diff --git a/libcef/browser/net/internal_scheme_handler.h b/libcef/browser/net/internal_scheme_handler.h index 7c95d65d2..0d5b5adfc 100644 --- a/libcef/browser/net/internal_scheme_handler.h +++ b/libcef/browser/net/internal_scheme_handler.h @@ -31,10 +31,6 @@ class InternalHandlerDelegate { // Option 2: Specify a resource id to load static content. May include an // optional encoding type. int resource_id; - enum Encoding { - ENCODING_NONE, - ENCODING_BROTLI, - } encoding; // Option 3: Redirect to the specified URL. GURL redirect_url; diff --git a/patch/patches/content_nav_1129.patch b/patch/patches/content_nav_1129.patch index 4cc45f8cc..5dcc227e2 100644 --- a/patch/patches/content_nav_1129.patch +++ b/patch/patches/content_nav_1129.patch @@ -38,4 +38,3 @@ index f2a854f..913e30c 100644 // Indicates if the Android MediaPlayer should be used instead of Chrome's // built in media player for the given |url|. Defaults to false. virtual bool ShouldUseMediaPlayerForURL(const GURL& url); -\ \ No newline at end of file diff --git a/patch/patches/crashpad_1995.patch b/patch/patches/crashpad_1995.patch index d107672d6..e5dda53d1 100644 --- a/patch/patches/crashpad_1995.patch +++ b/patch/patches/crashpad_1995.patch @@ -180,7 +180,7 @@ index 4ded522..81eba43 100644 // Returns the contents of the specified |variable_name| from the environment // block of the calling process. Returns an empty string if the variable does diff --git chrome_elf/BUILD.gn chrome_elf/BUILD.gn -index 0629b6f..9c150b5 100644 +index c2861e0..7d6de6b 100644 --- chrome_elf/BUILD.gn +++ chrome_elf/BUILD.gn @@ -7,6 +7,7 @@ @@ -191,7 +191,7 @@ index 0629b6f..9c150b5 100644 import("//chrome/process_version_rc_template.gni") import("//testing/test.gni") -@@ -138,16 +139,40 @@ static_library("blacklist") { +@@ -139,16 +140,40 @@ static_library("blacklist") { static_library("crash") { sources = [ diff --git a/patch/patches/pdfium_print_549365.patch b/patch/patches/pdfium_print_549365.patch index e3a8b8fd4..49e77f5fc 100644 --- a/patch/patches/pdfium_print_549365.patch +++ b/patch/patches/pdfium_print_549365.patch @@ -1,5 +1,5 @@ diff --git BUILD.gn BUILD.gn -index f91ea0e..b57c692 100644 +index c43b074..ff17163 100644 --- BUILD.gn +++ BUILD.gn @@ -183,6 +183,10 @@ static_library("pdfium") { diff --git a/patch/patches/plugin_info_2015.patch b/patch/patches/plugin_info_2015.patch index 9f2ed155a..4c66a4e79 100644 --- a/patch/patches/plugin_info_2015.patch +++ b/patch/patches/plugin_info_2015.patch @@ -210,10 +210,10 @@ index 71bbed2..0f72497 100644 const std::string& mime_type, bool allow_wildcard, diff --git content/common/frame_messages.h content/common/frame_messages.h -index 3177bf6..9b4abe4 100644 +index 47c2f40..8f971b5 100644 --- content/common/frame_messages.h +++ content/common/frame_messages.h -@@ -1160,8 +1160,9 @@ IPC_MESSAGE_ROUTED1(FrameHostMsg_PepperStopsPlayback, +@@ -1172,8 +1172,9 @@ IPC_MESSAGE_ROUTED1(FrameHostMsg_PepperStopsPlayback, // Used to get the list of plugins. |main_frame_origin| is used to handle // exceptions for plugin content settings. @@ -224,7 +224,7 @@ index 3177bf6..9b4abe4 100644 url::Origin /* main_frame_origin */, std::vector /* plugins */) -@@ -1169,9 +1170,10 @@ IPC_SYNC_MESSAGE_CONTROL2_1(FrameHostMsg_GetPlugins, +@@ -1181,9 +1182,10 @@ IPC_SYNC_MESSAGE_CONTROL2_1(FrameHostMsg_GetPlugins, // type. If there is no matching plugin, |found| is false. // |actual_mime_type| is the actual mime type supported by the // found plugin. @@ -285,10 +285,10 @@ index 3b610b1..7c439e0 100644 WebPluginInfo* plugin) = 0; diff --git content/renderer/render_frame_impl.cc content/renderer/render_frame_impl.cc -index c0d7575..c723958 100644 +index 26efa20..c5050a7 100644 --- content/renderer/render_frame_impl.cc +++ content/renderer/render_frame_impl.cc -@@ -2729,7 +2729,8 @@ blink::WebPlugin* RenderFrameImpl::createPlugin( +@@ -2730,7 +2730,8 @@ blink::WebPlugin* RenderFrameImpl::createPlugin( std::string mime_type; bool found = false; Send(new FrameHostMsg_GetPluginInfo( @@ -298,7 +298,7 @@ index c0d7575..c723958 100644 params.mimeType.utf8(), &found, &info, &mime_type)); if (!found) return NULL; -@@ -5120,7 +5121,6 @@ WebNavigationPolicy RenderFrameImpl::decidePolicyForNavigation( +@@ -5133,7 +5134,6 @@ WebNavigationPolicy RenderFrameImpl::decidePolicyForNavigation( (pending_navigation_params_ && !pending_navigation_params_->request_params.redirects.empty()); @@ -306,7 +306,7 @@ index c0d7575..c723958 100644 // The handlenavigation API is deprecated and will be removed once // crbug.com/325351 is resolved. if (GetContentClient()->renderer()->HandleNavigation( -@@ -5129,7 +5129,6 @@ WebNavigationPolicy RenderFrameImpl::decidePolicyForNavigation( +@@ -5142,7 +5142,6 @@ WebNavigationPolicy RenderFrameImpl::decidePolicyForNavigation( is_redirect)) { return blink::WebNavigationPolicyIgnore; } diff --git a/patch/patches/plugin_info_webkit_2015.patch b/patch/patches/plugin_info_webkit_2015.patch index 76b6d4e49..6901f959e 100644 --- a/patch/patches/plugin_info_webkit_2015.patch +++ b/patch/patches/plugin_info_webkit_2015.patch @@ -15,10 +15,10 @@ index b6ef058..3f94993 100644 } } diff --git Source/core/frame/LocalFrame.cpp Source/core/frame/LocalFrame.cpp -index 56f8733..23ae6ca 100644 +index acd4722..d569159 100644 --- Source/core/frame/LocalFrame.cpp +++ Source/core/frame/LocalFrame.cpp -@@ -907,6 +907,7 @@ PluginData* LocalFrame::pluginData() const { +@@ -913,6 +913,7 @@ PluginData* LocalFrame::pluginData() const { if (!loader().allowPlugins(NotAboutToInstantiatePlugin)) return nullptr; return page()->pluginData( diff --git a/patch/patches/prefs_content_1161.patch b/patch/patches/prefs_content_1161.patch index e08acb471..aee90dc92 100644 --- a/patch/patches/prefs_content_1161.patch +++ b/patch/patches/prefs_content_1161.patch @@ -35,10 +35,10 @@ index b853dd3..d2324bd 100644 bool inert_visual_viewport; bool record_whole_document; diff --git renderer/render_view_impl.cc renderer/render_view_impl.cc -index 0c11c30..c0ae0af 100644 +index 56ad115..9f261b3 100644 --- renderer/render_view_impl.cc +++ renderer/render_view_impl.cc -@@ -1351,6 +1351,8 @@ void RenderViewImpl::ApplyWebPreferencesInternal( +@@ -1350,6 +1350,8 @@ void RenderViewImpl::ApplyWebPreferencesInternal( blink::WebView* web_view, CompositorDependencies* compositor_deps) { ApplyWebPreferences(prefs, web_view); diff --git a/patch/patches/render_view_host_impl_1392.patch b/patch/patches/render_view_host_impl_1392.patch index a3ad01f16..aea3b17be 100644 --- a/patch/patches/render_view_host_impl_1392.patch +++ b/patch/patches/render_view_host_impl_1392.patch @@ -1,5 +1,5 @@ diff --git render_view_host_impl.h render_view_host_impl.h -index e8890aa..910a25b 100644 +index 34bfe7e..f0e05a1 100644 --- render_view_host_impl.h +++ render_view_host_impl.h @@ -167,6 +167,7 @@ class CONTENT_EXPORT RenderViewHostImpl : public RenderViewHost, diff --git a/patch/patches/rwh_background_color_1984.patch b/patch/patches/rwh_background_color_1984.patch index f1475e645..8236090eb 100644 --- a/patch/patches/rwh_background_color_1984.patch +++ b/patch/patches/rwh_background_color_1984.patch @@ -1,8 +1,8 @@ diff --git content/browser/renderer_host/render_widget_host_view_aura.cc content/browser/renderer_host/render_widget_host_view_aura.cc -index 8a73ab8..11f2d54 100644 +index 59178ae..850e005 100644 --- content/browser/renderer_host/render_widget_host_view_aura.cc +++ content/browser/renderer_host/render_widget_host_view_aura.cc -@@ -761,8 +761,10 @@ void RenderWidgetHostViewAura::SetBackgroundColor(SkColor color) { +@@ -763,8 +763,10 @@ void RenderWidgetHostViewAura::SetBackgroundColor(SkColor color) { RenderWidgetHostViewBase::SetBackgroundColor(color); bool opaque = GetBackgroundOpaque(); host_->SetBackgroundOpaque(opaque); diff --git a/patch/patches/storage_partition_1973.patch b/patch/patches/storage_partition_1973.patch index e662b5dca..23e7835c8 100644 --- a/patch/patches/storage_partition_1973.patch +++ b/patch/patches/storage_partition_1973.patch @@ -103,7 +103,7 @@ index c34d15a1..429c0e8 100644 BrowserThread::PostTask(BrowserThread::IO, FROM_HERE, diff --git content/browser/renderer_host/render_process_host_impl.cc content/browser/renderer_host/render_process_host_impl.cc -index 43b5cf5..c387825 100644 +index 001d6d3..d6f4e8e 100644 --- content/browser/renderer_host/render_process_host_impl.cc +++ content/browser/renderer_host/render_process_host_impl.cc @@ -649,7 +649,7 @@ void RenderProcessHostImpl::EarlyZygoteLaunch() { diff --git a/patch/patches/web_contents_1257.patch b/patch/patches/web_contents_1257.patch index 7f54439c9..45ed38e3b 100644 --- a/patch/patches/web_contents_1257.patch +++ b/patch/patches/web_contents_1257.patch @@ -44,10 +44,10 @@ index c3e60e0..93365f5c 100644 // window.opener property, terminate prerendering. prerender_contents_->Destroy(FINAL_STATUS_CREATE_NEW_WINDOW); diff --git chrome/browser/ui/browser.cc chrome/browser/ui/browser.cc -index bbb37ff..484eda3 100644 +index 60737ae..4491066 100644 --- chrome/browser/ui/browser.cc +++ chrome/browser/ui/browser.cc -@@ -1589,7 +1589,9 @@ bool Browser::ShouldCreateWebContents( +@@ -1594,7 +1594,9 @@ bool Browser::ShouldCreateWebContents( const std::string& frame_name, const GURL& target_url, const std::string& partition_id, @@ -74,10 +74,10 @@ index 6cdff54..0efcaa2 100644 int opener_render_process_id, int opener_render_frame_id, diff --git content/browser/web_contents/web_contents_impl.cc content/browser/web_contents/web_contents_impl.cc -index 5b98a03..ddd9675 100644 +index 5740537..4e65b99 100644 --- content/browser/web_contents/web_contents_impl.cc +++ content/browser/web_contents/web_contents_impl.cc -@@ -1572,6 +1572,12 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params) { +@@ -1578,6 +1578,12 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params) { std::string unique_name; frame_tree_.root()->SetFrameName(params.main_frame_name, unique_name); @@ -90,7 +90,7 @@ index 5b98a03..ddd9675 100644 WebContentsViewDelegate* delegate = GetContentClient()->browser()->GetWebContentsViewDelegate(this); -@@ -1602,6 +1608,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params) { +@@ -1608,6 +1614,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params) { std::move(view_), &render_view_host_delegate_view_)); } @@ -98,7 +98,7 @@ index 5b98a03..ddd9675 100644 CHECK(render_view_host_delegate_view_); CHECK(view_.get()); -@@ -2063,11 +2070,14 @@ void WebContentsImpl::CreateNewWindow( +@@ -2069,11 +2076,14 @@ void WebContentsImpl::CreateNewWindow( static_cast(session_storage_namespace); CHECK(session_storage_namespace_impl->IsFromContext(dom_storage_context)); @@ -114,7 +114,7 @@ index 5b98a03..ddd9675 100644 if (route_id != MSG_ROUTING_NONE && !RenderViewHost::FromID(render_process_id, route_id)) { // If the embedder didn't create a WebContents for this route, we need to -@@ -2096,6 +2106,8 @@ void WebContentsImpl::CreateNewWindow( +@@ -2102,6 +2112,8 @@ void WebContentsImpl::CreateNewWindow( create_params.opener_render_process_id = render_process_id; create_params.opener_render_frame_id = params.opener_render_frame_id; create_params.opener_suppressed = params.opener_suppressed; diff --git a/patch/patches/webkit_popups.patch b/patch/patches/webkit_popups.patch index e3abf30ca..f0c2ea939 100644 --- a/patch/patches/webkit_popups.patch +++ b/patch/patches/webkit_popups.patch @@ -1,5 +1,5 @@ diff --git Source/web/ChromeClientImpl.cpp Source/web/ChromeClientImpl.cpp -index 4cf0fe7..404afc2 100644 +index 869c173..fc45c59 100644 --- Source/web/ChromeClientImpl.cpp +++ Source/web/ChromeClientImpl.cpp @@ -886,7 +886,7 @@ bool ChromeClientImpl::hasOpenedPopup() const { @@ -12,7 +12,7 @@ index 4cf0fe7..404afc2 100644 DCHECK(RuntimeEnabledFeatures::pagePopupEnabled()); diff --git Source/web/WebViewImpl.cpp Source/web/WebViewImpl.cpp -index fd45686..6e8d82f 100644 +index bd6fee8..39159b6 100644 --- Source/web/WebViewImpl.cpp +++ Source/web/WebViewImpl.cpp @@ -358,6 +358,7 @@ WebViewImpl::WebViewImpl(WebViewClient* client, @@ -23,7 +23,7 @@ index fd45686..6e8d82f 100644 m_ignoreInputEvents(false), m_compositorDeviceScaleFactorOverride(0), m_suppressNextKeypressEvent(false), -@@ -3707,8 +3708,13 @@ void WebViewImpl::mainFrameScrollOffsetChanged() { +@@ -3717,8 +3718,13 @@ void WebViewImpl::mainFrameScrollOffsetChanged() { m_devToolsEmulator->mainFrameScrollOrScaleChanged(); } @@ -39,7 +39,7 @@ index fd45686..6e8d82f 100644 void WebViewImpl::setIgnoreInputEvents(bool newValue) { diff --git Source/web/WebViewImpl.h Source/web/WebViewImpl.h -index c579e10..a28c544 100644 +index 8e47790..2fe0b22 100644 --- Source/web/WebViewImpl.h +++ Source/web/WebViewImpl.h @@ -375,7 +375,8 @@ class WEB_EXPORT WebViewImpl final @@ -52,7 +52,7 @@ index c579e10..a28c544 100644 bool shouldAutoResize() const { return m_shouldAutoResize; } -@@ -651,6 +652,8 @@ class WEB_EXPORT WebViewImpl final +@@ -650,6 +651,8 @@ class WEB_EXPORT WebViewImpl final float m_fakePageScaleAnimationPageScaleFactor; bool m_fakePageScaleAnimationUseAnchor; diff --git a/patch/patches/webview_plugin_2020.patch b/patch/patches/webview_plugin_2020.patch index 6d89afe41..dc354ee0c 100644 --- a/patch/patches/webview_plugin_2020.patch +++ b/patch/patches/webview_plugin_2020.patch @@ -1,5 +1,5 @@ diff --git chrome/app/generated_resources.grd chrome/app/generated_resources.grd -index 54b8ced..aca718b 100644 +index ab67408..23510b8 100644 --- chrome/app/generated_resources.grd +++ chrome/app/generated_resources.grd @@ -7196,7 +7196,7 @@ Keep your key file in a safe place. You will need it to create new versions of y