From 33255ced798333f98f2c406eda6b4106a30cd9b2 Mon Sep 17 00:00:00 2001 From: Neil Date: Thu, 16 Mar 2017 14:04:19 +1100 Subject: For single phase drawing ensure edges and mark underline drawn over fold tags by moving drawing of edge line and mark underline after fold tags. --- src/EditView.cxx | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/EditView.cxx b/src/EditView.cxx index 6463e1d66..372821080 100644 --- a/src/EditView.cxx +++ b/src/EditView.cxx @@ -1857,8 +1857,10 @@ void EditView::DrawLine(Surface *surface, const EditModel &model, const ViewStyl if (phase & drawIndicatorsBack) { DrawIndicators(surface, model, vsDraw, ll, line, xStart, rcLine, subLine, lineRange.end, true, model.hoverIndicatorPos); - DrawEdgeLine(surface, vsDraw, ll, rcLine, lineRange, xStart); - DrawMarkUnderline(surface, model, vsDraw, line, rcLine); + if (phasesDraw != phasesOne) { + DrawEdgeLine(surface, vsDraw, ll, rcLine, lineRange, xStart); + DrawMarkUnderline(surface, model, vsDraw, line, rcLine); + } } if (phase & drawText) { @@ -1874,14 +1876,15 @@ void EditView::DrawLine(Surface *surface, const EditModel &model, const ViewStyl DrawIndicators(surface, model, vsDraw, ll, line, xStart, rcLine, subLine, lineRange.end, false, model.hoverIndicatorPos); } - // End of the drawing of the current line + DrawFoldDisplayText(surface, model, vsDraw, ll, line, xStart, rcLine, subLine, subLineStart, phase); + if (phasesDraw == phasesOne) { DrawEOL(surface, model, vsDraw, ll, rcLine, line, lineRange.end, xStart, subLine, subLineStart, background); + DrawEdgeLine(surface, vsDraw, ll, rcLine, lineRange, xStart); + DrawMarkUnderline(surface, model, vsDraw, line, rcLine); } - DrawFoldDisplayText(surface, model, vsDraw, ll, line, xStart, rcLine, subLine, subLineStart, phase); - if (!hideSelection && (phase & drawSelectionTranslucent)) { DrawTranslucentSelection(surface, model, vsDraw, ll, line, rcLine, subLine, lineRange, xStart); } -- cgit v1.2.3