do not save search string in history when called from eventinfo hook
authorMoritz Venn <ritzmo@users.schwerkraft.elitedvb.net>
Sun, 1 Feb 2009 00:10:58 +0000 (00:10 +0000)
committerMoritz Venn <ritzmo@users.schwerkraft.elitedvb.net>
Sun, 1 Feb 2009 00:10:58 +0000 (00:10 +0000)
epgsearch/src/EPGSearch.py
epgsearch/src/plugin.py

index f0ec89a..4ed7c6f 100644 (file)
@@ -12,7 +12,7 @@ from Components.config import config
 from Components.TimerList import TimerList
 
 class EPGSearch(EPGSelection):
-       def __init__(self, session, search = None):
+       def __init__(self, session, *args):
                EPGSelection.__init__(self, session, '')  # Empty string serviceref so we get EPG_TYPE_SINGLE
                self.skinName = "EPGSelection"
 
@@ -20,17 +20,17 @@ class EPGSearch(EPGSelection):
                self["key_yellow"].setText(_("New Search"))
                self["key_blue"].setText(_("History"))
 
-               self.search = search
+               self.searchargs = args
 
        def onCreate(self):
-               if self.search:
-                       self.searchEPG(self.search)
+               if self.searchargs:
+                       self.searchEPG(*self.searchargs)
                else:
                        l = self["list"]
                        l.recalcEntrySize()
                        l.list = []
                        l.l.setList(l.list)
-               del self.search
+               del self.searchargs
 
        def closeScreen(self):
                # Save our history
@@ -74,17 +74,18 @@ class EPGSearch(EPGSelection):
                        else:
                                self.searchEPG(ret)
 
-       def searchEPG(self, searchString = None):
+       def searchEPG(self, searchString = None, searchSave = True):
                if searchString:
-                       # Maintain history
-                       history = config.plugins.epgsearch.history.value
-                       if searchString not in history:
-                               history.insert(0, searchString)
-                               if len(history) > 10:
-                                       history.pop(10)
-                       else:
-                               history.remove(searchString)
-                               history.insert(0, searchString)
+                       if searchSave:
+                               # Maintain history
+                               history = config.plugins.epgsearch.history.value
+                               if searchString not in history:
+                                       history.insert(0, searchString)
+                                       if len(history) > 10:
+                                               history.pop(10)
+                               else:
+                                       history.remove(searchString)
+                                       history.insert(0, searchString)
 
                        # Workaround to allow search for umlauts if we know the encoding (pretty bad, I know...)
                        encoding = config.plugins.epgsearch.encoding.value
index 69b3b84..fcc52ff 100644 (file)
@@ -33,7 +33,7 @@ def eventinfo(session, servicelist, **kwargs):
        event = info.getEvent(0) # 0 = now, 1 = next
        name = event and event.getEventName() or ''
 
-       session.open(EPGSearch, name)
+       session.open(EPGSearch, name, False)
 
 def Plugins(**kwargs):
        return [