diff options
author | Ionen Wolkens <ionen@gentoo.org> | 2024-07-02 17:27:57 -0400 |
---|---|---|
committer | Ionen Wolkens <ionen@gentoo.org> | 2024-07-02 20:39:11 -0400 |
commit | b82f15dc07759e6099ddcd020876762a25360b85 (patch) | |
tree | 8945612fc6f7586571845cbc6167bc968edb9264 /dev-qt | |
parent | sys-kernel/gentoo-kernel-bin: Stabilize 5.15.161 x86, #935359 (diff) | |
download | gentoo-b82f15dc07759e6099ddcd020876762a25360b85.tar.gz gentoo-b82f15dc07759e6099ddcd020876762a25360b85.tar.bz2 gentoo-b82f15dc07759e6099ddcd020876762a25360b85.zip |
dev-qt/qtwebengine: backport wayland text rendering fix (qt6)
See patch header.
Tempting to revbump, albeit will still spare users for now. Will
at least give stable users the fixed vresion when stabilized soon.
~testing users annoyed by this are invited to manually rebuild.
Also add to 6.7.9999 so it is not forgotten with 6.7.3, "currently"
not marked to be picked to the 6.7 branch for the 6.7.3 release
and may or may not still be needed until 6.8.0.
Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
Diffstat (limited to 'dev-qt')
-rw-r--r-- | dev-qt/qtwebengine/files/qtwebengine-6.7.2-QTBUG-113574.patch | 41 | ||||
-rw-r--r-- | dev-qt/qtwebengine/qtwebengine-6.7.2.ebuild | 1 | ||||
-rw-r--r-- | dev-qt/qtwebengine/qtwebengine-6.7.9999.ebuild | 1 |
3 files changed, 43 insertions, 0 deletions
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 <davidedmundson@kde.org> +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(); + } + } diff --git a/dev-qt/qtwebengine/qtwebengine-6.7.2.ebuild b/dev-qt/qtwebengine/qtwebengine-6.7.2.ebuild index 3726d7743a00..1ad6561ecc65 100644 --- a/dev-qt/qtwebengine/qtwebengine-6.7.2.ebuild +++ b/dev-qt/qtwebengine/qtwebengine-6.7.2.ebuild @@ -110,6 +110,7 @@ PATCHES=( "${WORKDIR}"/patches/${PN} ) PATCHES+=( # add extras as needed here, may merge in set if carries across versions + "${FILESDIR}"/${PN}-6.7.2-QTBUG-113574.patch ) python_check_deps() { diff --git a/dev-qt/qtwebengine/qtwebengine-6.7.9999.ebuild b/dev-qt/qtwebengine/qtwebengine-6.7.9999.ebuild index 3726d7743a00..1ad6561ecc65 100644 --- a/dev-qt/qtwebengine/qtwebengine-6.7.9999.ebuild +++ b/dev-qt/qtwebengine/qtwebengine-6.7.9999.ebuild @@ -110,6 +110,7 @@ PATCHES=( "${WORKDIR}"/patches/${PN} ) PATCHES+=( # add extras as needed here, may merge in set if carries across versions + "${FILESDIR}"/${PN}-6.7.2-QTBUG-113574.patch ) python_check_deps() { |