From 8435c842b9e8fbb2bcc80397ab3aa655000459e2 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Wed, 3 Jul 2024 08:05:42 +0100 Subject: gentoo auto-resync : 03:07:2024 - 08:05:42 --- .../files/qtwebengine-6.7.2-QTBUG-113574.patch | 41 ++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 dev-qt/qtwebengine/files/qtwebengine-6.7.2-QTBUG-113574.patch (limited to 'dev-qt/qtwebengine/files') diff --git a/dev-qt/qtwebengine/files/qtwebengine-6.7.2-QTBUG-113574.patch b/dev-qt/qtwebengine/files/qtwebengine-6.7.2-QTBUG-113574.patch new file mode 100644 index 000000000000..d8a9158c8a01 --- /dev/null +++ b/dev-qt/qtwebengine/files/qtwebengine-6.7.2-QTBUG-113574.patch @@ -0,0 +1,41 @@ +Backport of [1] from 6.8/6.9 for [2]. + +[1] https://codereview.qt-project.org/c/qt/qtwebengine/+/569910 +[2] https://bugreports.qt.io/browse/QTBUG-113574 + +From 21a9add47def34322b799683e1e1daff88dc4a06 Mon Sep 17 00:00:00 2001 +From: David Edmundson +Date: Wed, 19 Jun 2024 10:37:45 +0100 +Subject: [PATCH] Use device pixel ratio of the window rather than the screen + +Window device pixel ratio can differ from the screen depending on the +platform. The window is the more authorative source with new events in +Qt to support that. + +In Chromium the rendering is still based off a screen factor, but each +view will have a completely independent set of screen variables, so we +can adjust the screen to match our current view. + +Chromium itself also alters the screen scale factor on a per window +basis for their own native Wayland backend or if recording a window. +--- a/src/core/render_widget_host_view_qt.cpp ++++ b/src/core/render_widget_host_view_qt.cpp +@@ -875,4 +875,9 @@ + + display::ScreenInfos newScreenInfos = screenInfosFromQtForUpdate(window->screen()); ++ ++ // We always want to use the scale from our current window ++ // This screen information is stored on a per-view basis ++ auto &screen = newScreenInfos.mutable_current(); ++ screen.device_scale_factor = window->devicePixelRatio(); + if (screen_infos_ == newScreenInfos) + return false; +--- a/src/core/render_widget_host_view_qt_delegate_item.cpp ++++ b/src/core/render_widget_host_view_qt_delegate_item.cpp +@@ -346,4 +346,6 @@ + onHide(); + } ++ } else if (change == QQuickItem::ItemDevicePixelRatioHasChanged) { ++ m_client->visualPropertiesChanged(); + } + } -- cgit v1.2.3