diff options
| author | Saracen <SaracenOne@gmail.com> | 2018-06-07 21:16:57 +0100 |
|---|---|---|
| committer | Saracen <SaracenOne@gmail.com> | 2018-06-11 17:22:11 +0100 |
| commit | c5bdb5b1d8893abaf171520412479fb31a697a41 (patch) | |
| tree | 7fb2d0216e5496c19ecb52ea9b4e0dc1155f4816 /scene/gui/line_edit.cpp | |
| parent | 76875ba145c5745033d0a1c9fda2f4349e2509b3 (diff) | |
| download | redot-engine-c5bdb5b1d8893abaf171520412479fb31a697a41.tar.gz | |
IME context detection.
Diffstat (limited to 'scene/gui/line_edit.cpp')
| -rw-r--r-- | scene/gui/line_edit.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/scene/gui/line_edit.cpp b/scene/gui/line_edit.cpp index f1f1a66b47..71cb01d2ee 100644 --- a/scene/gui/line_edit.cpp +++ b/scene/gui/line_edit.cpp @@ -756,6 +756,7 @@ void LineEdit::_notification(int p_what) { if (has_focus()) { + OS::get_singleton()->set_ime_active(true); OS::get_singleton()->set_ime_position(get_global_position() + Point2(x_ofs, y_ofs + caret_height)); OS::get_singleton()->set_ime_intermediate_text_callback(_ime_text_callback, this); } @@ -766,6 +767,7 @@ void LineEdit::_notification(int p_what) { draw_caret = true; } + OS::get_singleton()->set_ime_active(true); Point2 cursor_pos = Point2(get_cursor_position(), 1) * get_minimum_size().height; OS::get_singleton()->set_ime_position(get_global_position() + cursor_pos); OS::get_singleton()->set_ime_intermediate_text_callback(_ime_text_callback, this); @@ -778,6 +780,7 @@ void LineEdit::_notification(int p_what) { OS::get_singleton()->set_ime_position(Point2()); OS::get_singleton()->set_ime_intermediate_text_callback(NULL, NULL); + OS::get_singleton()->set_ime_active(false); ime_text = ""; ime_selection = Point2(); |
