diff options
Diffstat (limited to 'src/Fl_Text_Editor.cxx')
| -rw-r--r-- | src/Fl_Text_Editor.cxx | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/Fl_Text_Editor.cxx b/src/Fl_Text_Editor.cxx index 723f2bac7..d13fd7139 100644 --- a/src/Fl_Text_Editor.cxx +++ b/src/Fl_Text_Editor.cxx @@ -514,8 +514,9 @@ int Fl_Text_Editor::handle_key() { int del = 0; if (Fl::compose(del)) { if (del) { - int dp = insert_position(), di = del; - while (di--) dp = buffer()->prev_char_clipped(dp); + // del is a number of bytes + int dp = insert_position() - del; + if ( dp < 0 ) dp = 0; buffer()->select(dp, insert_position()); } kill_selection(this); |
