Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Unverified Commit 636be819 authored by Carmelo Messina's avatar Carmelo Messina
Browse files

v109

parent 0062d670
Loading
Loading
Loading
Loading
+37 −37
Original line number Diff line number Diff line
@@ -31,8 +31,8 @@ The feature is controlled by a feature flag (default enabled)
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -7627,6 +7627,11 @@ const FeatureEntry kFeatureEntries[] = {
                                     "PaintPreviewShowOnStartup")},
@@ -7768,6 +7768,11 @@ const FeatureEntry kFeatureEntries[] = {
      FEATURE_VALUE_TYPE(paint_preview::kPaintPreviewDemo)},
 #endif  // BUILDFLAG(ENABLE_PAINT_PREVIEW) && BUILDFLAG(IS_ANDROID)
 
+    {"viewport-protection",
@@ -46,8 +46,8 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
--- a/chrome/browser/flag_descriptions.cc
+++ b/chrome/browser/flag_descriptions.cc
@@ -6847,6 +6847,12 @@ const char kPaintPreviewStartupDescription[] =
     "instead.";
@@ -6654,6 +6654,12 @@ const char kPaintPreviewDemoDescription[] =
     "previews.";
 #endif  // ENABLE_PAINT_PREVIEW && BUILDFLAG(IS_ANDROID)
 
+const char kViewportProtectionName[] = "Viewport Protection";
@@ -62,8 +62,8 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -3948,6 +3948,9 @@ extern const char kPaintPreviewStartupName[];
 extern const char kPaintPreviewStartupDescription[];
@@ -3857,6 +3857,9 @@ extern const char kPaintPreviewDemoName[];
 extern const char kPaintPreviewDemoDescription[];
 #endif  // ENABLE_PAINT_PREVIEW && BUILDFLAG(IS_ANDROID)
 
+extern const char kViewportProtectionName[];
@@ -75,8 +75,8 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio
diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/features.cc
--- a/third_party/blink/common/features.cc
+++ b/third_party/blink/common/features.cc
@@ -1637,6 +1637,10 @@ BASE_FEATURE(kDocumentEventNodePathCaching,
              "DocumentEventNodePathCaching",
@@ -1668,6 +1668,10 @@ BASE_FEATURE(kNewBaseUrlInheritanceBehavior,
              "NewBaseUrlInheritanceBehavior",
              base::FEATURE_DISABLED_BY_DEFAULT);
 
+BASE_FEATURE(kViewportProtection,
@@ -89,9 +89,9 @@ diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/fea
diff --git a/third_party/blink/public/common/features.h b/third_party/blink/public/common/features.h
--- a/third_party/blink/public/common/features.h
+++ b/third_party/blink/public/common/features.h
@@ -867,6 +867,9 @@ BLINK_COMMON_EXPORT BASE_DECLARE_FEATURE(kThreadedBodyLoader);
 // If enabled, will cache for each node's EventPath::NodePath in document.
 BLINK_COMMON_EXPORT BASE_DECLARE_FEATURE(kDocumentEventNodePathCaching);
@@ -933,6 +933,9 @@ BLINK_COMMON_EXPORT extern const base::FeatureParam<
 // base url inheritance behavior from https://crbug.com/1356658.
 BLINK_COMMON_EXPORT BASE_DECLARE_FEATURE(kNewBaseUrlInheritanceBehavior);
 
+// Enable blink viewport protection
+BLINK_COMMON_EXPORT BASE_DECLARE_FEATURE(kViewportProtection);
@@ -125,22 +125,22 @@ diff --git a/third_party/blink/public/common/widget/device_emulation_params.h b/
diff --git a/third_party/blink/renderer/core/css/resolver/style_resolver.cc b/third_party/blink/renderer/core/css/resolver/style_resolver.cc
--- a/third_party/blink/renderer/core/css/resolver/style_resolver.cc
+++ b/third_party/blink/renderer/core/css/resolver/style_resolver.cc
@@ -1557,8 +1557,14 @@ scoped_refptr<ComputedStyle> StyleResolver::InitialStyleForElement() const {
 
   initial_style->SetRtlOrdering(
       GetDocument().VisuallyOrdered() ? EOrder::kVisual : EOrder::kLogical);
-  initial_style->SetZoom(InitialZoom());
-  initial_style->SetEffectiveZoom(initial_style->Zoom());
@@ -1533,8 +1533,14 @@ ComputedStyleBuilder StyleResolver::InitialStyleBuilderForElement() const {
   ComputedStyleBuilder builder = CreateComputedStyleBuilder();
   builder.SetRtlOrdering(GetDocument().VisuallyOrdered() ? EOrder::kVisual
                                                          : EOrder::kLogical);
-  builder.SetZoom(InitialZoom());
-  builder.SetEffectiveZoom(InitialZoom());
+  if (GetDocument().GetPage() && GetDocument().GetPage()->IsScreenEmulated()) {
+    // hides the zoom override to the dom on the html tag
+    initial_style->SetZoom(1);
+    initial_style->SetEffectiveZoom(InitialZoom());
+    builder.SetZoom(1);
+    builder.SetEffectiveZoom(InitialZoom());
+  } else {
+    initial_style->SetZoom(InitialZoom());
+    initial_style->SetEffectiveZoom(initial_style->Zoom());
+    builder.SetZoom(InitialZoom());
+    builder.SetEffectiveZoom(initial_style_->Zoom());
+  }
   initial_style->SetInForcedColorsMode(GetDocument().InForcedColorsMode());
   initial_style->SetTapHighlightColor(
   builder.SetInForcedColorsMode(GetDocument().InForcedColorsMode());
   builder.SetTapHighlightColor(
       ComputedStyleInitialValues::InitialTapHighlightColor());
diff --git a/third_party/blink/renderer/core/events/mouse_event.h b/third_party/blink/renderer/core/events/mouse_event.h
--- a/third_party/blink/renderer/core/events/mouse_event.h
@@ -214,7 +214,7 @@ diff --git a/third_party/blink/renderer/core/events/pointer_event.h b/third_part
diff --git a/third_party/blink/renderer/core/exported/web_view_impl.cc b/third_party/blink/renderer/core/exported/web_view_impl.cc
--- a/third_party/blink/renderer/core/exported/web_view_impl.cc
+++ b/third_party/blink/renderer/core/exported/web_view_impl.cc
@@ -1031,7 +1031,7 @@ WebPagePopupImpl* WebViewImpl::OpenPagePopup(PagePopupClient* client) {
@@ -1032,7 +1032,7 @@ WebPagePopupImpl* WebViewImpl::OpenPagePopup(PagePopupClient* client) {
   page_popup_ = WebPagePopupImpl::Create(
       std::move(popup_widget_host), std::move(widget_host),
       std::move(widget_receiver), this, agent_group_scheduler,
@@ -226,7 +226,7 @@ diff --git a/third_party/blink/renderer/core/exported/web_view_impl.cc b/third_p
diff --git a/third_party/blink/renderer/core/frame/local_dom_window.cc b/third_party/blink/renderer/core/frame/local_dom_window.cc
--- a/third_party/blink/renderer/core/frame/local_dom_window.cc
+++ b/third_party/blink/renderer/core/frame/local_dom_window.cc
@@ -1437,6 +1437,11 @@ int LocalDOMWindow::outerHeight() const {
@@ -1478,6 +1478,11 @@ int LocalDOMWindow::outerHeight() const {
   if (!page)
     return 0;
 
@@ -238,7 +238,7 @@ diff --git a/third_party/blink/renderer/core/frame/local_dom_window.cc b/third_p
   ChromeClient& chrome_client = page->GetChromeClient();
   if (page->GetSettings().GetReportScreenSizeInPhysicalPixelsQuirk()) {
     return static_cast<int>(
@@ -1462,6 +1467,11 @@ int LocalDOMWindow::outerWidth() const {
@@ -1503,6 +1508,11 @@ int LocalDOMWindow::outerWidth() const {
   if (!page)
     return 0;
 
@@ -250,7 +250,7 @@ diff --git a/third_party/blink/renderer/core/frame/local_dom_window.cc b/third_p
   ChromeClient& chrome_client = page->GetChromeClient();
   if (page->GetSettings().GetReportScreenSizeInPhysicalPixelsQuirk()) {
     return static_cast<int>(
@@ -1650,7 +1660,8 @@ double LocalDOMWindow::devicePixelRatio() const {
@@ -1691,7 +1701,8 @@ double LocalDOMWindow::devicePixelRatio() const {
   if (!GetFrame())
     return 0.0;
 
@@ -260,7 +260,7 @@ diff --git a/third_party/blink/renderer/core/frame/local_dom_window.cc b/third_p
 }
 
 void LocalDOMWindow::scrollBy(double x, double y) const {
@@ -2203,6 +2214,21 @@ DOMWindow* LocalDOMWindow::open(v8::Isolate* isolate,
@@ -2237,6 +2248,21 @@ DOMWindow* LocalDOMWindow::open(v8::Isolate* isolate,
   if (!completed_url.IsEmpty() || result.new_window)
     result.frame->Navigate(frame_request, WebFrameLoadType::kStandard);
 
@@ -285,7 +285,7 @@ diff --git a/third_party/blink/renderer/core/frame/local_dom_window.cc b/third_p
diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc
--- a/third_party/blink/renderer/core/frame/local_frame.cc
+++ b/third_party/blink/renderer/core/frame/local_frame.cc
@@ -1278,6 +1278,10 @@ gfx::SizeF LocalFrame::ResizePageRectsKeepingRatio(
@@ -1287,6 +1287,10 @@ gfx::SizeF LocalFrame::ResizePageRectsKeepingRatio(
   return gfx::SizeF(result_width, result_height);
 }
 
@@ -296,7 +296,7 @@ diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/
 void LocalFrame::SetPageZoomFactor(float factor) {
   SetPageAndTextZoomFactors(factor, text_zoom_factor_);
 }
@@ -1417,12 +1421,16 @@ device::mojom::blink::DevicePostureType LocalFrame::GetDevicePosture() {
@@ -1426,12 +1430,16 @@ device::mojom::blink::DevicePostureType LocalFrame::GetDevicePosture() {
   return mojo_handler_->GetDevicePosture();
 }
 
@@ -318,7 +318,7 @@ diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/
diff --git a/third_party/blink/renderer/core/frame/local_frame.h b/third_party/blink/renderer/core/frame/local_frame.h
--- a/third_party/blink/renderer/core/frame/local_frame.h
+++ b/third_party/blink/renderer/core/frame/local_frame.h
@@ -381,13 +381,14 @@ class CORE_EXPORT LocalFrame final
@@ -382,13 +382,14 @@ class CORE_EXPORT LocalFrame final
   void SetInViewSourceMode(bool = true);
 
   void SetPageZoomFactor(float);
@@ -335,7 +335,7 @@ diff --git a/third_party/blink/renderer/core/frame/local_frame.h b/third_party/b
 
   // Informs the local root's document and its local descendant subtree that a
   // media query value changed.
@@ -934,6 +935,7 @@ class CORE_EXPORT LocalFrame final
@@ -972,6 +973,7 @@ class CORE_EXPORT LocalFrame final
   unsigned hidden_ : 1;
 
   float page_zoom_factor_;
@@ -441,7 +441,7 @@ diff --git a/third_party/blink/renderer/core/frame/screen_metrics_emulator.h b/t
diff --git a/third_party/blink/renderer/core/frame/web_frame_widget_impl.cc b/third_party/blink/renderer/core/frame/web_frame_widget_impl.cc
--- a/third_party/blink/renderer/core/frame/web_frame_widget_impl.cc
+++ b/third_party/blink/renderer/core/frame/web_frame_widget_impl.cc
@@ -1578,6 +1578,14 @@ void WebFrameWidgetImpl::ApplyVisualPropertiesSizing(
@@ -1597,6 +1597,14 @@ void WebFrameWidgetImpl::ApplyVisualPropertiesSizing(
 
     if (auto* device_emulator = DeviceEmulator()) {
       device_emulator->UpdateVisualProperties(visual_properties);
@@ -459,7 +459,7 @@ diff --git a/third_party/blink/renderer/core/frame/web_frame_widget_impl.cc b/th
diff --git a/third_party/blink/renderer/core/frame/web_remote_frame_impl.cc b/third_party/blink/renderer/core/frame/web_remote_frame_impl.cc
--- a/third_party/blink/renderer/core/frame/web_remote_frame_impl.cc
+++ b/third_party/blink/renderer/core/frame/web_remote_frame_impl.cc
@@ -349,7 +349,8 @@ void WebRemoteFrameImpl::InitializeFrameVisualProperties(
@@ -348,7 +348,8 @@ void WebRemoteFrameImpl::InitializeFrameVisualProperties(
   visual_properties.page_scale_factor = ancestor_widget->PageScaleInMainFrame();
   visual_properties.is_pinch_gesture_active =
       ancestor_widget->PinchGestureActiveInMainFrame();
@@ -531,7 +531,7 @@ diff --git a/third_party/blink/renderer/core/page/page.cc b/third_party/blink/re
 
 namespace blink {
 
@@ -881,7 +885,79 @@ void Page::UpdateAcceleratedCompositingSettings() {
@@ -878,7 +882,79 @@ void Page::UpdateAcceleratedCompositingSettings() {
   }
 }
 
@@ -614,7 +614,7 @@ diff --git a/third_party/blink/renderer/core/page/page.cc b/third_party/blink/re
diff --git a/third_party/blink/renderer/core/page/page.h b/third_party/blink/renderer/core/page/page.h
--- a/third_party/blink/renderer/core/page/page.h
+++ b/third_party/blink/renderer/core/page/page.h
@@ -410,6 +410,9 @@ class CORE_EXPORT Page final : public GarbageCollected<Page>,
@@ -409,6 +409,9 @@ class CORE_EXPORT Page final : public GarbageCollected<Page>,
   }
   mojom::blink::FencedFrameMode FencedFrameMode() { return fenced_frame_mode_; }
 
@@ -624,7 +624,7 @@ diff --git a/third_party/blink/renderer/core/page/page.h b/third_party/blink/ren
  private:
   friend class ScopedPagePauser;
 
@@ -539,6 +542,10 @@ class CORE_EXPORT Page final : public GarbageCollected<Page>,
@@ -538,6 +541,10 @@ class CORE_EXPORT Page final : public GarbageCollected<Page>,
   // browser side FrameTree has the FrameTree::Type of kFencedFrame.
   bool is_fenced_frame_tree_ = false;