- fix: correctly reset caret when redo cut with no selection
This commit is contained in:
parent
1a0267de7b
commit
5a338ef892
2
NEWS.md
2
NEWS.md
|
@ -14,6 +14,8 @@ Red Panda C++ Version 1.0.0
|
|||
- enhancement: toggle block comment
|
||||
- fix: syntax color of #include header filenames not correct
|
||||
- fix: when no selection, copy/cut should auto select whole line with the line break
|
||||
- fix: redo cut with no selection while make whole line selected
|
||||
- fix: correctly reset caret when redo cut with no selection
|
||||
|
||||
Red Panda C++ Version 0.14.5
|
||||
- fix: the "gnu c++ 20" option in compiler set options is wrong
|
||||
|
|
|
@ -2818,14 +2818,33 @@ void SynEdit::doCutToClipboard()
|
|||
{
|
||||
if (mReadOnly)
|
||||
return;
|
||||
if (!selAvail())
|
||||
doSelecteLine();
|
||||
mUndoList->BeginBlock();
|
||||
if (!selAvail()) {
|
||||
mUndoList->AddChange(
|
||||
SynChangeReason::crSelection,
|
||||
caretXY(),
|
||||
caretXY(),
|
||||
"",
|
||||
SynSelectionMode::smNormal);
|
||||
mUndoList->AddChange(
|
||||
SynChangeReason::crCaret,
|
||||
caretXY(),
|
||||
caretXY(),
|
||||
"",
|
||||
activeSelectionMode());
|
||||
doSelecteLine();
|
||||
}
|
||||
auto action = finally([this] {
|
||||
mUndoList->EndBlock();
|
||||
});
|
||||
internalDoCopyToClipboard(selText());
|
||||
doSetSelText("");
|
||||
mUndoList->AddChange(
|
||||
SynChangeReason::crNothing,
|
||||
BufferCoord{0,0},
|
||||
BufferCoord{0,0},
|
||||
"",
|
||||
SynSelectionMode::smNormal);
|
||||
}
|
||||
|
||||
void SynEdit::doCopyToClipboard()
|
||||
|
|
Loading…
Reference in New Issue