diff options
Diffstat (limited to 'manager.cpp')
-rw-r--r-- | manager.cpp | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/manager.cpp b/manager.cpp index 01c9e01..7f9fa89 100644 --- a/manager.cpp +++ b/manager.cpp @@ -15,9 +15,7 @@ void Manager::receive(const Command &cmd){ if(cmd[0]=="open_file"){ buffers.emplace_back(this); buffers.back().receive(cmd); - } else if(cmd[0]=="insert_char"){ - if(activeIdx==-1)bel(); - else buffers[activeIdx].receive(cmd); + if(activeIdx==-1)activeIdx=buffers.size()-1; } else if(cmd[0]=="error"){ pushcursor(); Size termsize=gettermsize(); @@ -29,7 +27,8 @@ void Manager::receive(const Command &cmd){ } else if(cmd[0]=="quit_app"){ should_quit=true; } else { - THROW("Unknown command"); + if(activeIdx==-1)bel(); + else buffers[activeIdx].receive(cmd); } } |