vcl/unx/gtk3/gtkinst.cxx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)
New commits: commit 8e2effa8955db4dc4b31145fbb14b53636b32186 Author: Caolán McNamara <caolan.mcnam...@collabora.com> AuthorDate: Fri Mar 7 21:37:27 2025 +0000 Commit: Caolán McNamara <caolan.mcnam...@collabora.com> CommitDate: Sat Mar 8 01:00:46 2025 +0100 Resolves: tdf#165455 fix hover in RTL custom widgets under GTK Change-Id: If8f4e219766a7a17a85fea60e4d7855684e57d92 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/182649 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnam...@collabora.com> diff --git a/vcl/unx/gtk3/gtkinst.cxx b/vcl/unx/gtk3/gtkinst.cxx index b9cc8438b8f0..b320850ad6c0 100644 --- a/vcl/unx/gtk3/gtkinst.cxx +++ b/vcl/unx/gtk3/gtkinst.cxx @@ -18951,7 +18951,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();