diff options
| author | Felix Domke <tmbinc@elitedvb.net> | 2007-08-13 17:02:00 +0000 |
|---|---|---|
| committer | Felix Domke <tmbinc@elitedvb.net> | 2007-08-13 17:02:00 +0000 |
| commit | 9ce6ca4f63e908ef0ed64c3cf9d02ed307c2da46 (patch) | |
| tree | 7251658114344f5295ae33d6c41315752902ca5f /lib | |
| parent | ea77a638b58160db057dd260cc2b58a4759dacbb (diff) | |
| download | enigma2-9ce6ca4f63e908ef0ed64c3cf9d02ed307c2da46.tar.gz enigma2-9ce6ca4f63e908ef0ed64c3cf9d02ed307c2da46.zip | |
Alter behavior of the zero button in PiP mode. The exact behavior may be
configured by changing the value of the 'Behaviour of 0 key in PiP-mode'
property in the settings menu. Possible values are:
- standard
the behavior of the zero button is remains as is (switch to last channel)
- swap
the zero button swaps the pip service with the active
- swap and stop
the zero button swaps the pip service with the active and then turns
pip off
- stop
turns pip off
Patch by John Holland <johnbock@i-have-a-dreambox.com>, with some
modifications.
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/python/Components/UsageConfig.py | 4 | ||||
| -rw-r--r-- | lib/python/Screens/InfoBarGenerics.py | 18 |
2 files changed, 21 insertions, 1 deletions
diff --git a/lib/python/Components/UsageConfig.py b/lib/python/Components/UsageConfig.py index 507696f0..d122a4f7 100644 --- a/lib/python/Components/UsageConfig.py +++ b/lib/python/Components/UsageConfig.py @@ -25,6 +25,10 @@ def InitUsageConfig(): ("do not change", _("do not change")), ("off", _("off")), ("on", _("on")) ]) config.usage.self_defined_seek = ConfigInteger(default=10, limits=(1,9999)) + config.usage.pip_zero_button = ConfigSelection(default = "standard", choices = [ + ("standard", _("standard")), ("swap", _("swap PiP and main picture")), + ("swapstop", _("move PiP to main picture")), ("stop", _("stop PiP")) ]) + def setHDDStandby(configElement): os.system("hdparm -S" + configElement.value + " /dev/ide/host0/bus0/target0/lun0/disc") config.usage.hdd_standby.addNotifier(setHDDStandby) diff --git a/lib/python/Screens/InfoBarGenerics.py b/lib/python/Screens/InfoBarGenerics.py index 85b1d80f..fd2e0e95 100644 --- a/lib/python/Screens/InfoBarGenerics.py +++ b/lib/python/Screens/InfoBarGenerics.py @@ -198,7 +198,10 @@ class InfoBarNumberZap: def keyNumberGlobal(self, number): # print "You pressed number " + str(number) if number == 0: - self.servicelist.recallPrevService() + if isinstance(self, InfoBarPiP) and self.pipHandles0Action(): + self.pipDoHandle0Action() + else: + self.servicelist.recallPrevService() else: self.session.openWithCallback(self.numberEntered, NumberZap, number) @@ -1234,6 +1237,9 @@ class InfoBarPiP: def pipShown(self): return self.session.pipshown + def pipHandles0Action(self): + return self.pipShown() and config.usage.pip_zero_button.value != "standard" + def getShowHideName(self): if self.session.pipshown: return _("Disable Picture in Picture") @@ -1278,6 +1284,16 @@ class InfoBarPiP: def movePiP(self): self.session.open(PiPSetup, pip = self.session.pip) + def pipDoHandle0Action(self): + use = config.usage.pip_zero_button.value + if "swap" == use: + self.swapPiP() + elif "swapstop" == use: + self.swapPiP() + self.showPiP() + elif "stop" == use: + self.showPiP() + from RecordTimer import parseEvent class InfoBarInstantRecord: |
