]> git.lyx.org Git - lyx.git/blobdiff - src/text.C
More fixes to insettabular/text (and some missing features added).
[lyx.git] / src / text.C
index dd45c0c0b7fb34336bb02bcd787699bc84510ad3..be6bb3b6a327410124bc246034bbc5a53e213455 100644 (file)
@@ -344,11 +344,11 @@ void LyXText::ComputeBidiTables(Buffer const * buf, Row * row) const
 bool LyXText::IsBoundary(Buffer const * buf, LyXParagraph * par,
                         LyXParagraph::size_type pos) const
 {
-       if (!lyxrc.rtl_support)
-               return false;    // This is just for speedup
+       if (!lyxrc.rtl_support || pos == 0)
+               return false;
 
        if (!bidi_InRange(pos - 1)) {
-               lyxerr << "LyXText::IsBoundary This shouldn't happen\n";
+               lyxerr << "LyXText::IsBoundary This shouldn't happen." << endl;
                return false;
        }
 
@@ -504,10 +504,12 @@ void LyXText::draw(BufferView * bview, Row const * row,
 //                     tmpinset->update(bview, font, false);
                        tmpinset->draw(bview, font, offset+row->baseline(), x,
                                       cleared);
+#ifdef SEEMS_TO_BE_NOT_NEEDED
                        if (status == CHANGED_IN_DRAW) {
                                UpdateInset(bview, tmpinset);
                                status = CHANGED_IN_DRAW;
                        }
+#endif
                }
                ++vpos;
 
@@ -3391,7 +3393,7 @@ void LyXText::GetVisibleRow(BufferView * bview, int y_offset, int x_offset,
 
                for (int i = 1; i <= depth; ++i) {
                        int const line_x = (LYX_PAPER_MARGIN / 5) *
-                               (i + minipage) + box_x;
+                               (i + minipage) + box_x + x_offset;
                        pain.line(line_x, y_offset, line_x,
                                  y_offset + row_ptr->height() - 1 - (i - next_depth - 1) * 3,
                                  LColor::depthbar);