diff options
| author | Maxime Coste <frrrwww@gmail.com> | 2015-03-15 18:44:11 +0000 |
|---|---|---|
| committer | Maxime Coste <frrrwww@gmail.com> | 2015-03-15 18:44:11 +0000 |
| commit | 3921b234e785128e2c05e3f719352cbd263e6026 (patch) | |
| tree | 41462fa5156d7ac8b6c080467480fc399734ca8b /src/input_handler.cc | |
| parent | b5854ece4383687e41ea69ac6896acd0a894510d (diff) | |
Store fake keystrokes when selecting an insert completion candidate
Instead of storing the real 'select next completion' keystroke,
generate fake backspace/delete/char keystrokes so that replay
of the insert will insert the exact same text.
Fixes #135
Diffstat (limited to 'src/input_handler.cc')
| -rw-r--r-- | src/input_handler.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/input_handler.cc b/src/input_handler.cc index 313820da..b0c6b8b4 100644 --- a/src/input_handler.cc +++ b/src/input_handler.cc @@ -879,12 +879,14 @@ public: insert('\t'); else if (key == ctrl('n')) { - m_completer.select(1); + last_insert().second.pop_back(); + m_completer.select(1, last_insert().second); update_completions = false; } else if (key == ctrl('p')) { - m_completer.select(-1); + last_insert().second.pop_back(); + m_completer.select(-1, last_insert().second); update_completions = false; } else if (key == ctrl('x')) |
