finishInlineContainer ( null, null, null );
}
private void finishInlineContainer ( List<InlineParent> ich, TextArea tc, InlineArea ia ) {
if ( ( ich != null ) && ! ich.isEmpty() ) { // finish non-matching inner inline container(s)
for ( Iterator<InlineParent> it = ich.iterator(); it.hasNext(); ) {
InlineParent ic = it.next();
InlineParent ic0 = icOrig.empty() ? null : icOrig.peek();
if ( ic0 == null ) {
assert icNew.empty();
} else if ( ic != ic0 ) {
assert ! icNew.empty();
InlineParent icO0 = icOrig.pop();
InlineParent icN0 = icNew.pop();
assert icO0 != null;
assert icN0 != null;
if ( icNew.empty() ) {
ilNew.add ( icN0 );
} else {
icNew.peek().addChildArea ( icN0 );
}
if ( ! icOrig.empty() && ( icOrig.peek() == ic ) ) {
break;
}
} else {
break;
}
}
} else { // finish all inline containers
while ( ! icNew.empty() ) {
InlineParent icO0 = icOrig.pop();
InlineParent icN0 = icNew.pop();
assert icO0 != null;
assert icN0 != null;
if ( icNew.empty() ) {
ilNew.add ( icN0 );
} else {