diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/Editor.cxx | 10 | ||||
| -rw-r--r-- | src/Editor.h | 1 | 
2 files changed, 10 insertions, 1 deletions
diff --git a/src/Editor.cxx b/src/Editor.cxx index 1337a0e05..6cb33a07a 100644 --- a/src/Editor.cxx +++ b/src/Editor.cxx @@ -1542,6 +1542,14 @@ void Editor::DropCaret() {  	InvalidateCaret();  } +void Editor::CaretSetPeriod(int period) { +	if (caret.period != period) { +		caret.period = period; +		caret.on = true; +		InvalidateCaret(); +	} +} +  void Editor::InvalidateCaret() {  	if (posDrag.IsValid()) {  		InvalidateRange(posDrag.Position(), posDrag.Position() + 1); @@ -7816,7 +7824,7 @@ sptr_t Editor::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam) {  		return caret.period;  	case SCI_SETCARETPERIOD: -		caret.period = wParam; +		CaretSetPeriod(wParam);  		break;  	case SCI_GETWORDCHARS: diff --git a/src/Editor.h b/src/Editor.h index 810175b58..532211283 100644 --- a/src/Editor.h +++ b/src/Editor.h @@ -420,6 +420,7 @@ protected:	// ScintillaBase subclass needs access to much of Editor  	void ScrollRange(SelectionRange range);  	void ShowCaretAtCurrentPosition();  	void DropCaret(); +	void CaretSetPeriod(int period);  	void InvalidateCaret();  	virtual void UpdateSystemCaret();  | 
