diff options
author | nyamatongwe <unknown> | 2013-01-01 12:21:37 +1100 |
---|---|---|
committer | nyamatongwe <unknown> | 2013-01-01 12:21:37 +1100 |
commit | e17f73fca0ac5d7ab1a26f92a3b68a9429925e15 (patch) | |
tree | d3d503846a9d77f11fbe3d2131938cf0667ce342 /src/Editor.cxx | |
parent | 38e98e68f3975066a75bc007c8919fe564adb5aa (diff) | |
download | scintilla-mirror-e17f73fca0ac5d7ab1a26f92a3b68a9429925e15.tar.gz |
Feature #3592730. Option for caret line to be visible without focus.
From Vidya Wasi.
Diffstat (limited to 'src/Editor.cxx')
-rw-r--r-- | src/Editor.cxx | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/Editor.cxx b/src/Editor.cxx index bb23e9e6d..34c195f3e 100644 --- a/src/Editor.cxx +++ b/src/Editor.cxx @@ -2743,7 +2743,7 @@ void Editor::DrawLine(Surface *surface, ViewStyle &vsDraw, int line, int lineVis // the color for the highest numbered one is used. bool overrideBackground = false; ColourDesired background; - if (caret.active && vsDraw.showCaretLineBackground && (vsDraw.caretLineAlpha == SC_ALPHA_NOALPHA) && ll->containsCaret) { + if ((caret.active || vsDraw.alwaysShowCaretLineBackground) && vsDraw.showCaretLineBackground && (vsDraw.caretLineAlpha == SC_ALPHA_NOALPHA) && ll->containsCaret) { overrideBackground = true; background = vsDraw.caretLineBackground; } @@ -3193,7 +3193,7 @@ void Editor::DrawLine(Surface *surface, ViewStyle &vsDraw, int line, int lineVis // Draw any translucent whole line states rcSegment = rcLine; - if (caret.active && vsDraw.showCaretLineBackground && ll->containsCaret) { + if ((caret.active || vsDraw.alwaysShowCaretLineBackground) && vsDraw.showCaretLineBackground && ll->containsCaret) { SimpleAlphaRectangle(surface, rcSegment, vsDraw.caretLineBackground, vsDraw.caretLineAlpha); } marks = pdoc->GetMark(line); @@ -3738,6 +3738,7 @@ long Editor::FormatRange(bool draw, Sci_RangeToFormat *pfr) { vsPrint.whitespaceBackgroundSet = false; vsPrint.whitespaceForegroundSet = false; vsPrint.showCaretLineBackground = false; + vsPrint.alwaysShowCaretLineBackground = false; // Don't highlight matching braces using indicators vsPrint.braceHighlightIndicatorSet = false; vsPrint.braceBadLightIndicatorSet = false; @@ -8321,6 +8322,13 @@ sptr_t Editor::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam) { vs.showCaretLineBackground = wParam != 0; InvalidateStyleRedraw(); break; + case SCI_GETCARETLINEVISIBLEALWAYS: + return vs.alwaysShowCaretLineBackground; + case SCI_SETCARETLINEVISIBLEALWAYS: + vs.alwaysShowCaretLineBackground = wParam != 0; + InvalidateStyleRedraw(); + break; + case SCI_GETCARETLINEBACK: return vs.caretLineBackground.AsLong(); case SCI_SETCARETLINEBACK: |