commit e68091ca41c41d930cfa51589da1c2b02664d454
parent 0a7d3984f636ec244d6164be1c6af7c6c61c1875
Author: wmorgan <wmorgan@5c8cc53c-5e98-4d25-b20a-d8db53a31250>
Date: Mon, 20 Aug 2007 23:30:37 +0000
better discard behavior for messages
git-svn-id: svn://rubyforge.org/var/svn/sup/trunk@540 5c8cc53c-5e98-4d25-b20a-d8db53a31250
Diffstat:
2 files changed, 9 insertions(+), 1 deletion(-)
diff --git 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
@@ -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?