diff options
author | Dennis Francis <dennis.francis@collabora.com> | 2022-01-06 15:12:16 +0530 |
---|---|---|
committer | Dennis Francis <dennis.francis@collabora.com> | 2022-02-05 09:57:03 +0100 |
commit | 3cd2d9665fba5723ac84732fcf41dc675577f08c (patch) | |
tree | 251ff0dd0cd8a645cf47a823fc7a4f540ce8dfb5 /sc | |
parent | 604ea1bfe06a8a19b084b5a6a603d8c1ba041f0a (diff) |
lokCalcRTL: trim invalidation rect to ensure +ve X
Change-Id: Ifecb52167e3cddee036e1e1e9bd5782a1138b654
(cherry picked from commit c2cbe0dbe4c9e4ce8014e881ba3663add77f7aca)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129364
Tested-by: Jenkins
Reviewed-by: Dennis Francis <dennis.francis@collabora.com>
Diffstat (limited to 'sc')
-rw-r--r-- | sc/source/ui/view/gridwin4.cxx | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/sc/source/ui/view/gridwin4.cxx b/sc/source/ui/view/gridwin4.cxx index d83c2bcccde2..f71c73514a27 100644 --- a/sc/source/ui/view/gridwin4.cxx +++ b/sc/source/ui/view/gridwin4.cxx @@ -1673,6 +1673,15 @@ void ScGridWindow::LogicInvalidate(const tools::Rectangle* pRectangle) pResultRectangle = &aRectangle; } + // Trim invalidation rectangle overlapping negative X region in RTL mode. + if (pResultRectangle && pResultRectangle->Left() < 0 + && mrViewData.GetDocument().IsLayoutRTL(mrViewData.GetTabNo())) + { + pResultRectangle->SetLeft(0); + if (pResultRectangle->Right() < 0) + pResultRectangle->SetRight(0); + } + ScTabViewShell* pViewShell = mrViewData.GetViewShell(); SfxLokHelper::notifyInvalidation(pViewShell, pResultRectangle); } |