diff options
author | Miklos Vajna <vmiklos@collabora.co.uk> | 2014-05-12 17:11:37 +0200 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2014-05-12 17:25:57 +0200 |
commit | f7b88a2b03122360b2e60e2afa453603022d28df (patch) | |
tree | 88ca7b6b7462e2fafb32d4c06f322a781a01cff2 | |
parent | 5f0420450af03f606c8cd7afe337ca32d5857b9c (diff) |
fdo#78608 SwTxtFrm::Paint: fix missing repaint problem on the left edge
Change-Id: Iba66a82e4a92a0afe1ad923cf4e0922730bd03de
-rw-r--r-- | sw/source/core/text/frmpaint.cxx | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/sw/source/core/text/frmpaint.cxx b/sw/source/core/text/frmpaint.cxx index 69eb30259dbd..112c1486038c 100644 --- a/sw/source/core/text/frmpaint.cxx +++ b/sw/source/core/text/frmpaint.cxx @@ -437,6 +437,14 @@ SwRect SwTxtFrm::Paint() pRepaint->SetOfst( 0 ); aRet = *pRepaint; + // In case our left edge is the same as the body frame's left edge, + // then extend the rectangle to include the page margin as well, + // otherwise some font will be clipped. + SwLayoutFrm* pBodyFrm = GetUpper(); + if (pBodyFrm->IsBodyFrm() && aRet.Left() == (pBodyFrm->Frm().Left() + pBodyFrm->Prt().Left())) + if (SwLayoutFrm* pPageFrm = pBodyFrm->GetUpper()) + aRet.Left(pPageFrm->Frm().Left()); + if ( IsRightToLeft() ) SwitchLTRtoRTL( aRet ); |