summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Kaganski <mike.kaganski@collabora.com>2018-10-14 23:52:18 +0300
committerMike Kaganski <mike.kaganski@collabora.com>2018-10-15 06:56:21 +0200
commit2da25cb43f4af8d094b01de1073eee2e2023c029 (patch)
tree32fae407cfaee282730454d1364ff1a025da76c2
parente00ac11c6b12d5e8e3e1537b3206eaa29a0a5e95 (diff)
tdf#120593: properly handle tab pos identical to right indent
... otherwise it's counted without taking into account current column, as well as TabsRelativeToIndent mode. Change-Id: I7442f63d9d5c51c5a4d82094b49b8028f2b42b41 Reviewed-on: https://gerrit.libreoffice.org/61768 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
-rw-r--r--svx/source/dialog/svxruler.cxx10
1 files changed, 9 insertions, 1 deletions
diff --git a/svx/source/dialog/svxruler.cxx b/svx/source/dialog/svxruler.cxx
index af433f2348e0..e6ec4bc8e876 100644
--- a/svx/source/dialog/svxruler.cxx
+++ b/svx/source/dialog/svxruler.cxx
@@ -2200,7 +2200,15 @@ void SvxRuler::ApplyTabs()
if( mxRulerImpl->lMaxRightLogic != -1 &&
mpTabs[nCoreIdx + TAB_GAP].nPos + Ruler::GetNullOffset() == nMaxRight )
{
- aTabStop.GetTabPos() = mxRulerImpl->lMaxRightLogic - lLogicNullOffset;
+ // Set tab pos exactly at the right indent
+ long nTmpLeftIndentLogic
+ = lAppNullOffset + (bRTL ? GetRightFrameMargin() : GetLeftFrameMargin());
+ if (mxRulerImpl->bIsTabsRelativeToIndent && mxParaItem)
+ {
+ nTmpLeftIndentLogic += bRTL ? mxParaItem->GetRight() : mxParaItem->GetLeft();
+ }
+ aTabStop.GetTabPos()
+ = mxRulerImpl->lMaxRightLogic - lLogicNullOffset - nTmpLeftIndentLogic;
}
else
{