vcl/qt5/QtFrame.cxx |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

New commits:
commit 3f8d3fd4649ef09e86c735617383a4bda0425540
Author:     Jan-Marek Glogowski <glo...@fbihome.de>
AuthorDate: Sun Jun 5 08:55:43 2022 +0200
Commit:     Jan-Marek Glogowski <glo...@fbihome.de>
CommitDate: Sun Jun 5 12:17:45 2022 +0200

    tdf#137471 Qt return frame pos + client area size
    
    My code comment about "drawable area" and Michaels bug comment
    12 about the "frameGeometry()" usage were both half right. LO
    expects the window's frame position and the drawable client area
    size almost everywhere when "geometry" is involved. The frame's
    border is stored in the decorations members of SalFrameGeometry.
    
    Change-Id: Ic00ad1f1d74d7afadcaca0c01e1a41ea7f2833de
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135434
    Tested-by: Jenkins
    Reviewed-by: Jan-Marek Glogowski <glo...@fbihome.de>

diff --git a/vcl/qt5/QtFrame.cxx b/vcl/qt5/QtFrame.cxx
index 4b94273e1cff..3c63060855ab 100644
--- a/vcl/qt5/QtFrame.cxx
+++ b/vcl/qt5/QtFrame.cxx
@@ -741,8 +741,8 @@ bool QtFrame::GetWindowState(SalFrameState* pState)
     }
     else
     {
-        // geometry() is the drawable area, which is wanted here
-        QRect rect = scaledQRect(asChild()->geometry(), devicePixelRatioF());
+        // we want the frame position and the client area size
+        QRect rect = scaledQRect({ asChild()->pos(), asChild()->size() }, 
devicePixelRatioF());
         pState->mnX = rect.x();
         pState->mnY = rect.y();
         pState->mnWidth = rect.width();

Reply via email to