Limit filesize for Timeshift on eMMC (<2GBytes)
[vuplus_dvbapp] / lib / python / Screens / InfoBarGenerics.py
index c5f72e2..a6d25d5 100755 (executable)
@@ -36,7 +36,7 @@ from enigma import eTimer, eServiceCenter, eDVBServicePMTHandler, iServiceInform
        iPlayableService, eServiceReference, eEPGCache, eActionMap
 
 from time import time, localtime, strftime
-from os import stat as os_stat
+from os import stat as os_stat, system as os_system
 from bisect import insort
 
 from RecordTimer import RecordTimerEntry, RecordTimer
@@ -775,7 +775,7 @@ class InfoBarSeek:
 
                self["SeekActions"] = InfoBarSeekActionMap(self, actionmap,
                        {
-                               "playpauseService": self.playpauseService,
+                               "playpauseService": (self.playpauseService, _("Pause/Continue")),
                                "pauseService": (self.pauseService, _("pause")),
                                "unPauseService": (self.unPauseService, _("continue")),
 
@@ -1204,7 +1204,8 @@ class InfoBarTimeshift:
                self.__event_tracker = ServiceEventTracker(screen=self, eventmap=
                        {
                                iPlayableService.evStart: self.__serviceStarted,
-                               iPlayableService.evSeekableStatusChanged: self.__seekableStatusChanged
+                               iPlayableService.evSeekableStatusChanged: self.__seekableStatusChanged,
+                               iPlayableService.evUser+3: self.__lowDiskspaceMessage
                        })
 
        def getTimeshift(self):
@@ -1308,6 +1309,9 @@ class InfoBarTimeshift:
                self.timeshift_enabled = False
                self.__seekableStatusChanged()
 
+       def __lowDiskspaceMessage(self):
+               Notifications.AddPopup(text = _("Write error. Not enough space for writing.\n"), type = MessageBox.TYPE_ERROR, timeout = 0, id = "DiskFullMessage")
+
 from Screens.PiPSetup import PiPSetup
 
 class InfoBarExtensions:
@@ -1665,7 +1669,7 @@ class InfoBarInstantRecord:
 
                if not fileExists("/hdd", 0):
                        print "not found /hdd"
-                       system("ln -s /media/hdd /hdd")
+                       os_system("ln -s /media/hdd /hdd")
 #
                try:
                        stat = os_stat(dir)
@@ -2254,8 +2258,7 @@ class InfoBarSubtitleSupport(object):
                        self.__selected_subtitle = None
 
        def __updatedInfo(self):
-               if not self.cached_subtitle_checked:
-                       self.cached_subtitle_checked = True
+               if not self.__selected_subtitle:
                        subtitle = self.getCurrentServiceSubtitle()
                        self.setSelectedSubtitle(subtitle and subtitle.getCachedSubtitle())
                        if self.__selected_subtitle:
@@ -2276,7 +2279,7 @@ class InfoBarSubtitleSupport(object):
                else:
                        if subtitle:
                                subtitle.disableSubtitles(self.subtitle_window.instance)
-                       self.__selected_subtitle = False
+                       self.__selected_subtitle = None
                        self.__subtitles_enabled = False
                        self.subtitle_window.hide()