From 64bc9f34da37cf7d3955d5b1601cc8cc68905157 Mon Sep 17 00:00:00 2001 From: gfgtdf Date: Thu, 19 Jul 2018 17:40:16 +0200 Subject: [PATCH] fixes #3245 ctrl+x in gui1 textbox in particular the chat textbox. Also fixes ctrl+a (selectall) --- src/widgets/textbox.cpp | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/widgets/textbox.cpp b/src/widgets/textbox.cpp index 38915a755682..6c8826ffcc17 100644 --- a/src/widgets/textbox.cpp +++ b/src/widgets/textbox.cpp @@ -594,7 +594,27 @@ bool textbox::handle_key_down(const SDL_Event &event) } } break; + + case SDLK_x: // cut + { + if(is_selection()) + { + const size_t beg = std::min(size_t(selstart_),size_t(selend_)); + const size_t end = std::max(size_t(selstart_),size_t(selend_)); + + ucs4::string ws(text_.begin() + beg, text_.begin() + end); + std::string s = unicode_cast(ws); + desktop::clipboard::copy_to_clipboard(s, false); + erase_selection(); + } + break; + } + case SDLK_a: // selectall + { + set_selection(0, text_.size()); + break; } + }//end switch } else { pass_event_to_target(event);