Support Uno4k/Ultimo4k
[vuplus_openvuplus_3.0] / meta-bsp / recipes-vuplus / enigma2 / enigma2 / enigma2_vuplus_remove_pvr_action.patch
1 diff --git a/RecordTimer.py b/RecordTimer.py
2 index d3ccd75..838b18a 100755
3 --- a/RecordTimer.py
4 +++ b/RecordTimer.py
5 @@ -4,6 +4,7 @@ from enigma import eEPGCache, getBestPlayableServiceReference, \
6  from Components.config import config
7  from Components.UsageConfig import defaultMoviePath
8  from Components.TimerSanityCheck import TimerSanityCheck
9 +from Components.SystemInfo import SystemInfo
10  
11  from Screens.MessageBox import MessageBox
12  import Screens.Standby
13 @@ -114,7 +115,10 @@ class RecordTimerEntry(timer.TimerEntry, object):
14                 self.timer = None
15                 self.__record_service = None
16                 self.start_prepare = 0
17 -               self.justplay = justplay
18 +               if SystemInfo["PVRSupport"]:
19 +                       self.justplay = justplay
20 +               else:
21 +                       self.justplay = True
22                 self.afterEvent = afterEvent
23                 self.dirname = dirname
24                 self.dirnameHadToFallback = False
25 @@ -404,7 +408,10 @@ def createTimer(xml):
26         description = xml.get("description").encode("utf-8")
27         repeated = xml.get("repeated").encode("utf-8")
28         disabled = long(xml.get("disabled") or "0")
29 -       justplay = long(xml.get("justplay") or "0")
30 +       if SystemInfo["PVRSupport"]:
31 +               justplay = long(xml.get("justplay") or "0")
32 +       else:
33 +               justplay = long("1")
34         afterevent = str(xml.get("afterevent") or "nothing")
35         afterevent = {
36                 "nothing": AFTEREVENT.NONE,
37 @@ -590,7 +597,10 @@ class RecordTimer(timer.Timer):
38                         if timer.tags is not None:
39                                 list.append(' tags="' + str(stringToXML(' '.join(timer.tags))) + '"')
40                         list.append(' disabled="' + str(int(timer.disabled)) + '"')
41 -                       list.append(' justplay="' + str(int(timer.justplay)) + '"')
42 +                       if SystemInfo["PVRSupport"]:
43 +                               list.append(' justplay="' + str(int(timer.justplay)) + '"')
44 +                       else:
45 +                               list.append(' justplay="1"')
46                         list.append('>\n')
47                         
48                         if config.recording.debug.value:
49 diff --git a/data/menu.xml b/data/menu.xml
50 index 5c8cbb2..ed0b415 100755
51 --- a/data/menu.xml
52 +++ b/data/menu.xml
53 @@ -71,7 +71,7 @@
54                                         <item level="1" text="Device Setup..." entryID="device_setup"><screen module="NetworkSetup" screen="NetworkAdapterSelection"/></item>
55                                         <item level="1" text="Nameserver Setup..." entryID="dns_setup"><screen module="NetworkSetup" screen="NameserverSetup"/></item>
56                                 </menu>-->
57 -                               <item level="2" text="Recording paths" entryId="RecordPaths"><screen module="RecordPaths" screen="RecordPathsSettings" /></item>
58 +                               <item level="2" text="Recording paths" entryId="RecordPaths" requires="PVRSupport"><screen module="RecordPaths" screen="RecordPathsSettings" /></item>
59                         </menu>
60                         <item weight="10" level="1" text="Common Interface" entryID="ci_setup" requires="CommonInterface"><screen module="Ci" screen="CiSelection" /></item>
61                         <item weight="15" level="0" text="Parental control" entryID="parental_setup"><screen module="ParentalControlSetup" screen="ParentalControlSetup" /></item>
62 diff --git a/data/setup.xml b/data/setup.xml
63 index 5ce6b62..9892f34 100755
64 --- a/data/setup.xml
65 +++ b/data/setup.xml
66 @@ -22,11 +22,11 @@
67                 </setup>
68                 <setup key="usage" title="Customize">
69                         <item level="0" text="Setup Mode">config.usage.setup_level</item>
70 -                       <item level="1" text="Recordings always have priority">config.recording.asktozap</item>
71 -                       <item level="0" text="Margin before record (minutes)">config.recording.margin_before</item>
72 -                       <item level="0" text="Margin after record">config.recording.margin_after</item>
73 -                       <item level="0" text="Show blinking clock in display during recording">config.usage.blinking_display_clock_during_recording</item>
74 -                       <item level="2" text="Show Message when Recording starts">config.usage.show_message_when_recording_starts</item>
75 +                       <item level="1" text="Recordings always have priority" requires="PVRSupport">config.recording.asktozap</item>
76 +                       <item level="0" text="Margin before record (minutes)" requires="PVRSupport">config.recording.margin_before</item>
77 +                       <item level="0" text="Margin after record" requires="PVRSupport">config.recording.margin_after</item>
78 +                       <item level="0" text="Show blinking clock in display during recording" requires="PVRSupport">config.usage.blinking_display_clock_during_recording</item>
79 +                       <item level="2" text="Show Message when Recording starts" requires="PVRSupport">config.usage.show_message_when_recording_starts</item>
80                         <item level="2" text="Load Length of Movies in Movielist">config.usage.load_length_of_movies_in_moviellist</item>
81                         <item level="1" text="Show positioner movement">config.usage.showdish</item>
82                         <item level="1" text="Enable multiple bouquets">config.usage.multibouquet</item>
83 diff --git a/lib/python/Components/SystemInfo.py b/lib/python/Components/SystemInfo.py
84 old mode 100644
85 new mode 100755
86 index 67f2e75..9ecd94d
87 --- a/lib/python/Components/SystemInfo.py
88 +++ b/lib/python/Components/SystemInfo.py
89 @@ -1,6 +1,6 @@
90  from enigma import eDVBResourceManager
91  from Tools.Directories import fileExists
92 -from Tools.HardwareInfo import HardwareInfo
93 +from Tools.HardwareInfo import HardwareInfo, HardwareInfo
94  
95  SystemInfo = { }
96  
97 @@ -31,4 +31,5 @@ SystemInfo["FrontpanelDisplayGrayscale"] = fileExists("/dev/dbox/oled0")
98  SystemInfo["DeepstandbySupport"] = HardwareInfo().get_device_name() != "dm800"
99  SystemInfo["HdmiInSupport"] = HardwareInfo().get_vu_device_name() == "ultimo4k"
100  SystemInfo["WOWLSupport"] = HardwareInfo().get_vu_device_name() == "ultimo4k"
101 +SystemInfo["PVRSupport"] = HardwareInfo().get_vu_device_name() not in ["solose", "zero", "uno4k"]
102  
103 diff --git a/lib/python/Screens/InfoBarGenerics.py b/lib/python/Screens/InfoBarGenerics.py
104 index b5bd06d..bc2b8a9 100755
105 --- a/lib/python/Screens/InfoBarGenerics.py
106 +++ b/lib/python/Screens/InfoBarGenerics.py
107 @@ -235,7 +235,7 @@ class InfoBarNumberZap:
108                         else:
109                                 self.servicelist.recallPrevService()
110                 else:
111 -                       if self.has_key("TimeshiftActions") and not self.timeshift_enabled:
112 +                       if not (self.has_key("TimeshiftActions") and self.timeshift_enabled):
113                                 self.session.openWithCallback(self.numberEntered, NumberZap, number)
114  
115         def numberEntered(self, retval):
116 @@ -1185,11 +1185,12 @@ class InfoBarShowMovies:
117  
118  class InfoBarTimeshift:
119         def __init__(self):
120 -               self["TimeshiftActions"] = HelpableActionMap(self, "InfobarTimeshiftActions",
121 -                       {
122 -                               "timeshiftStart": (self.startTimeshift, _("start timeshift")),  # the "yellow key"
123 -                               "timeshiftStop": (self.stopTimeshift, _("stop timeshift"))      # currently undefined :), probably 'TV'
124 -                       }, prio=1)
125 +               if SystemInfo["PVRSupport"]:
126 +                       self["TimeshiftActions"] = HelpableActionMap(self, "InfobarTimeshiftActions",
127 +                               {
128 +                                       "timeshiftStart": (self.startTimeshift, _("start timeshift")),  # the "yellow key"
129 +                                       "timeshiftStop": (self.stopTimeshift, _("stop timeshift"))      # currently undefined :), probably 'TV'
130 +                               }, prio=1)
131                 self["TimeshiftActivateActions"] = ActionMap(["InfobarTimeshiftActivateActions"],
132                         {
133                                 "timeshiftActivateEnd": self.activateTimeshiftEnd, # something like "rewind key"
134 @@ -1509,10 +1510,11 @@ class InfoBarInstantRecord:
135         """Instant Record - handles the instantRecord action in order to
136         start/stop instant records"""
137         def __init__(self):
138 -               self["InstantRecordActions"] = HelpableActionMap(self, "InfobarInstantRecord",
139 -                       {
140 -                               "instantRecord": (self.instantRecord, _("Instant Record...")),
141 -                       })
142 +               if SystemInfo["PVRSupport"]:
143 +                       self["InstantRecordActions"] = HelpableActionMap(self, "InfobarInstantRecord",
144 +                               {
145 +                                       "instantRecord": (self.instantRecord, _("Instant Record...")),
146 +                               })
147                 self.recording = []
148  
149         def stopCurrentRecording(self, entry = -1):
150 diff --git a/lib/python/Screens/TimerEntry.py b/lib/python/Screens/TimerEntry.py
151 index 9885e70..1d40547 100644
152 --- a/lib/python/Screens/TimerEntry.py
153 +++ b/lib/python/Screens/TimerEntry.py
154 @@ -94,7 +94,12 @@ class TimerEntry(Screen, ConfigListScreen):
155                                 weekday = (int(strftime("%w", localtime(self.timer.begin))) - 1) % 7
156                                 day[weekday] = 1
157  
158 -                       self.timerentry_justplay = ConfigSelection(choices = [("zap", _("zap")), ("record", _("record"))], default = {0: "record", 1: "zap"}[justplay])
159 +                       timer_choices = [("zap", _("zap"))]
160 +                       default = "zap"
161 +                       if SystemInfo["PVRSupport"]:
162 +                               timer_choices.append(("record", _("record")))
163 +                               default = {0: "record", 1: "zap"}[justplay]
164 +                       self.timerentry_justplay = ConfigSelection(choices = timer_choices, default = default)
165                         if SystemInfo["DeepstandbySupport"]:
166                                 shutdownString = _("go to deep standby")
167                         else: