]> git.lyx.org Git - lyx.git/blobdiff - src/Bidi.cpp
add short git hash to name of devel disk images to get different names for devel...
[lyx.git] / src / Bidi.cpp
index 4470e755f116c764cf8b1142deb053459b9bbc90..3b598a4fbd1087c3969a091889328077d4957123 100644 (file)
@@ -46,6 +46,7 @@ bool Bidi::inRange(pos_type pos) const
        return start_ == -1 || (start_ <= pos && pos <= end_);
 }
 
+
 bool Bidi::same_direction() const
 {
        return same_direction_;
@@ -56,12 +57,8 @@ void Bidi::computeTables(Paragraph const & par,
        Buffer const & buf, Row const & row)
 {
        same_direction_ = true;
-       if (!lyxrc.rtl_support) {
-               start_ = -1;
-               return;
-       }
 
-       if (par.ownerCode() == ERT_CODE || par.ownerCode() == LISTINGS_CODE) {
+       if (par.inInset().forceLTR()) {
                start_ = -1;
                return;
        }
@@ -107,6 +104,7 @@ void Bidi::computeTables(Paragraph const & par,
                pos_type const pos =
                        (is_space && lpos + 1 <= end_ &&
                         !par.isLineSeparator(lpos + 1) &&
+                        !par.isEnvSeparator(lpos + 1) &&
                         !par.isNewline(lpos + 1))
                        ? lpos + 1 : lpos;
 
@@ -190,7 +188,7 @@ void Bidi::computeTables(Paragraph const & par,
 bool Bidi::isBoundary(Buffer const & buf, Paragraph const & par,
        pos_type pos) const
 {
-       if (!lyxrc.rtl_support || pos == 0)
+       if (pos == 0)
                return false;
 
        if (!inRange(pos - 1)) {
@@ -210,9 +208,6 @@ bool Bidi::isBoundary(Buffer const & buf, Paragraph const & par,
 bool Bidi::isBoundary(Buffer const & buf, Paragraph const & par,
        pos_type pos, Font const & font) const
 {
-       if (!lyxrc.rtl_support)
-               return false;    // This is just for speedup
-
        bool const rtl = font.isVisibleRightToLeft();
        bool const rtl2 = inRange(pos)
                ? level(pos) % 2