diff --git a/src/modules/eterm/src/eterm/terminal/terminaldisplay.cpp b/src/modules/eterm/src/eterm/terminal/terminaldisplay.cpp index 0d22ead64..46091e707 100644 --- a/src/modules/eterm/src/eterm/terminal/terminaldisplay.cpp +++ b/src/modules/eterm/src/eterm/terminal/terminaldisplay.cpp @@ -1514,6 +1514,7 @@ void TerminalDisplay::onTextInput( const Uint32& chr ) { input.push_back( chr ); std::string utf8Input( input.toUtf8() ); mTerminal->ttywrite( utf8Input.c_str(), utf8Input.size(), 1 ); + mDirty = true; } void TerminalDisplay::onTextEditing( const String&, const Int32&, const Int32& ) { diff --git a/src/tools/eterm/eterm.cpp b/src/tools/eterm/eterm.cpp index 0427bb270..8f86f3a08 100644 --- a/src/tools/eterm/eterm.cpp +++ b/src/tools/eterm/eterm.cpp @@ -86,6 +86,12 @@ void inputCallback( InputEvent* event ) { terminal->onTextInput( event->text.text ); break; } + case InputEvent::TextEditing: { + terminal->onTextEditing( event->textediting.text, event->textediting.start, + event->textediting.length ); + + break; + } case InputEvent::VideoExpose: terminal->setFocus( win->hasFocus() ); terminal->invalidate();