InputMode::Prompt: use an enum for mode rather than bool m_insert_reg
This commit is contained in:
parent
ebd768e03d
commit
0746e7309e
|
@ -331,11 +331,11 @@ public:
|
||||||
std::vector<String>& history = ms_history[m_prompt];
|
std::vector<String>& history = ms_history[m_prompt];
|
||||||
const String& line = m_line_editor.line();
|
const String& line = m_line_editor.line();
|
||||||
|
|
||||||
if (m_insert_reg)
|
if (m_mode == Mode::InsertReg)
|
||||||
{
|
{
|
||||||
String reg = RegisterManager::instance()[key.key].values(context())[0];
|
String reg = RegisterManager::instance()[key.key].values(context())[0];
|
||||||
m_line_editor.insert(reg);
|
m_line_editor.insert(reg);
|
||||||
m_insert_reg = false;
|
m_mode = Mode::Default;
|
||||||
}
|
}
|
||||||
else if (key == Key{Key::Modifiers::Control, 'm'}) // enter
|
else if (key == Key{Key::Modifiers::Control, 'm'}) // enter
|
||||||
{
|
{
|
||||||
|
@ -364,7 +364,7 @@ public:
|
||||||
}
|
}
|
||||||
else if (key == Key{Key::Modifiers::Control, 'r'})
|
else if (key == Key{Key::Modifiers::Control, 'r'})
|
||||||
{
|
{
|
||||||
m_insert_reg = true;
|
m_mode = Mode::InsertReg;
|
||||||
}
|
}
|
||||||
else if (key == Key::Up or
|
else if (key == Key::Up or
|
||||||
key == Key{Key::Modifiers::Control, 'p'})
|
key == Key{Key::Modifiers::Control, 'p'})
|
||||||
|
@ -487,6 +487,8 @@ private:
|
||||||
context().print_status(display_line);
|
context().print_status(display_line);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
enum class Mode { Default, InsertReg };
|
||||||
|
|
||||||
PromptCallback m_callback;
|
PromptCallback m_callback;
|
||||||
Completer m_completer;
|
Completer m_completer;
|
||||||
const String m_prompt;
|
const String m_prompt;
|
||||||
|
@ -495,7 +497,7 @@ private:
|
||||||
int m_current_completion = -1;
|
int m_current_completion = -1;
|
||||||
String m_prefix;
|
String m_prefix;
|
||||||
LineEditor m_line_editor;
|
LineEditor m_line_editor;
|
||||||
bool m_insert_reg = false;
|
Mode m_mode = Mode::Default;
|
||||||
|
|
||||||
static std::unordered_map<String, std::vector<String>> ms_history;
|
static std::unordered_map<String, std::vector<String>> ms_history;
|
||||||
std::vector<String>::iterator m_history_it;
|
std::vector<String>::iterator m_history_it;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user