commit 69f0efd7973b3183bca3dc77646a182187138c21
Author: Jean-Marc Lasgouttes <[email protected]>
Date: Mon Sep 5 11:29:44 2016 +0200
Set vertical lines in math arrays correctly on Y axis
This is a fixup to commit 39329935. The two fixes are
* add forgotten offset `y' when drawing the line
* in order to have a continuous vertical line, draw from the offset of
the previous row.
Fixes bug #10363.
(cherry-picked from a27ff136)
---
src/mathed/InsetMathGrid.cpp | 15 +++++++++------
status.22x | 1 +
2 files changed, 10 insertions(+), 6 deletions(-)
diff --git a/src/mathed/InsetMathGrid.cpp b/src/mathed/InsetMathGrid.cpp
index a236a93..291e11d 100644
--- a/src/mathed/InsetMathGrid.cpp
+++ b/src/mathed/InsetMathGrid.cpp
@@ -618,7 +618,7 @@ void InsetMathGrid::drawWithMargin(PainterInfo & pi, int x,
int y,
col_type const c = col(idx);
if (r > 0 && r < nrows()) {
for (unsigned int i = 0; i <
rowinfo_[r].lines_; ++i) {
- int yy = y + rowinfo_[r].offset_
+ int const yy = y + rowinfo_[r].offset_
- rowinfo_[r].ascent_
- i * hlinesep()
- hlinesep()/2 - rowsep()/2;
@@ -631,14 +631,17 @@ void InsetMathGrid::drawWithMargin(PainterInfo & pi, int
x, int y,
}
if (c > 0 && c < ncols()) {
for (unsigned int i = 0; i <
colinfo_[c].lines_; ++i) {
- int xx = x + lmargin
+ int const xx = x + lmargin
+ colinfo_[c].offset_
- i * vlinesep()
- vlinesep()/2 - colsep()/2;
- pi.pain.line(xx,
- rowinfo_[r].offset_ -
rowinfo_[r].ascent_,
- xx,
- rowinfo_[r].offset_ +
rowinfo_[r].descent_,
+ int top_offset;
+ if (r > 0)
+ top_offset = rowinfo_[r -
1].offset_ + rowinfo_[r - 1].descent_;
+ else
+ top_offset =
rowinfo_[0].offset_- rowinfo_[0].ascent_;
+ pi.pain.line(xx, y + top_offset,
+ xx, y + rowinfo_[r].offset_ +
rowinfo_[r].descent_,
Color_foreground);
}
}
diff --git a/status.22x b/status.22x
index 340635f..d62cd43 100644
--- a/status.22x
+++ b/status.22x
@@ -120,6 +120,7 @@ What's new
- Remove duplicate context menu item for Argument insets (bug 10368).
+- Fix display of vertical lines inside math matrices (bug 10363).
* INTERNALS