aboutsummaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
Diffstat (limited to 'core')
-rw-r--r--core/ui.lua9
1 files changed, 9 insertions, 0 deletions
diff --git a/core/ui.lua b/core/ui.lua
index e21f7b56..f6b199b2 100644
--- a/core/ui.lua
+++ b/core/ui.lua
@@ -392,6 +392,15 @@ events_connect(events.QUIT, function()
} == 2
end)
+-- Keeps track of and switches back to the previous buffer after buffer close.
+events_connect(events.BUFFER_BEFORE_SWITCH, function()
+ view._prev_buffer = buffer
+end)
+events_connect(events.BUFFER_DELETED, function()
+ local i = _BUFFERS[view._prev_buffer]
+ if i then view:goto_buffer(i) end
+end)
+
events_connect(events.ERROR, ui.print)
--[[ The tables below were defined in C.