From e68091ca41c41d930cfa51589da1c2b02664d454 Mon Sep 17 00:00:00 2001 From: wmorgan Date: Mon, 20 Aug 2007 23:30:37 +0000 Subject: [PATCH] better discard behavior for messages git-svn-id: svn://rubyforge.org/var/svn/sup/trunk@540 5c8cc53c-5e98-4d25-b20a-d8db53a31250 --- lib/sup/modes/compose-mode.rb | 6 ++++++ lib/sup/modes/edit-message-mode.rb | 4 +++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/lib/sup/modes/compose-mode.rb b/lib/sup/modes/compose-mode.rb index fe71279..c158592 100644 --- a/lib/sup/modes/compose-mode.rb +++ b/lib/sup/modes/compose-mode.rb @@ -13,6 +13,12 @@ class ComposeMode < EditMessageMode super :header => header, :body => (opts[:body] || []) end + + def edit_message + edited = super + BufferManager.kill_buffer self.buffer unless edited + edited + end end end diff --git a/lib/sup/modes/edit-message-mode.rb b/lib/sup/modes/edit-message-mode.rb index 2c03140..3dc6717 100644 --- a/lib/sup/modes/edit-message-mode.rb +++ b/lib/sup/modes/edit-message-mode.rb @@ -87,12 +87,14 @@ class EditMessageMode < LineCursorMode BufferManager.shell_out "#{editor} #{@file.path}" @edited = true if File.mtime(@file.path) > mtime - BufferManager.kill_buffer self.buffer unless @edited + return @edited unless @edited header, @body = parse_file @file.path @header = header - NON_EDITABLE_HEADERS handle_new_text @header, @body update + + @edited end def killable? -- 2.45.2