After hours of immense frustration I think I have managed fix the layout bugs Martin observed. The persistent block redraw was the easy one -- it was caused by the fact that fp_Run::setX was designed to always clear screen on changes of iX, the line layout requires two passes in the first of which iX is set to a temporary value, and the second it is adjusted depending on the type of alignment. This meant that at least 1, but mostly two unnecessary redraws were carried out. I have changed setX, so that it is possible to set X without clearing screen.
The missalignment caused by deletion of the paragraph break should be fixed too -- it was not a bug in my code though :-). The justified alignment not kicking in was the worst to work out. It only effected the non-bidi build and even though it required only a trivial fix, there was steam coming from my ears by the time I found it -- it was in fp_Line::layout(), but it really was not obvious. I have also fixed some bidi bugs related to the glyph shaping, and the one causing segmentation faults reported by Joaquin. Tomas Files modified: fp_TextRun.cpp/h, fp_Line.cpp, fp_Run.cpp/h, fl_BlockLayout.cpp/h, fb_LineBreaker.cpp
