]> git.cworth.org Git - sup/commitdiff
buffer killing & focusing bugfixes based on patch by Grant Hollingworth
authorwmorgan <wmorgan@5c8cc53c-5e98-4d25-b20a-d8db53a31250>
Wed, 28 Nov 2007 17:21:58 +0000 (17:21 +0000)
committerwmorgan <wmorgan@5c8cc53c-5e98-4d25-b20a-d8db53a31250>
Wed, 28 Nov 2007 17:21:58 +0000 (17:21 +0000)
git-svn-id: svn://rubyforge.org/var/svn/sup/trunk@733 5c8cc53c-5e98-4d25-b20a-d8db53a31250

lib/sup/buffer.rb

index 609962cb950af1fdec53ec033a858d7d95a30dec..e45046aa20e4ff8fb46012d34491aaf4670ab4c1 100644 (file)
@@ -191,15 +191,13 @@ EOS
   end
 
   def raise_to_front buf
-    return unless @buffers.member? buf
-
-    @buffers.delete buf
+    @buffers.delete(buf) or return
     if @buffers.length > 0 && @buffers.last.force_to_top?
       @buffers.insert(-2, buf)
     else
       @buffers.push buf
-      focus_on buf
     end
+    focus_on buf
     @dirty = true
   end
 
@@ -387,10 +385,9 @@ EOS
     if @buffers.empty?
       ## TODO: something intelligent here
       ## for now I will simply prohibit killing the inbox buffer.
+      raise "how did you kill the inbox? that's impossible!"
     else
-      last = @buffers.last
-      @focus_buf ||= last
-      raise_to_front last
+      raise_to_front @buffers.last
     end
   end