vcl/unx/gtk3/gtkinst.cxx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)
New commits: commit 94b264cd0484860e58decef27a15ad865c26ef0d Author: Caolán McNamara <caolan.mcnam...@collabora.com> AuthorDate: Fri Mar 7 21:37:27 2025 +0000 Commit: Adolfo Jayme Barrientos <fit...@ubuntu.com> CommitDate: Mon Mar 10 01:49:41 2025 +0100 Resolves: tdf#165455 fix hover in RTL custom widgets under GTK Change-Id: If8f4e219766a7a17a85fea60e4d7855684e57d92 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/182653 Tested-by: Jenkins Reviewed-by: Adolfo Jayme Barrientos <fit...@ubuntu.com> diff --git a/vcl/unx/gtk3/gtkinst.cxx b/vcl/unx/gtk3/gtkinst.cxx index 3d7567384fd2..98b1c64d62b9 100644 --- a/vcl/unx/gtk3/gtkinst.cxx +++ b/vcl/unx/gtk3/gtkinst.cxx @@ -18926,7 +18926,12 @@ public: #if !GTK_CHECK_VERSION(4, 0, 0) tools::Rectangle aRect(Point(x, y), Size(width, height)); aRect = m_xDevice->LogicToPixel(aRect); - gtk_widget_queue_draw_area(GTK_WIDGET(m_pDrawingArea), aRect.Left(), aRect.Top(), aRect.GetWidth(), aRect.GetHeight()); + + x = aRect.Left(); + if (SwapForRTL()) + x = gtk_widget_get_allocated_width(m_pWidget) - aRect.GetWidth() - 1 - x; + + gtk_widget_queue_draw_area(GTK_WIDGET(m_pDrawingArea), x, aRect.Top(), aRect.GetWidth(), aRect.GetHeight()); #else (void)x; (void)y; (void)width; (void)height; queue_draw();