]> git.lyx.org Git - lyx.git/commitdiff
Move correctly the end of proof marker when row is large
authorJean-Marc Lasgouttes <lasgouttes@lyx.org>
Tue, 23 Aug 2016 15:43:38 +0000 (17:43 +0200)
committerJean-Marc Lasgouttes <lasgouttes@lyx.org>
Wed, 24 Aug 2016 10:04:19 +0000 (12:04 +0200)
This was a regression from 2.1.x in LtR mode, and it never worked correctly in RtL mode.

Fixes bug #10344.

(cherry picked from commit 07c7dae367aea2ebc6486d1cc67b11c409f2d8a0)

src/RowPainter.cpp
status.22x

index ae7ed4ddab144adafed80ee111a8621dba938939..5ee2e03a7d70f96cce091ef087d0f9fea16a581f 100644 (file)
@@ -540,14 +540,17 @@ void RowPainter::paintLast()
                FontMetrics const & fm = theFontMetrics(font);
                int const size = int(0.75 * fm.maxAscent());
                int const y = yo_ - size;
-               int const max_row_width = width_ - size - Inset::TEXT_TO_INSET_OFFSET;
-               int x = is_rtl ? nestMargin() + changebarMargin()
-                       : max_row_width - row_.right_margin;
 
                // If needed, move the box a bit to avoid overlapping with text.
-               int const rem = max_row_width - row_.width();
-               if (rem <= 0)
-                       x += is_rtl ? rem : - rem;
+               int x = 0;
+               if (is_rtl) {
+                       int const normal_x = nestMargin() + changebarMargin();
+                       x = min(normal_x, row_.left_margin - size - Inset::TEXT_TO_INSET_OFFSET);
+               } else {
+                       int const normal_x = width_ - row_.right_margin
+                               - size - Inset::TEXT_TO_INSET_OFFSET;
+                       x = max(normal_x, row_.width());
+               }
 
                if (endlabel == END_LABEL_BOX)
                        pi_.pain.rectangle(x, y, size, size, Color_eolmarker);
index 0d485dc9bfbf21939a9322f188a3c231e957054e..03797ebbb07ac2e75d51949e64841e1f53a26dad 100644 (file)
@@ -91,6 +91,8 @@ What's new
 - When doing a selection with Shift-click, make sure that the selection anchor
   is correct.
 
+- Avoid to overwrite end-of-proof character with text on screen (bug
+  10344).
 
 * INTERNALS