fix: page scaling in silent mode printing (#45283)
* fix: page scaling in silent mode printing * fix: FTBFS in print_renderer_frame_helper.cc * chore: e patches all --------- Co-authored-by: Charles Kerr <charles@charleskerr.com>
This commit is contained in:
parent
4a1c029f94
commit
bb616ba5ca
20 changed files with 81 additions and 73 deletions
|
@ -23,7 +23,7 @@ index ad0092ef2e13853e4bb8b923481559a043b00ab7..1c2dfd23f18733e21312992877ae1499
|
|||
int32_t world_id) {}
|
||||
virtual void DidClearWindowObject() {}
|
||||
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
|
||||
index 3d0544422f05e2edc02921fc39335bf10184028e..bf44c1ffef7df44448ee7b5b176c33348599f0be 100644
|
||||
index 6f932370352cb64a218ab93fa04f70a00947c228..df0a2685638b8f9b75f97ec96dd4c8706c013e7e 100644
|
||||
--- a/content/renderer/render_frame_impl.cc
|
||||
+++ b/content/renderer/render_frame_impl.cc
|
||||
@@ -4792,6 +4792,12 @@ void RenderFrameImpl::DidCreateScriptContext(v8::Local<v8::Context> context,
|
||||
|
|
|
@ -33,10 +33,10 @@ index 9580623c57cb02f7e924742c6cb1638676881115..ad80d8e63dfebbbdb8eaa63bfe38a6f8
|
|||
"//base",
|
||||
"//build:branding_buildflags",
|
||||
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
|
||||
index 3914cb63eed91e0e8a6eb8b64092c5dbe5348781..a6a24986f33fb79d3226840ffaa62448026f7383 100644
|
||||
index c2c22a92bccb2487319affed384cac10dbc839a8..d3bccc91ebe651d3075325aaf9d0c5114e238b85 100644
|
||||
--- a/chrome/browser/BUILD.gn
|
||||
+++ b/chrome/browser/BUILD.gn
|
||||
@@ -4525,7 +4525,7 @@ static_library("browser") {
|
||||
@@ -4524,7 +4524,7 @@ static_library("browser") {
|
||||
]
|
||||
}
|
||||
|
||||
|
|
|
@ -9,10 +9,10 @@ potentially prevent a window from being created.
|
|||
TODO(loc): this patch is currently broken.
|
||||
|
||||
diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc
|
||||
index 95b2ad64c83361c452f9256cf96873f2cd82b446..53f96ccd4954972bc78ebccf4bf479ac8564a8d3 100644
|
||||
index f58b9b0333e01f95ecf1b1d3fd3e273b675705cc..dae7654fc44e25ddc80dab4732b617f0784b47fc 100644
|
||||
--- a/content/browser/renderer_host/render_frame_host_impl.cc
|
||||
+++ b/content/browser/renderer_host/render_frame_host_impl.cc
|
||||
@@ -9179,6 +9179,7 @@ void RenderFrameHostImpl::CreateNewWindow(
|
||||
@@ -9187,6 +9187,7 @@ void RenderFrameHostImpl::CreateNewWindow(
|
||||
last_committed_origin_, params->window_container_type,
|
||||
params->target_url, params->referrer.To<Referrer>(),
|
||||
params->frame_name, params->disposition, *params->features,
|
||||
|
@ -21,10 +21,10 @@ index 95b2ad64c83361c452f9256cf96873f2cd82b446..53f96ccd4954972bc78ebccf4bf479ac
|
|||
&no_javascript_access);
|
||||
|
||||
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
|
||||
index ea5a63ce49a1eb99792be2eafc64c44ad6da0a60..a722f77502e8b896fb5d55df7cb44d45d13df04f 100644
|
||||
index 03b5291540931c40707fbd786645721336c72dae..67c946a84a6578eaf73f33c2ff42a55876b08404 100644
|
||||
--- a/content/browser/web_contents/web_contents_impl.cc
|
||||
+++ b/content/browser/web_contents/web_contents_impl.cc
|
||||
@@ -4891,6 +4891,12 @@ FrameTree* WebContentsImpl::CreateNewWindow(
|
||||
@@ -4893,6 +4893,12 @@ FrameTree* WebContentsImpl::CreateNewWindow(
|
||||
SetPartitionedPopinOpenerOnNewWindowIfNeeded(new_contents_impl, params,
|
||||
opener);
|
||||
|
||||
|
@ -37,7 +37,7 @@ index ea5a63ce49a1eb99792be2eafc64c44ad6da0a60..a722f77502e8b896fb5d55df7cb44d45
|
|||
// If the new frame has a name, make sure any SiteInstances that can find
|
||||
// this named frame have proxies for it. Must be called after
|
||||
// SetSessionStorageNamespace, since this calls CreateRenderView, which uses
|
||||
@@ -4932,12 +4938,6 @@ FrameTree* WebContentsImpl::CreateNewWindow(
|
||||
@@ -4934,12 +4940,6 @@ FrameTree* WebContentsImpl::CreateNewWindow(
|
||||
AddWebContentsDestructionObserver(new_contents_impl);
|
||||
}
|
||||
|
||||
|
@ -148,10 +148,10 @@ index 77ee6ba6c65c95622e41f86906ea813be62f72e9..7f38098505afabe1887a6d98a705f1ad
|
|||
// typically happens when popups are created.
|
||||
virtual void WebContentsCreated(WebContents* source_contents,
|
||||
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
|
||||
index 6fed6b4c7ad72bd90aeb9f6eea7a3081972c88f8..3d0544422f05e2edc02921fc39335bf10184028e 100644
|
||||
index a0e45dfcf20ed570f2751a8f194b4a82b46c87b6..6f932370352cb64a218ab93fa04f70a00947c228 100644
|
||||
--- a/content/renderer/render_frame_impl.cc
|
||||
+++ b/content/renderer/render_frame_impl.cc
|
||||
@@ -6849,6 +6849,10 @@ WebView* RenderFrameImpl::CreateNewWindow(
|
||||
@@ -6865,6 +6865,10 @@ WebView* RenderFrameImpl::CreateNewWindow(
|
||||
request.HasUserGesture(), GetWebFrame()->IsAdFrame(),
|
||||
GetWebFrame()->IsAdScriptInStack());
|
||||
|
||||
|
@ -210,10 +210,10 @@ index c576ace24e81cc877aa2595d40e0a13a7af9f6a2..210fb97d44c19c29af424cc7b9cb3169
|
|||
|
||||
} // namespace blink
|
||||
diff --git a/third_party/blink/renderer/core/frame/local_dom_window.cc b/third_party/blink/renderer/core/frame/local_dom_window.cc
|
||||
index 00a4ed4f0625981e3bef338399957419d2cffdf0..d0db7f8727dc2fbe0a9ae0489a6aa4e278e1cb34 100644
|
||||
index ba53e2576ff7944071fd46c2d4d8635084738cb3..fb38a3b96cd32720096b106845f706d113f1794e 100644
|
||||
--- a/third_party/blink/renderer/core/frame/local_dom_window.cc
|
||||
+++ b/third_party/blink/renderer/core/frame/local_dom_window.cc
|
||||
@@ -2234,6 +2234,8 @@ DOMWindow* LocalDOMWindow::open(v8::Isolate* isolate,
|
||||
@@ -2235,6 +2235,8 @@ DOMWindow* LocalDOMWindow::open(v8::Isolate* isolate,
|
||||
WebWindowFeatures window_features =
|
||||
GetWindowFeaturesFromString(features, entered_window);
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From 1282289030ab2026a8db4fb82dc6e20d3bf028be Mon Sep 17 00:00:00 2001
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Kevin Ellis <kevers@google.com>
|
||||
Date: Thu, 12 Dec 2024 06:47:30 -0800
|
||||
Subject: [PATCH] Prune superfluous calls to SetCompositorPending
|
||||
Subject: Prune superfluous calls to SetCompositorPending
|
||||
|
||||
We only need to call SetCompositorPending with the pending cancel
|
||||
reason if the animation is running on the compositor.
|
||||
|
@ -17,13 +17,12 @@ Reviewed-by: Robert Flack <flackr@chromium.org>
|
|||
Commit-Queue: Kevin Ellis <kevers@chromium.org>
|
||||
Reviewed-by: Claire Chambers <clchambers@microsoft.com>
|
||||
Cr-Commit-Position: refs/heads/main@{#1395390}
|
||||
---
|
||||
|
||||
diff --git a/third_party/blink/renderer/core/animation/animation.cc b/third_party/blink/renderer/core/animation/animation.cc
|
||||
index 9e162a6f..b58b017 100644
|
||||
index 1b384beef682c87b4bec3c9233d45529c5569b56..694ca51b1a59270289fabe70dbb381167fc89a83 100644
|
||||
--- a/third_party/blink/renderer/core/animation/animation.cc
|
||||
+++ b/third_party/blink/renderer/core/animation/animation.cc
|
||||
@@ -1271,14 +1271,7 @@
|
||||
@@ -1269,14 +1269,7 @@ void Animation::setEffect(AnimationEffect* new_effect) {
|
||||
ResolveTimelineOffsets(timeline_ ? timeline_->GetTimelineRange()
|
||||
: TimelineRange());
|
||||
|
||||
|
@ -39,7 +38,7 @@ index 9e162a6f..b58b017 100644
|
|||
|
||||
// Notify of a potential state change.
|
||||
NotifyProbe();
|
||||
@@ -2375,6 +2368,26 @@
|
||||
@@ -2373,6 +2366,26 @@ void Animation::StartAnimationOnCompositor(
|
||||
timeline()->IsMonotonicallyIncreasing(), boundary_aligned);
|
||||
}
|
||||
|
||||
|
@ -66,7 +65,7 @@ index 9e162a6f..b58b017 100644
|
|||
// TODO(crbug.com/960944): Rename to SetPendingCommit. This method handles both
|
||||
// composited and non-composited animations. The use of 'compositor' in the name
|
||||
// is confusing.
|
||||
@@ -2833,7 +2846,7 @@
|
||||
@@ -2831,7 +2844,7 @@ bool Animation::Update(TimingUpdateReason reason) {
|
||||
// After updating the animation time if the animation is no longer current
|
||||
// blink will no longer composite the element (see
|
||||
// CompositingReasonFinder::RequiresCompositingFor*Animation).
|
||||
|
@ -75,7 +74,7 @@ index 9e162a6f..b58b017 100644
|
|||
SetCompositorPending(CompositorPendingReason::kPendingCancel);
|
||||
}
|
||||
}
|
||||
@@ -2874,6 +2887,9 @@
|
||||
@@ -2872,6 +2885,9 @@ void Animation::UpdateIfNecessary() {
|
||||
}
|
||||
|
||||
void Animation::EffectInvalidated() {
|
||||
|
@ -85,7 +84,7 @@ index 9e162a6f..b58b017 100644
|
|||
SetOutdated();
|
||||
UpdateFinishedState(UpdateType::kContinuous, NotificationType::kAsync);
|
||||
// FIXME: Needs to consider groups when added.
|
||||
@@ -3381,15 +3397,22 @@
|
||||
@@ -3379,15 +3395,22 @@ bool Animation::IsInDisplayLockedSubtree() {
|
||||
}
|
||||
|
||||
void Animation::UpdateCompositedPaintStatus() {
|
||||
|
@ -110,7 +109,7 @@ index 9e162a6f..b58b017 100644
|
|||
Element* target = keyframe_effect->EffectTarget();
|
||||
if (!target) {
|
||||
return;
|
||||
@@ -3398,14 +3421,7 @@
|
||||
@@ -3396,14 +3419,7 @@ void Animation::UpdateCompositedPaintStatus() {
|
||||
ElementAnimations* element_animations = target->GetElementAnimations();
|
||||
DCHECK(element_animations);
|
||||
|
||||
|
@ -127,10 +126,10 @@ index 9e162a6f..b58b017 100644
|
|||
|
||||
void Animation::Trace(Visitor* visitor) const {
|
||||
diff --git a/third_party/blink/renderer/core/animation/animation.h b/third_party/blink/renderer/core/animation/animation.h
|
||||
index 61007d7..bc0a891 100644
|
||||
index c20180d785ca62417ba5e05417462fec5beeae5b..cfd2b44724c86b272982dee4db54ed5191e51d22 100644
|
||||
--- a/third_party/blink/renderer/core/animation/animation.h
|
||||
+++ b/third_party/blink/renderer/core/animation/animation.h
|
||||
@@ -393,6 +393,15 @@
|
||||
@@ -393,6 +393,15 @@ class CORE_EXPORT Animation : public EventTarget,
|
||||
start_time_ = start_time;
|
||||
}
|
||||
|
||||
|
@ -146,7 +145,7 @@ index 61007d7..bc0a891 100644
|
|||
protected:
|
||||
DispatchEventResult DispatchEventInternal(Event&) override;
|
||||
void AddedEventListener(const AtomicString& event_type,
|
||||
@@ -583,6 +592,13 @@
|
||||
@@ -583,6 +592,13 @@ class CORE_EXPORT Animation : public EventTarget,
|
||||
|
||||
Member<Event> pending_remove_event_;
|
||||
|
||||
|
@ -161,10 +160,10 @@ index 61007d7..bc0a891 100644
|
|||
// mutually exclusive pending_play_ and pending_pause_ flags.
|
||||
enum class CompositorAction { kNone, kStart, kCancel };
|
||||
diff --git a/third_party/blink/renderer/core/animation/element_animations.cc b/third_party/blink/renderer/core/animation/element_animations.cc
|
||||
index ca2864f..b1f3b32 100644
|
||||
index ca2864f2f7ef8b8969d63a25e85f23f5c9a97b74..b1f3b32332af4f948bb2598f1646f29c97660413 100644
|
||||
--- a/third_party/blink/renderer/core/animation/element_animations.cc
|
||||
+++ b/third_party/blink/renderer/core/animation/element_animations.cc
|
||||
@@ -97,43 +97,59 @@
|
||||
@@ -97,43 +97,59 @@ void ElementAnimations::RecalcCompositedStatusForKeyframeChange(
|
||||
Element& element,
|
||||
AnimationEffect* effect) {
|
||||
if (KeyframeEffect* keyframe_effect = DynamicTo<KeyframeEffect>(effect)) {
|
||||
|
@ -251,10 +250,10 @@ index ca2864f..b1f3b32 100644
|
|||
element->GetLayoutObject()->SetShouldDoFullPaintInvalidation();
|
||||
// For clip paths, we also need to update the paint properties to switch
|
||||
diff --git a/third_party/blink/renderer/core/animation/element_animations.h b/third_party/blink/renderer/core/animation/element_animations.h
|
||||
index 624f542..3171061 100644
|
||||
index 624f542785befe6ce92e7f75eb8595a2015a77ef..3171061ceb1a0dad426481454d3698c1eee22fd0 100644
|
||||
--- a/third_party/blink/renderer/core/animation/element_animations.h
|
||||
+++ b/third_party/blink/renderer/core/animation/element_animations.h
|
||||
@@ -120,7 +120,7 @@
|
||||
@@ -120,7 +120,7 @@ class CORE_EXPORT ElementAnimations final
|
||||
|
||||
void RecalcCompositedStatusForKeyframeChange(Element& element,
|
||||
AnimationEffect* effect);
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From 3dc17c461b12fd735c1173a90a2ca62c086a4110 Mon Sep 17 00:00:00 2001
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Orko Garai <orko@igalia.com>
|
||||
Date: Fri, 29 Nov 2024 16:17:04 +0000
|
||||
Subject: [PATCH] Wayland IME: Underline composition text fallback
|
||||
Subject: Wayland IME: Underline composition text fallback
|
||||
|
||||
At this time text-input-v3 does not provide any styling information.
|
||||
As a quality-of-life improvement, ensure that a default composition
|
||||
|
@ -17,13 +17,12 @@ Commit-Queue: Orko Garai <orko@igalia.com>
|
|||
Reviewed-by: Darren Shen <shend@chromium.org>
|
||||
Reviewed-by: Kramer Ge <fangzhoug@chromium.org>
|
||||
Cr-Commit-Position: refs/heads/main@{#1389833}
|
||||
---
|
||||
|
||||
diff --git a/ui/ozone/platform/wayland/host/wayland_input_method_context.cc b/ui/ozone/platform/wayland/host/wayland_input_method_context.cc
|
||||
index 715e181a..2cfa5cc 100644
|
||||
index a063ff09e6c388242b94dca73d31b586f12e80a1..23d9918afde6847a3776d810ed60738c59f80c30 100644
|
||||
--- a/ui/ozone/platform/wayland/host/wayland_input_method_context.cc
|
||||
+++ b/ui/ozone/platform/wayland/host/wayland_input_method_context.cc
|
||||
@@ -530,6 +530,7 @@
|
||||
@@ -552,6 +552,7 @@ void WaylandInputMethodContext::OnPreeditString(
|
||||
const gfx::Range& preedit_cursor) {
|
||||
CompositionText composition_text;
|
||||
composition_text.text = base::UTF8ToUTF16(text);
|
||||
|
@ -31,7 +30,7 @@ index 715e181a..2cfa5cc 100644
|
|||
for (const auto& span : spans) {
|
||||
auto start_offset = OffsetFromUTF8Offset(text, span.index);
|
||||
if (!start_offset)
|
||||
@@ -540,9 +541,18 @@
|
||||
@@ -562,9 +563,18 @@ void WaylandInputMethodContext::OnPreeditString(
|
||||
const auto& style = span.style;
|
||||
if (!style.has_value())
|
||||
continue;
|
||||
|
@ -51,10 +50,10 @@ index 715e181a..2cfa5cc 100644
|
|||
// This is the case if a preceding preedit_cursor event in text-input-v1 was
|
||||
// not received or an explicit negative value was requested to hide the
|
||||
diff --git a/ui/ozone/platform/wayland/host/wayland_input_method_context_unittest.cc b/ui/ozone/platform/wayland/host/wayland_input_method_context_unittest.cc
|
||||
index d005de4..dbb339d 100644
|
||||
index 7fed0c0a206c98764abbe2fc22110dc31b9fdbd8..24b90a83f2dad3a29634549fc4716980fe409d52 100644
|
||||
--- a/ui/ozone/platform/wayland/host/wayland_input_method_context_unittest.cc
|
||||
+++ b/ui/ozone/platform/wayland/host/wayland_input_method_context_unittest.cc
|
||||
@@ -1174,6 +1174,34 @@
|
||||
@@ -1174,6 +1174,34 @@ TEST_P(WaylandInputMethodContextTest, SetInputTypeAfterFocus) {
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -89,7 +88,7 @@ index d005de4..dbb339d 100644
|
|||
TEST_P(WaylandInputMethodContextTest, OnPreeditChanged) {
|
||||
constexpr std::string_view kPreeditString("PreeditString");
|
||||
constexpr gfx::Range kSelection{7, 13};
|
||||
@@ -1181,13 +1209,19 @@
|
||||
@@ -1181,13 +1209,19 @@ TEST_P(WaylandInputMethodContextTest, OnPreeditChanged) {
|
||||
kPreeditString,
|
||||
{{0,
|
||||
static_cast<uint32_t>(kPreeditString.size()),
|
||||
|
|
|
@ -14,10 +14,10 @@ track down the source of this problem & figure out if we can fix it
|
|||
by changing something in Electron.
|
||||
|
||||
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
|
||||
index 5469931a7c4dc7ad8b98f5ac54c5538a7ba23a78..9bd28a4029de17833d5147986736747075ff35bc 100644
|
||||
index d1bfb30a063fb1be05cb7e3c888ed47d13935585..6c5a64fed98b7120ff2426066fbfadf5c2a6d9a0 100644
|
||||
--- a/content/browser/web_contents/web_contents_impl.cc
|
||||
+++ b/content/browser/web_contents/web_contents_impl.cc
|
||||
@@ -4817,9 +4817,6 @@ FrameTree* WebContentsImpl::CreateNewWindow(
|
||||
@@ -4819,9 +4819,6 @@ FrameTree* WebContentsImpl::CreateNewWindow(
|
||||
bool renderer_started_hidden =
|
||||
params.disposition == WindowOpenDisposition::NEW_BACKGROUND_TAB;
|
||||
|
||||
|
|
|
@ -190,10 +190,10 @@ index 6c89a03712b9449e1a7b0e38ed9d019b30029c15..50b324ef3f1163e462ad145e58b42bf3
|
|||
void SetContentsBounds(content::WebContents* source,
|
||||
const gfx::Rect& bounds) override;
|
||||
diff --git a/components/offline_pages/content/background_loader/background_loader_contents.cc b/components/offline_pages/content/background_loader/background_loader_contents.cc
|
||||
index 072e7d0dde701a8f2d1de2704c8a056363324390..9e5ace2b1f32d5e5c542439f5365f9d9458cbf37 100644
|
||||
index e0e9a5a8c1d8c242d39935e2456052619af33cc6..80518793447c70e8fc1dae9b42a59d40427ae52b 100644
|
||||
--- a/components/offline_pages/content/background_loader/background_loader_contents.cc
|
||||
+++ b/components/offline_pages/content/background_loader/background_loader_contents.cc
|
||||
@@ -85,8 +85,7 @@ bool BackgroundLoaderContents::IsWebContentsCreationOverridden(
|
||||
@@ -89,8 +89,7 @@ bool BackgroundLoaderContents::IsWebContentsCreationOverridden(
|
||||
content::SiteInstance* source_site_instance,
|
||||
content::mojom::WindowContainerType window_container_type,
|
||||
const GURL& opener_url,
|
||||
|
@ -218,10 +218,10 @@ index c6838c83ef971b88769b1f3fba8095025ae25464..2da6a4e08340e72ba7de5d03444c2f17
|
|||
content::WebContents* AddNewContents(
|
||||
content::WebContents* source,
|
||||
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
|
||||
index 1f0b9a602a9e6cf565818ad584688b783fe3430b..1d1d761f8c7ff09cbd2c6a567e070ac41d3a1759 100644
|
||||
index eecd6fee29f6fd45299e8f8790c65dc76b6cb93f..aed9541bc931ccbc1f8d80a6ce4dfe055db59da2 100644
|
||||
--- a/content/browser/web_contents/web_contents_impl.cc
|
||||
+++ b/content/browser/web_contents/web_contents_impl.cc
|
||||
@@ -4786,8 +4786,7 @@ FrameTree* WebContentsImpl::CreateNewWindow(
|
||||
@@ -4788,8 +4788,7 @@ FrameTree* WebContentsImpl::CreateNewWindow(
|
||||
|
||||
if (delegate_ && delegate_->IsWebContentsCreationOverridden(
|
||||
source_site_instance, params.window_container_type,
|
||||
|
|
|
@ -24,10 +24,10 @@ This patch temporarily disables the metrics so we can have green CI, and we
|
|||
should continue seeking for a real fix.
|
||||
|
||||
diff --git a/content/browser/renderer_host/navigator.cc b/content/browser/renderer_host/navigator.cc
|
||||
index 53e54257aabbede66de278b0248c1c9959175143..69942e83c88d9c7eb99bd7b0eeae5c7b97356f17 100644
|
||||
index adbe15bbbde7096970ec4098b1aa4fbb5ba48df5..9207aff59ec5fc9733e1e161ba2688a614e8e069 100644
|
||||
--- a/content/browser/renderer_host/navigator.cc
|
||||
+++ b/content/browser/renderer_host/navigator.cc
|
||||
@@ -1435,6 +1435,7 @@ void Navigator::RecordNavigationMetrics(
|
||||
@@ -1450,6 +1450,7 @@ void Navigator::RecordNavigationMetrics(
|
||||
.InMilliseconds());
|
||||
}
|
||||
|
||||
|
@ -35,7 +35,7 @@ index 53e54257aabbede66de278b0248c1c9959175143..69942e83c88d9c7eb99bd7b0eeae5c7b
|
|||
// If this is a same-process navigation and we have timestamps for unload
|
||||
// durations, fill those metrics out as well.
|
||||
if (params.unload_start && params.unload_end &&
|
||||
@@ -1484,6 +1485,7 @@ void Navigator::RecordNavigationMetrics(
|
||||
@@ -1499,6 +1500,7 @@ void Navigator::RecordNavigationMetrics(
|
||||
first_before_unload_start_time)
|
||||
.InMilliseconds());
|
||||
}
|
||||
|
|
|
@ -33,10 +33,10 @@ index 0ab8187b0db8ae6db46d81738f653a2bc4c566f6..de3d55e85c22317f7f9375eb94d0d5d4
|
|||
|
||||
} // namespace net
|
||||
diff --git a/services/network/network_context.cc b/services/network/network_context.cc
|
||||
index 4be02fdb03038ee4c30ea699cbbf56d1f5aaa7aa..b0a994b7c6d4be648d905bc1e4157bc03b56a428 100644
|
||||
index c5199a66320bfdb7abda0878b7ae24e02f49b420..4f043e19acecfd7defcb79d397538168bb6bd42a 100644
|
||||
--- a/services/network/network_context.cc
|
||||
+++ b/services/network/network_context.cc
|
||||
@@ -1793,6 +1793,13 @@ void NetworkContext::SetNetworkConditions(
|
||||
@@ -1796,6 +1796,13 @@ void NetworkContext::SetNetworkConditions(
|
||||
std::move(network_conditions));
|
||||
}
|
||||
|
||||
|
|
|
@ -87,10 +87,10 @@ index 51522e60d6dc14f1113cc438558b6b393c3fe73a..153ed02f493a83ef9ca354cc18736f93
|
|||
// The view with active text input state, i.e., a focused <input> element.
|
||||
// It will be nullptr if no such view exists. Note that the active view
|
||||
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
|
||||
index f8872945d67dacbdb9c3d610ff3719039eca7c94..5469931a7c4dc7ad8b98f5ac54c5538a7ba23a78 100644
|
||||
index 53e3bc48242f07bd984308583b1f999360f4e9d2..d1bfb30a063fb1be05cb7e3c888ed47d13935585 100644
|
||||
--- a/content/browser/web_contents/web_contents_impl.cc
|
||||
+++ b/content/browser/web_contents/web_contents_impl.cc
|
||||
@@ -9393,7 +9393,7 @@ void WebContentsImpl::OnFocusedElementChangedInFrame(
|
||||
@@ -9395,7 +9395,7 @@ void WebContentsImpl::OnFocusedElementChangedInFrame(
|
||||
"WebContentsImpl::OnFocusedElementChangedInFrame",
|
||||
"render_frame_host", frame);
|
||||
RenderWidgetHostViewBase* root_view =
|
||||
|
|
|
@ -10,10 +10,10 @@ process CompositingModeFallbackToSoftware IPC to disable GPU compositing.
|
|||
https://issues.chromium.org/345275130
|
||||
|
||||
diff --git a/third_party/blink/renderer/platform/widget/compositing/layer_tree_view.cc b/third_party/blink/renderer/platform/widget/compositing/layer_tree_view.cc
|
||||
index 001e931ba705a1a52dfbcb717fe8e30b7014fde8..c545a7257e561f86aecc336769c0dd22c9772465 100644
|
||||
index b2569e7ce111e9fd8ab76a0adebfa35c8487f53e..898528a7a0ffa279eda5ba9f81eb73b84431577b 100644
|
||||
--- a/third_party/blink/renderer/platform/widget/compositing/layer_tree_view.cc
|
||||
+++ b/third_party/blink/renderer/platform/widget/compositing/layer_tree_view.cc
|
||||
@@ -381,9 +381,13 @@ void LayerTreeView::DidFailToInitializeLayerTreeFrameSink() {
|
||||
@@ -387,9 +387,13 @@ void LayerTreeView::DidFailToInitializeLayerTreeFrameSink() {
|
||||
// unable to be killed after Chrome is closed.
|
||||
// https://issues.chromium.org/336164423
|
||||
if (!Platform::Current()->IsGpuRemoteDisconnected()) {
|
||||
|
|
|
@ -7,7 +7,7 @@ This adds a callback from the network service that's used to implement
|
|||
session.setCertificateVerifyCallback.
|
||||
|
||||
diff --git a/services/network/network_context.cc b/services/network/network_context.cc
|
||||
index cae84c27a26d6198d9da5913b008e748d6680037..4be02fdb03038ee4c30ea699cbbf56d1f5aaa7aa 100644
|
||||
index f03bc67fbd15625b4935c0333f1b3f129a8ce246..c5199a66320bfdb7abda0878b7ae24e02f49b420 100644
|
||||
--- a/services/network/network_context.cc
|
||||
+++ b/services/network/network_context.cc
|
||||
@@ -158,6 +158,11 @@
|
||||
|
@ -122,7 +122,7 @@ index cae84c27a26d6198d9da5913b008e748d6680037..4be02fdb03038ee4c30ea699cbbf56d1
|
|||
constexpr uint32_t NetworkContext::kMaxOutstandingRequestsPerProcess;
|
||||
|
||||
NetworkContext::NetworkContextHttpAuthPreferences::
|
||||
@@ -1000,6 +1098,13 @@ void NetworkContext::SetClient(
|
||||
@@ -1003,6 +1101,13 @@ void NetworkContext::SetClient(
|
||||
client_.Bind(std::move(client));
|
||||
}
|
||||
|
||||
|
@ -136,7 +136,7 @@ index cae84c27a26d6198d9da5913b008e748d6680037..4be02fdb03038ee4c30ea699cbbf56d1
|
|||
void NetworkContext::CreateURLLoaderFactory(
|
||||
mojo::PendingReceiver<mojom::URLLoaderFactory> receiver,
|
||||
mojom::URLLoaderFactoryParamsPtr params) {
|
||||
@@ -2569,6 +2674,9 @@ URLRequestContextOwner NetworkContext::MakeURLRequestContext(
|
||||
@@ -2572,6 +2677,9 @@ URLRequestContextOwner NetworkContext::MakeURLRequestContext(
|
||||
std::move(cert_verifier));
|
||||
cert_verifier = std::move(cert_verifier_with_trust_anchors);
|
||||
#endif // BUILDFLAG(IS_CHROMEOS)
|
||||
|
|
|
@ -133,7 +133,7 @@ index 05d3a12dd84c7005d46cc73b312f97ef418d96f5..4765de982802541b3efc7211d106acc7
|
|||
const GURL& document_url,
|
||||
const WeakDocumentPtr& weak_document_ptr,
|
||||
diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc
|
||||
index 09b7137cd3e26a1aef2c93ff7f08641df56704c0..732978b9650cac5102007c27b9226ff053c92d4f 100644
|
||||
index 10a3e987def641bc3504d20a591cc95f1b9fe84f..eca2f5da88dd911ce64824479aac01320840cc22 100644
|
||||
--- a/content/browser/renderer_host/render_process_host_impl.cc
|
||||
+++ b/content/browser/renderer_host/render_process_host_impl.cc
|
||||
@@ -2106,7 +2106,7 @@ void RenderProcessHostImpl::CreateNotificationService(
|
||||
|
|
|
@ -10,7 +10,7 @@ an about:blank check to this area.
|
|||
Ref: https://chromium-review.googlesource.com/c/chromium/src/+/5403876
|
||||
|
||||
diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc
|
||||
index 7b7e21c5b4b2e6657965c4433c6f9bc064a4ef9f..5abddf5b5cf2ab5e8e03066143b1824908257e87 100644
|
||||
index 8938f2b9d680c1850958b4a0a8794c351f318524..3e23e69b59be317a1a316d562a66d6a7378bf3a9 100644
|
||||
--- a/content/browser/renderer_host/render_frame_host_impl.cc
|
||||
+++ b/content/browser/renderer_host/render_frame_host_impl.cc
|
||||
@@ -784,8 +784,8 @@ void VerifyThatBrowserAndRendererCalculatedOriginsToCommitMatch(
|
||||
|
|
|
@ -653,7 +653,7 @@ index 3c2fdc9f9a6c60efc4b0afacbfb83eef55917791..8fd9aff538fa03da6c171927c316d4f6
|
|||
PrintingFailed(int32 cookie, PrintFailureReason reason);
|
||||
|
||||
diff --git a/components/printing/renderer/print_render_frame_helper.cc b/components/printing/renderer/print_render_frame_helper.cc
|
||||
index 423cea4420bc868baad6260fb7c6b33430eaaf95..2b105dc1fb2a7b06fe717df9edf897446aca606c 100644
|
||||
index 423cea4420bc868baad6260fb7c6b33430eaaf95..4a51a5156b9e15e2bbfac521cfbb3f397acaeccc 100644
|
||||
--- a/components/printing/renderer/print_render_frame_helper.cc
|
||||
+++ b/components/printing/renderer/print_render_frame_helper.cc
|
||||
@@ -52,6 +52,7 @@
|
||||
|
@ -771,7 +771,7 @@ index 423cea4420bc868baad6260fb7c6b33430eaaf95..2b105dc1fb2a7b06fe717df9edf89744
|
|||
// Check if `this` is still valid.
|
||||
if (!self)
|
||||
return;
|
||||
@@ -2360,29 +2375,37 @@ void PrintRenderFrameHelper::IPCProcessed() {
|
||||
@@ -2360,29 +2375,44 @@ void PrintRenderFrameHelper::IPCProcessed() {
|
||||
}
|
||||
|
||||
bool PrintRenderFrameHelper::InitPrintSettings(blink::WebLocalFrame* frame,
|
||||
|
@ -801,12 +801,22 @@ index 423cea4420bc868baad6260fb7c6b33430eaaf95..2b105dc1fb2a7b06fe717df9edf89744
|
|||
return false;
|
||||
}
|
||||
|
||||
bool center_on_paper = !IsPrintingPdfFrame(frame, node);
|
||||
- bool center_on_paper = !IsPrintingPdfFrame(frame, node);
|
||||
- settings.params->print_scaling_option =
|
||||
+ settings->params->print_scaling_option =
|
||||
center_on_paper ? mojom::PrintScalingOption::kCenterShrinkToFitPaper
|
||||
: mojom::PrintScalingOption::kSourceSize;
|
||||
- center_on_paper ? mojom::PrintScalingOption::kCenterShrinkToFitPaper
|
||||
- : mojom::PrintScalingOption::kSourceSize;
|
||||
- RecordDebugEvent(settings.params->printed_doc_type ==
|
||||
+ bool silent = new_settings.FindBool("silent").value_or(false);
|
||||
+ if (silent) {
|
||||
+ settings->params->print_scaling_option = mojom::PrintScalingOption::kFitToPrintableArea;
|
||||
+ } else {
|
||||
+ const auto plugin_node = delegate_->GetPdfElement(frame);
|
||||
+ const bool center_on_paper = !IsPrintingPdfFrame(frame, plugin_node);
|
||||
+ settings->params->print_scaling_option =
|
||||
+ center_on_paper ? mojom::PrintScalingOption::kCenterShrinkToFitPaper
|
||||
+ : mojom::PrintScalingOption::kSourceSize;
|
||||
+ }
|
||||
+
|
||||
+ RecordDebugEvent(settings->params->printed_doc_type ==
|
||||
mojom::SkiaDocumentType::kMSKP
|
||||
? DebugEvent::kSetPrintSettings5
|
||||
|
|
|
@ -44,10 +44,10 @@ index 886d70636aedfa714b29625f58420ad11ede9ffd..7906b94983733a9deb2365fb2a134619
|
|||
|
||||
void RenderWidgetHostImpl::ShowContextMenuAtPoint(
|
||||
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
|
||||
index a722f77502e8b896fb5d55df7cb44d45d13df04f..1f0b9a602a9e6cf565818ad584688b783fe3430b 100644
|
||||
index 67c946a84a6578eaf73f33c2ff42a55876b08404..eecd6fee29f6fd45299e8f8790c65dc76b6cb93f 100644
|
||||
--- a/content/browser/web_contents/web_contents_impl.cc
|
||||
+++ b/content/browser/web_contents/web_contents_impl.cc
|
||||
@@ -5616,6 +5616,11 @@ TextInputManager* WebContentsImpl::GetTextInputManager() {
|
||||
@@ -5618,6 +5618,11 @@ TextInputManager* WebContentsImpl::GetTextInputManager() {
|
||||
return text_input_manager_.get();
|
||||
}
|
||||
|
||||
|
|
|
@ -15,10 +15,10 @@ This CL removes these filters so the unresponsive event can still be
|
|||
accessed from our JS event. The filtering is moved into Electron's code.
|
||||
|
||||
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
|
||||
index 9bd28a4029de17833d5147986736747075ff35bc..140e94cd6dfba03260ff9e2cf4b38459cdaaf9ba 100644
|
||||
index 6c5a64fed98b7120ff2426066fbfadf5c2a6d9a0..d7f7bfe232d6eeca8e75d6f3ce3fafbc7515727a 100644
|
||||
--- a/content/browser/web_contents/web_contents_impl.cc
|
||||
+++ b/content/browser/web_contents/web_contents_impl.cc
|
||||
@@ -9527,25 +9527,13 @@ void WebContentsImpl::RendererUnresponsive(
|
||||
@@ -9529,25 +9529,13 @@ void WebContentsImpl::RendererUnresponsive(
|
||||
base::RepeatingClosure hang_monitor_restarter) {
|
||||
OPTIONAL_TRACE_EVENT1("content", "WebContentsImpl::RendererUnresponsive",
|
||||
"render_widget_host", render_widget_host);
|
||||
|
|
|
@ -22,7 +22,7 @@ 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 732978b9650cac5102007c27b9226ff053c92d4f..851eff886b5827e362b260f6a954a9081417b067 100644
|
||||
index eca2f5da88dd911ce64824479aac01320840cc22..12aa181c5dd8782c1901cc92b12039fd28e712b5 100644
|
||||
--- a/content/browser/renderer_host/render_process_host_impl.cc
|
||||
+++ b/content/browser/renderer_host/render_process_host_impl.cc
|
||||
@@ -1754,6 +1754,10 @@ bool RenderProcessHostImpl::Init() {
|
||||
|
|
|
@ -9,7 +9,7 @@ is needed for OSR.
|
|||
Originally landed in https://github.com/electron/libchromiumcontent/pull/226.
|
||||
|
||||
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
|
||||
index 1d1d761f8c7ff09cbd2c6a567e070ac41d3a1759..50dd1fe97063a3d763461fe3ff7af340e7c4ad05 100644
|
||||
index aed9541bc931ccbc1f8d80a6ce4dfe055db59da2..c4185b6238acefefc89b421a6e7fd0744f07ca17 100644
|
||||
--- a/content/browser/web_contents/web_contents_impl.cc
|
||||
+++ b/content/browser/web_contents/web_contents_impl.cc
|
||||
@@ -3758,6 +3758,13 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params,
|
||||
|
|
|
@ -15,10 +15,10 @@ Note that we also need to manually update embedder's
|
|||
`api::WebContents::IsFullscreenForTabOrPending` value.
|
||||
|
||||
diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc
|
||||
index 53f96ccd4954972bc78ebccf4bf479ac8564a8d3..7b7e21c5b4b2e6657965c4433c6f9bc064a4ef9f 100644
|
||||
index dae7654fc44e25ddc80dab4732b617f0784b47fc..8938f2b9d680c1850958b4a0a8794c351f318524 100644
|
||||
--- a/content/browser/renderer_host/render_frame_host_impl.cc
|
||||
+++ b/content/browser/renderer_host/render_frame_host_impl.cc
|
||||
@@ -8286,6 +8286,17 @@ void RenderFrameHostImpl::EnterFullscreen(
|
||||
@@ -8294,6 +8294,17 @@ void RenderFrameHostImpl::EnterFullscreen(
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -37,7 +37,7 @@ index 53f96ccd4954972bc78ebccf4bf479ac8564a8d3..7b7e21c5b4b2e6657965c4433c6f9bc0
|
|||
if (had_fullscreen_token && !GetView()->HasFocus())
|
||||
GetView()->Focus();
|
||||
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
|
||||
index 50dd1fe97063a3d763461fe3ff7af340e7c4ad05..f8872945d67dacbdb9c3d610ff3719039eca7c94 100644
|
||||
index c4185b6238acefefc89b421a6e7fd0744f07ca17..53e3bc48242f07bd984308583b1f999360f4e9d2 100644
|
||||
--- a/content/browser/web_contents/web_contents_impl.cc
|
||||
+++ b/content/browser/web_contents/web_contents_impl.cc
|
||||
@@ -4015,21 +4015,25 @@ KeyboardEventProcessingResult WebContentsImpl::PreHandleKeyboardEvent(
|
||||
|
|
Loading…
Add table
Reference in a new issue