aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorNeil <nyamatongwe@gmail.com>2017-03-19 23:09:12 +1100
committerNeil <nyamatongwe@gmail.com>2017-03-19 23:09:12 +1100
commit4fdf84a2b8c86e005023260ca581f968a048ec17 (patch)
tree9eab8a13c688c86c140c78d6f8b4bf744b5626d6
parente15cc1724994267d9e732fc5077b33f7a160c31e (diff)
downloadscintilla-mirror-4fdf84a2b8c86e005023260ca581f968a048ec17.tar.gz
Group non-single-phase drawing before text.
-rw-r--r--src/EditView.cxx22
1 files changed, 11 insertions, 11 deletions
diff --git a/src/EditView.cxx b/src/EditView.cxx
index fd9f43774..e73781016 100644
--- a/src/EditView.cxx
+++ b/src/EditView.cxx
@@ -1846,18 +1846,18 @@ void EditView::DrawLine(Surface *surface, const EditModel &model, const ViewStyl
xStart += static_cast<int>(ll->wrapIndent);
}
- if ((phasesDraw != phasesOne) && (phase & drawBack)) {
- DrawBackground(surface, model, vsDraw, ll, rcLine, lineRange, posLineStart, xStart,
- subLine, background);
- DrawFoldDisplayText(surface, model, vsDraw, ll, line, xStart, rcLine, subLine, subLineStart, drawBack);
- phase = static_cast<DrawPhase>(phase & ~drawBack);
- DrawEOL(surface, model, vsDraw, ll, rcLine, line, lineRange.end,
- xStart, subLine, subLineStart, background);
- }
+ if (phasesDraw != phasesOne) {
+ if (phase & drawBack) {
+ DrawBackground(surface, model, vsDraw, ll, rcLine, lineRange, posLineStart, xStart,
+ subLine, background);
+ DrawFoldDisplayText(surface, model, vsDraw, ll, line, xStart, rcLine, subLine, subLineStart, drawBack);
+ phase = static_cast<DrawPhase>(phase & ~drawBack); // Remove drawBack to not draw again in DrawFoldDisplayText
+ DrawEOL(surface, model, vsDraw, ll, rcLine, line, lineRange.end,
+ xStart, subLine, subLineStart, background);
+ }
- if (phase & drawIndicatorsBack) {
- DrawIndicators(surface, model, vsDraw, ll, line, xStart, rcLine, subLine, lineRange.end, true, model.hoverIndicatorPos);
- if (phasesDraw != phasesOne) {
+ 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);
}