sup

A curses threads-with-tags style email client

sup.git

git clone https://supmua.dev/git/sup/
commit 8f2c6a2081d78732ac2e0cfe5c713cb580595c33
parent 6901568459777b5f13f79b8b2a496a59bba27689
Author: William Morgan <wmorgan-sup@masanjin.net>
Date:   Fri,  5 Jun 2009 10:40:51 -0400

Merge branch 'master' into next

Diffstat:
M lib/sup/modes/thread-view-mode.rb | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/lib/sup/modes/thread-view-mode.rb b/lib/sup/modes/thread-view-mode.rb
@@ -27,6 +27,7 @@ EOS
   register_keymap do |k|
     k.add :toggle_detailed_header, "Toggle detailed header", 'h'
     k.add :show_header, "Show full message header", 'H'
+    k.add :show_message, "Show full message (raw form)", 'V'
     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'
@@ -134,6 +135,13 @@ EOS
     end
   end
 
+  def show_message
+    m = @message_lines[curpos] or return
+    BufferManager.spawn_unless_exists("Raw message for #{m.id}") do
+      TextMode.new m.raw_message
+    end
+  end
+
   def toggle_detailed_header
     m = @message_lines[curpos] or return
     @layout[m].state = (@layout[m].state == :detailed ? :open : :detailed)
@@ -253,7 +261,7 @@ EOS
     end
     if chunk.is_a?(Message)
       jump_to_message chunk
-      jump_to_next_open
+      jump_to_next_open if layout.state == :closed
     end
   end