diff options
author | Dennis Francis <dennis.francis@collabora.com> | 2021-11-24 16:59:47 +0530 |
---|---|---|
committer | Andras Timar <andras.timar@collabora.com> | 2022-01-11 11:18:08 +0100 |
commit | 2eb5f597c3b1c5a680d6e0f9d0719f9f6977e1a3 (patch) | |
tree | 044c49c2fc4847d71d7355aa0d626909f03e0676 | |
parent | 85a986f25956518978381df097b1f7d88477fd3d (diff) |
lokCalcRTL: fix autofilter button hit detection
No mirroring needed when not in tile painting mode. All positions are
in document coordinates.
Change-Id: I45425e2ddce7f5ddc5086dcdce31bb6d081edc41
-rw-r--r-- | sc/source/ui/view/gridwin2.cxx | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/sc/source/ui/view/gridwin2.cxx b/sc/source/ui/view/gridwin2.cxx index 839c0fc6b6d9..0b0044cefc4b 100644 --- a/sc/source/ui/view/gridwin2.cxx +++ b/sc/source/ui/view/gridwin2.cxx @@ -109,8 +109,9 @@ bool ScGridWindow::DoAutoFilterButton( SCCOL nCol, SCROW nRow, const MouseEvent& Point aDiffPix = rMEvt.GetPosPixel(); aDiffPix -= aScrPos; + bool bLOKActive = comphelper::LibreOfficeKit::isActive(); bool bLayoutRTL = rDoc.IsLayoutRTL( nTab ); - if ( bLayoutRTL ) + if ( bLayoutRTL && !bLOKActive ) aDiffPix.setX( -aDiffPix.X() ); tools::Long nSizeX, nSizeY; @@ -121,8 +122,8 @@ bool ScGridWindow::DoAutoFilterButton( SCCOL nCol, SCROW nRow, const MouseEvent& // Check if the mouse cursor is clicking on the popup arrow box. mpFilterButton.reset(new ScDPFieldButton(this, &GetSettings().GetStyleSettings(), &mrViewData.GetZoomY(), &rDoc)); - mpFilterButton->setBoundingBox(aScrPos, aScrSize, bLayoutRTL); - mpFilterButton->setPopupLeft(bLayoutRTL); // #i114944# AutoFilter button is left-aligned in RTL + mpFilterButton->setBoundingBox(aScrPos, aScrSize, bLayoutRTL && !bLOKActive); + mpFilterButton->setPopupLeft(bLayoutRTL && bLOKActive ? false : bLayoutRTL); // #i114944# AutoFilter button is left-aligned in RTL Point aPopupPos; Size aPopupSize; mpFilterButton->getPopupBoundingBox(aPopupPos, aPopupSize); |