summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--svx/source/dialog/svxruler.cxx9
1 files changed, 6 insertions, 3 deletions
diff --git a/svx/source/dialog/svxruler.cxx b/svx/source/dialog/svxruler.cxx
index 41e377f9fbe8..1c9021eba109 100644
--- a/svx/source/dialog/svxruler.cxx
+++ b/svx/source/dialog/svxruler.cxx
@@ -434,18 +434,21 @@ SvxRuler::~SvxRuler()
long SvxRuler::MakePositionSticky(long aPosition, bool aSnapToFrameMargin) const
{
- long aLeftFramePosition = ConvertHPosPixel(GetLeftFrameMargin());
+ long aLeftFramePosition = ConvertHPosPixel(GetLeftFrameMargin());
long aRightFramePosition = ConvertHPosPixel(GetRightFrameMargin());
+
long aTick = GetCurrentRulerUnit().nTick1;
+ long aTickPixel = pEditWin->LogicToPixel(Size(0, aTick), GetCurrentMapMode()).Height();
long aHalfTick = aTick / 2;
+ long aHalfTickPixel = aTickPixel / 2;
if (aSnapToFrameMargin)
{
- if (aPosition > aLeftFramePosition - aHalfTick && aPosition < aLeftFramePosition + aHalfTick)
+ if (aPosition > aLeftFramePosition - aHalfTickPixel && aPosition < aLeftFramePosition + aHalfTickPixel)
{
return aLeftFramePosition;
}
- else if (aPosition > aRightFramePosition - aHalfTick && aPosition < aRightFramePosition + aHalfTick)
+ else if (aPosition > aRightFramePosition - aHalfTickPixel && aPosition < aRightFramePosition + aHalfTickPixel)
{
return aRightFramePosition;
}