// Set the update info to relayout the whole text.
mImpl->mTextUpdateInfo.mFullRelayoutNeeded = true;
mImpl->mTextUpdateInfo.mCharacterIndex = 0u;
+
+ // Store the size used to layout the text.
+ mImpl->mVisualModel->mControlSize = size;
}
// Whether there are modify events.
mImpl->mVisualModel->SetLayoutSize( layoutSize );
}
} // view updated
-
- // Store the size used to layout the text.
- mImpl->mVisualModel->mControlSize = size;
}
if( NO_OPERATION != ( ALIGN & operations ) )
// The laid-out lines.
Vector<LineRun>& lines = mImpl->mVisualModel->mLines;
+ // Need to align with the control's size as the text may contain lines
+ // starting either with left to right text or right to left.
mImpl->mLayoutEngine.Align( size,
startIndex,
requestedNumberOfCharacters,
- lines );
+ lines,
+ mImpl->mAlignmentOffset );
viewUpdated = true;
}