summaryrefslogtreecommitdiff
path: root/menu.c
diff options
context:
space:
mode:
authorLeo Tenenbaum <pommicket@gmail.com>2021-01-30 13:21:53 -0500
committerLeo Tenenbaum <pommicket@gmail.com>2021-01-30 13:21:53 -0500
commitb35a780479bbf5038a825d415f9ca49c92f6b425 (patch)
tree44e71007552714b03ae812e466495ec5c8a7e27b /menu.c
parenta61d90c32d4d6448148894872ebd91eb8f10fc2e (diff)
ctrl+q to quit (with unsaved changes dialog)
Diffstat (limited to 'menu.c')
-rw-r--r--menu.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/menu.c b/menu.c
index df3c7a0..5cdf83f 100644
--- a/menu.c
+++ b/menu.c
@@ -129,13 +129,16 @@ static void menu_update(Ted *ted, Menu menu) {
// save changes
switch (ted->warn_unsaved) {
case CMD_TAB_CLOSE:
+ menu_close(ted, true);
if (buffer_save(ted->prev_active_buffer)) {
- menu_close(ted, true);
command_execute(ted, CMD_TAB_CLOSE, 1);
}
break;
case CMD_QUIT:
- assert(0); // @TODO!
+ menu_close(ted, true);
+ if (ted_save_all(ted)) {
+ command_execute(ted, CMD_QUIT, 1);
+ }
break;
default:
assert(0);