[hamster-applet] less obtrusive tab, don't be too smart with completing



commit aaedca4a65311d43b8cff080278d8f2c26909f49
Author: Toms Bauģis <toms baugis gmail com>
Date:   Tue Nov 24 01:05:55 2009 +0000

    less obtrusive tab, don't be too smart with completing

 hamster/widgets/tags.py |   11 ++++++++---
 1 files changed, 8 insertions(+), 3 deletions(-)
---
diff --git a/hamster/widgets/tags.py b/hamster/widgets/tags.py
index 7ddf94d..35834aa 100644
--- a/hamster/widgets/tags.py
+++ b/hamster/widgets/tags.py
@@ -23,6 +23,8 @@ from math import pi
 
 from hamster import graphics
 
+from hamster.configuration import runtime
+
 class TagsEntry(gtk.Entry):
     __gsignals__ = {
         'tags-selected': (gobject.SIGNAL_RUN_LAST, gobject.TYPE_NONE, ()),
@@ -164,7 +166,7 @@ class TagsEntry(gtk.Entry):
 
         text = self.get_text()
 
-        return text[text.rfind(",", 0, cursor)+1:cursor].strip()
+        return text[text.rfind(",", 0, cursor)+1:max(text.find(",", cursor+1)+1, len(text))].strip()
 
 
     def replace_tag(self, old_tag, new_tag):
@@ -185,8 +187,11 @@ class TagsEntry(gtk.Entry):
         if event.keyval == gtk.keysyms.Tab:
             if self.popup.get_property("visible"):
                 #we have to replace
-                self.replace_tag(self.get_cursor_tag(), self.filter_tags[0])
-                return True
+                if self.get_text() and self.get_cursor_tag() != self.filter_tags[0]:
+                    self.replace_tag(self.get_cursor_tag(), self.filter_tags[0])
+                    return True
+                else:
+                    return False
             else:
                 return False
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]