From: Nicolas Pouillard Date: Sun, 16 Nov 2008 17:32:12 +0000 (+0100) Subject: Allow to hit 'y' to send a draft in thread-view-mode X-Git-Url: https://git.notmuchmail.org/git?a=commitdiff_plain;h=2fad0bb34e5e3e1abbf65a28ba0318f7c81af555;p=sup Allow to hit 'y' to send a draft in thread-view-mode --- diff --git a/lib/sup/modes/thread-view-mode.rb b/lib/sup/modes/thread-view-mode.rb index 5f578d3..6e9256d 100644 --- a/lib/sup/modes/thread-view-mode.rb +++ b/lib/sup/modes/thread-view-mode.rb @@ -30,6 +30,7 @@ EOS k.add :activate_chunk, "Expand/collapse or activate item", :enter k.add :expand_all_messages, "Expand/collapse all messages", 'E' k.add :edit_draft, "Edit draft", 'e' + k.add :send_draft, "Send draft", 'y' k.add :edit_labels, "Edit or add labels for a thread", 'l' k.add :expand_all_quotes, "Expand/collapse all quotes in a message", 'o' k.add :jump_to_next_open, "Jump to next open message", 'n' @@ -283,6 +284,18 @@ EOS end end + def send_draft + m = @message_lines[curpos] or return + if m.is_draft? + mode = ResumeMode.new m + BufferManager.spawn "Send message", mode + BufferManager.kill_buffer self.buffer + mode.send_message + else + BufferManager.flash "Not a draft message!" + end + end + def jump_to_first_open loose_alignment=false m = @message_lines[0] or return if @layout[m].state != :closed @@ -642,7 +655,7 @@ private [[[:missing_message_color, "#{prefix}"]]] when Message message_patina_lines(chunk, state, start, parent, prefix, color, star_color) + - (chunk.is_draft? ? [[[:draft_notification_color, prefix + " >>> This message is a draft. To edit, hit 'e'. <<<"]]] : []) + (chunk.is_draft? ? [[[:draft_notification_color, prefix + " >>> This message is a draft. Hit 'e' to edit, 'y' to send. <<<"]]] : []) else raise "Bad chunk: #{chunk.inspect}" unless chunk.respond_to?(:inlineable?) ## debugging