X-Git-Url: http://code.vuplus.com/gitweb/?a=blobdiff_plain;f=lib%2Fpython%2FScreens%2FChannelSelection.py;h=6813381fef09251093adbf7b6bc18f63adbd0266;hb=6c77bc054d80f13972ad37ff34e958ca49e7e7c1;hp=c07e34954e4955bc1922e11d764475e460ce5286;hpb=a29693293853a2dd6dd83e0586e8e2dbd1ac1d7f;p=vuplus_dvbapp diff --git a/lib/python/Screens/ChannelSelection.py b/lib/python/Screens/ChannelSelection.py index c07e349..6813381 100755 --- a/lib/python/Screens/ChannelSelection.py +++ b/lib/python/Screens/ChannelSelection.py @@ -65,6 +65,24 @@ class BouquetSelector(Screen): def cancelClick(self): self.close(False) +class SilentBouquetSelector: + def __init__(self, bouquets, enableWrapAround=False, current=0): + self.bouquets = [b[1] for b in bouquets] + self.pos = current + self.count = len(bouquets) + self.enableWrapAround = enableWrapAround + + def up(self): + if self.pos > 0 or self.enableWrapAround: + self.pos = (self.pos - 1) % self.count + + def down(self): + if self.pos < (self.count - 1) or self.enableWrapAround: + self.pos = (self.pos + 1) % self.count + + def getCurrent(self): + return self.bouquets[self.pos] + # csel.bouquet_mark_edit values OFF = 0 EDIT_BOUQUET = 1 @@ -213,6 +231,7 @@ class ChannelContextMenu(Screen): if self.session.pipshown: del self.session.pip self.session.pip = self.session.instantiateDialog(PictureInPicture) + self.session.pip.setAnimationMode(0) self.session.pip.show() newservice = self.csel.servicelist.getCurrent() if self.session.pip.playService(newservice): @@ -1056,7 +1075,13 @@ class ChannelSelectionBase(Screen): self.servicelist.moveToChar(charstr[0]) def keyAsciiCode(self): - unichar = unichr(getPrevAsciiCode()) + #unichar = unichr(getPrevAsciiCode()) + from Components.config import getCharValue + unichar = getCharValue(getPrevAsciiCode()) + if unichar is None: + return + if len(str(unichar)) > 1: + return charstr = unichar.encode("utf-8") if len(charstr) == 1: self.servicelist.moveToChar(charstr[0]) @@ -1407,6 +1432,7 @@ class ChannelSelectionRadio(ChannelSelectionBase, ChannelSelectionEdit, ChannelS self.onLayoutFinish.append(self.onCreate) self.info = session.instantiateDialog(RadioInfoBar) # our simple infobar + self.info.setAnimationMode(0) self["actions"] = ActionMap(["OkCancelActions", "TvRadioActions"], {