aboutsummaryrefslogtreecommitdiff
path: root/lib/python
diff options
context:
space:
mode:
authorStefan Pluecken <stefan.pluecken@multimedia-labs.de>2006-10-06 12:51:40 +0000
committerStefan Pluecken <stefan.pluecken@multimedia-labs.de>2006-10-06 12:51:40 +0000
commite716326ec3576fae8909d6637bd224330125d8dd (patch)
treed5aae7f65dfe6b83bf65b445e250639a1b8c435e /lib/python
parent0389c94d872504d445b2c2a6ab87480c59679739 (diff)
downloadenigma2-e716326ec3576fae8909d6637bd224330125d8dd.tar.gz
enigma2-e716326ec3576fae8909d6637bd224330125d8dd.zip
fix media player behaviour when adding a single file:
adds the whole directory to the playlist now and plays the selected file (advantage: the next file is automatically played after the selected file finished playing)
Diffstat (limited to 'lib/python')
-rw-r--r--lib/python/Screens/MediaPlayer.py18
1 files changed, 15 insertions, 3 deletions
diff --git a/lib/python/Screens/MediaPlayer.py b/lib/python/Screens/MediaPlayer.py
index 4c142332..446621df 100644
--- a/lib/python/Screens/MediaPlayer.py
+++ b/lib/python/Screens/MediaPlayer.py
@@ -283,7 +283,10 @@ class MediaPlayer(Screen, InfoBarSeek):
self.filelist.descent()
self.updateCurrentInfo()
else:
- self.copyFile()
+ self.playlist.clear()
+ self.copyDirectory(os.path.dirname(self.filelist.getSelection()[0].getPath()) + "/", recursive = False)
+ self.playServiceRefEntry(self.filelist.getServiceRef())
+
if self.currList == "playlist":
selection = self["playlist"].getSelection()
self.changeEntry(self.playlist.getSelectionIndex())
@@ -364,12 +367,14 @@ class MediaPlayer(Screen, InfoBarSeek):
elif choice[1] == "hide":
self.hide()
- def copyDirectory(self, directory):
+ def copyDirectory(self, directory, recursive = True):
+ print "copyDirectory", directory
filelist = FileList(directory, useServiceRef = True, isTop = True)
for x in filelist.getFileList():
if x[0][1] == True: #isDir
- self.copyDirectory(x[0][0])
+ if recursive:
+ self.copyDirectory(x[0][0])
else:
self.playlist.addFile(x[0][0])
self.playlist.updateList()
@@ -428,6 +433,13 @@ class MediaPlayer(Screen, InfoBarSeek):
self.playlist.setCurrentPlaying(index)
self.playEntry()
+ def playServiceRefEntry(self, serviceref):
+ serviceRefList = self.playlist.getServiceRefList()
+ for count in range(len(serviceRefList)):
+ if serviceRefList[count] == serviceref:
+ self.changeEntry(count)
+ break
+
def playEntry(self):
if len(self.playlist.getServiceRefList()):
currref = self.playlist.getServiceRefList()[self.playlist.getCurrentIndex()]