]> git.cworth.org Git - sup/commitdiff
various key changes
authorwmorgan <wmorgan@5c8cc53c-5e98-4d25-b20a-d8db53a31250>
Wed, 1 Aug 2007 17:40:30 +0000 (17:40 +0000)
committerwmorgan <wmorgan@5c8cc53c-5e98-4d25-b20a-d8db53a31250>
Wed, 1 Aug 2007 17:40:30 +0000 (17:40 +0000)
git-svn-id: svn://rubyforge.org/var/svn/sup/trunk@514 5c8cc53c-5e98-4d25-b20a-d8db53a31250

lib/sup/modes/label-list-mode.rb
lib/sup/modes/thread-index-mode.rb
lib/sup/modes/thread-view-mode.rb

index eae814958b10f228dabaa75748ca2cdd048454c6..fd994f756216bd3b3c7ca679b9a2bac82dbb8956 100644 (file)
@@ -3,7 +3,7 @@ module Redwood
 class LabelListMode < LineCursorMode
   register_keymap do |k|
     k.add :select_label, "Select label", :enter
-    k.add :reload, "Discard label list and reload", 'D'
+    k.add :reload, "Discard label list and reload", '@'
   end
 
   bool_reader :done
index 5c6d4bd45dd4f7c6c766b6d925a3a0766662a4c3..a64da78e5fb1f0fd3215f8192f04f5fbd226ac95 100644 (file)
@@ -10,7 +10,7 @@ class ThreadIndexMode < LineCursorMode
 
   register_keymap do |k|
     k.add :load_threads, "Load #{LOAD_MORE_THREAD_NUM} more threads", 'M'
-    k.add :reload, "Discard threads and reload", 'D'
+    k.add :reload, "Discard threads and reload", '@'
     k.add :toggle_archived, "Toggle archived status", 'a'
     k.add :toggle_starred, "Star or unstar all messages in thread", '*'
     k.add :toggle_new, "Toggle new/read status of all messages in thread", 'N'
@@ -105,6 +105,12 @@ class ThreadIndexMode < LineCursorMode
 
   def handle_archived_update *a; handle_read_update(*a); end
 
+  def handle_deleted_update sender, t
+    handle_read_update sender, t
+    hide_thread t
+    regen_text
+  end
+
   ## overwrite me!
   def is_relevant? m; false; end
 
index bc197725efaed3be37f4a2f8aa23fa20e70abde1..10212ec19f76acd5c08f1b19c61610ea1b5ee348 100644 (file)
@@ -14,7 +14,7 @@ class ThreadViewMode < LineCursorMode
   INDENT_SPACES = 2 # how many spaces to indent child messages
 
   register_keymap do |k|
-    k.add :toggle_detailed_header, "Toggle detailed header", 'd'
+    k.add :toggle_detailed_header, "Toggle detailed header", 'h'
     k.add :show_header, "Show full message header", 'H'
     k.add :toggle_expanded, "Expand/collapse item", :enter
     k.add :expand_all_messages, "Expand/collapse all messages", 'E'
@@ -27,12 +27,13 @@ class ThreadViewMode < LineCursorMode
     k.add :collapse_non_new_messages, "Collapse all but new messages", 'N'
     k.add :reply, "Reply to a message", 'r'
     k.add :forward, "Forward a message", 'f'
-    k.add :alias, "Edit alias/nickname for a person", 'a'
+    k.add :alias, "Edit alias/nickname for a person", 'i'
     k.add :edit_as_new, "Edit message as new", 'D'
     k.add :save_to_disk, "Save message/attachment to disk", 's'
     k.add :search, "Search for messages from particular people", 'S'
     k.add :compose, "Compose message to person", 'm'
-    k.add :archive_and_kill, "Archive thread and kill buffer", 'A'
+    k.add :archive_and_kill, "Archive thread and kill buffer", 'a'
+    k.add :delete_and_kill, "Delete thread and kill buffer", 'd'
   end
 
   ## there are a couple important instance variables we hold to format
@@ -294,6 +295,12 @@ class ThreadViewMode < LineCursorMode
     BufferManager.kill_buffer_safely buffer
   end
 
+  def delete_and_kill
+    @thread.apply_label :deleted
+    UpdateManager.relay self, :deleted, @thread
+    BufferManager.kill_buffer_safely buffer
+  end
+
 private
 
   def toggle_chunk_expansion chunk