{
long spacerCount = 0;
for (int i = 0; i < index; i++)
{
// justify text
final InlineSequenceElement ise = sequenceElements[i];
final RenderNode node = nodes[i];
if (node.getNodeType() == LayoutNodeTypes.TYPE_NODE_SPACER)
{
spacerCount += ise.getMaximumWidth(node);
}
}
if (spacerCount > 0)
{
final double extraSpacePerSpacerUnit = extraSpace / (double) spacerCount;
long shift = 0;
for (int i = 0; i < index; i++)
{
elementPositions[i] += shift;
// justify text
final InlineSequenceElement ise = sequenceElements[i];
final RenderNode node = nodes[i];
if (node.getNodeType() == LayoutNodeTypes.TYPE_NODE_SPACER)
{
final long width = ise.getMaximumWidth(node);
final long extraSpaceHere = (long) (extraSpacePerSpacerUnit * width);
elementDimensions[i] += extraSpaceHere;
shift += extraSpaceHere;
}
}