summaryrefslogtreecommitdiff
path: root/chromium/weblayer/renderer
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2020-10-12 14:27:29 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2020-10-13 09:35:20 +0000
commitc30a6232df03e1efbd9f3b226777b07e087a1122 (patch)
treee992f45784689f373bcc38d1b79a239ebe17ee23 /chromium/weblayer/renderer
parent7b5b123ac58f58ffde0f4f6e488bcd09aa4decd3 (diff)
downloadqtwebengine-chromium-85-based.tar.gz
BASELINE: Update Chromium to 85.0.4183.14085-based
Change-Id: Iaa42f4680837c57725b1344f108c0196741f6057 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'chromium/weblayer/renderer')
-rw-r--r--chromium/weblayer/renderer/DEPS1
-rw-r--r--chromium/weblayer/renderer/content_renderer_client_impl.cc27
-rw-r--r--chromium/weblayer/renderer/content_renderer_client_impl.h3
-rw-r--r--chromium/weblayer/renderer/error_page_helper.cc20
-rw-r--r--chromium/weblayer/renderer/error_page_helper.h3
-rw-r--r--chromium/weblayer/renderer/weblayer_render_frame_observer.cc2
6 files changed, 43 insertions, 13 deletions
diff --git a/chromium/weblayer/renderer/DEPS b/chromium/weblayer/renderer/DEPS
index 2c8bba7e64b..0256937da2e 100644
--- a/chromium/weblayer/renderer/DEPS
+++ b/chromium/weblayer/renderer/DEPS
@@ -4,6 +4,7 @@ include_rules = [
"+components/cdm/renderer",
"+components/content_settings/renderer",
"+components/error_page/common",
+ "+components/grit",
"+components/page_load_metrics/renderer",
"+components/safe_browsing/content/common",
"+components/safe_browsing/content/renderer",
diff --git a/chromium/weblayer/renderer/content_renderer_client_impl.cc b/chromium/weblayer/renderer/content_renderer_client_impl.cc
index 0b4e7fbdb14..490e7e45d5f 100644
--- a/chromium/weblayer/renderer/content_renderer_client_impl.cc
+++ b/chromium/weblayer/renderer/content_renderer_client_impl.cc
@@ -10,9 +10,12 @@
#include "components/autofill/content/renderer/password_autofill_agent.h"
#include "components/content_settings/renderer/content_settings_agent_impl.h"
#include "components/error_page/common/error.h"
+#include "components/grit/components_scaled_resources.h"
+#include "components/js_injection/renderer/js_communication.h"
#include "components/page_load_metrics/renderer/metrics_render_frame_observer.h"
#include "content/public/renderer/render_thread.h"
#include "third_party/blink/public/platform/platform.h"
+#include "ui/base/resource/resource_bundle.h"
#include "weblayer/common/features.h"
#include "weblayer/renderer/error_page_helper.h"
#include "weblayer/renderer/weblayer_render_frame_observer.h"
@@ -25,6 +28,7 @@
#include "components/spellcheck/renderer/spellcheck_provider.h" // nogncheck
#include "content/public/renderer/render_thread.h"
#include "services/service_manager/public/cpp/local_interface_provider.h"
+#include "third_party/blink/public/platform/web_runtime_features.h"
#include "weblayer/renderer/url_loader_throttle_provider.h"
#endif
@@ -101,6 +105,19 @@ void ContentRendererClientImpl::RenderFrameCreated(
new SpellCheckProvider(render_frame, spellcheck_.get(),
local_interface_provider_.get());
#endif
+ new js_injection::JsCommunication(render_frame);
+}
+
+SkBitmap* ContentRendererClientImpl::GetSadPluginBitmap() {
+ return const_cast<SkBitmap*>(ui::ResourceBundle::GetSharedInstance()
+ .GetImageNamed(IDR_SAD_PLUGIN)
+ .ToSkBitmap());
+}
+
+SkBitmap* ContentRendererClientImpl::GetSadWebViewBitmap() {
+ return const_cast<SkBitmap*>(ui::ResourceBundle::GetSharedInstance()
+ .GetImageNamed(IDR_SAD_WEBVIEW)
+ .ToSkBitmap());
}
bool ContentRendererClientImpl::HasErrorPage(int http_status_code) {
@@ -160,4 +177,14 @@ void ContentRendererClientImpl::AddSupportedKeySystems(
#endif
}
+void ContentRendererClientImpl::
+ SetRuntimeFeaturesDefaultsBeforeBlinkInitialization() {
+#if defined(OS_ANDROID)
+ // Web Share is experimental by default, and explicitly enabled on Android
+ // (for both Chrome and WebLayer).
+ blink::WebRuntimeFeatures::EnableWebShare(true);
+ blink::WebRuntimeFeatures::EnableWebShareV2(true);
+#endif
+}
+
} // namespace weblayer
diff --git a/chromium/weblayer/renderer/content_renderer_client_impl.h b/chromium/weblayer/renderer/content_renderer_client_impl.h
index 1d7d387aa57..b149a0f3e35 100644
--- a/chromium/weblayer/renderer/content_renderer_client_impl.h
+++ b/chromium/weblayer/renderer/content_renderer_client_impl.h
@@ -27,6 +27,8 @@ class ContentRendererClientImpl : public content::ContentRendererClient {
// content::ContentRendererClient:
void RenderThreadStarted() override;
void RenderFrameCreated(content::RenderFrame* render_frame) override;
+ SkBitmap* GetSadPluginBitmap() override;
+ SkBitmap* GetSadWebViewBitmap() override;
bool HasErrorPage(int http_status_code) override;
bool ShouldSuppressErrorPage(content::RenderFrame* render_frame,
const GURL& url,
@@ -41,6 +43,7 @@ class ContentRendererClientImpl : public content::ContentRendererClient {
void AddSupportedKeySystems(
std::vector<std::unique_ptr<::media::KeySystemProperties>>* key_systems)
override;
+ void SetRuntimeFeaturesDefaultsBeforeBlinkInitialization() override;
private:
#if defined(OS_ANDROID)
diff --git a/chromium/weblayer/renderer/error_page_helper.cc b/chromium/weblayer/renderer/error_page_helper.cc
index fa76ba35d1c..39a2ffb300b 100644
--- a/chromium/weblayer/renderer/error_page_helper.cc
+++ b/chromium/weblayer/renderer/error_page_helper.cc
@@ -44,9 +44,8 @@ bool IsReloadableError(const error_page::Error& error, bool was_failed_post) {
error.reason() != net::ERR_SSL_PROTOCOL_ERROR &&
// Do not trigger for blacklisted URLs.
// https://crbug.com/803839
- error.reason() != net::ERR_BLOCKED_BY_ADMINISTRATOR &&
// Do not trigger for requests that were blocked by the browser itself.
- error.reason() != net::ERR_BLOCKED_BY_CLIENT && !was_failed_post &&
+ !net::IsRequestBlockedError(error.reason()) && !was_failed_post &&
// Do not trigger for this error code because it is used by Chrome
// while an auth prompt is being displayed.
error.reason() != net::ERR_INVALID_AUTH_CREDENTIALS &&
@@ -133,11 +132,7 @@ void ErrorPageHelper::DidStartNavigation(
}
}
-void ErrorPageHelper::DidCommitProvisionalLoad(bool is_same_document_navigation,
- ui::PageTransition transition) {
- if (is_same_document_navigation)
- return;
-
+void ErrorPageHelper::DidCommitProvisionalLoad(ui::PageTransition transition) {
// If a page is committing, either it's an error page and autoreload will be
// started again below, or it's a success page and we need to clear autoreload
// state.
@@ -224,12 +219,17 @@ void ErrorPageHelper::SendCommand(
interface->ReportPhishingError();
break;
case security_interstitials::CMD_DO_REPORT:
+ // Used when user opts in to extended safe browsing
+ interface->DoReport();
+ break;
case security_interstitials::CMD_DONT_REPORT:
+ interface->DontReport();
+ break;
case security_interstitials::CMD_OPEN_REPORTING_PRIVACY:
+ interface->OpenReportingPrivacy();
+ break;
case security_interstitials::CMD_OPEN_WHITEPAPER:
- // Commands not used by the generic SSL error pages.
- // Also not currently used by the safebrowsing error pages.
- NOTREACHED();
+ interface->OpenWhitepaper();
break;
case security_interstitials::CMD_ERROR:
case security_interstitials::CMD_TEXT_FOUND:
diff --git a/chromium/weblayer/renderer/error_page_helper.h b/chromium/weblayer/renderer/error_page_helper.h
index 948ec3a7bfa..a134e113435 100644
--- a/chromium/weblayer/renderer/error_page_helper.h
+++ b/chromium/weblayer/renderer/error_page_helper.h
@@ -50,8 +50,7 @@ class ErrorPageHelper
void DidStartNavigation(
const GURL& url,
base::Optional<blink::WebNavigationType> navigation_type) override;
- void DidCommitProvisionalLoad(bool is_same_document_navigation,
- ui::PageTransition transition) override;
+ void DidCommitProvisionalLoad(ui::PageTransition transition) override;
void DidFinishLoad() override;
void OnStop() override;
void WasShown() override;
diff --git a/chromium/weblayer/renderer/weblayer_render_frame_observer.cc b/chromium/weblayer/renderer/weblayer_render_frame_observer.cc
index 6986b508257..ded0c16d562 100644
--- a/chromium/weblayer/renderer/weblayer_render_frame_observer.cc
+++ b/chromium/weblayer/renderer/weblayer_render_frame_observer.cc
@@ -38,7 +38,7 @@ WebLayerRenderFrameObserver::WebLayerRenderFrameObserver(
if (!render_frame->IsMainFrame())
return;
- // TODO(crbug.com/1025620): Handle case where subframe translation is enabled.
+ // TODO(crbug.com/1073370): Handle case where subframe translation is enabled.
DCHECK(!translate::IsSubFrameTranslationEnabled());
translate_agent_ =
new translate::TranslateAgent(render_frame, ISOLATED_WORLD_ID_TRANSLATE,