summaryrefslogtreecommitdiff
path: root/manager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'manager.cpp')
-rw-r--r--manager.cpp7
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);
}
}