from Components.config import config
from Tools.Directories import pathExists, fileExists
from Components.Harddisk import harddiskmanager
-from Plugins.SystemPlugins.Hotplug.plugin import hotplugNotifier
import servicedvd # load c++ part of dvd player plugin
})
self.onClose.append(self.__onClose)
+
+ from Plugins.SystemPlugins.Hotplug.plugin import hotplugNotifier
hotplugNotifier.append(self.hotplugCB)
+ self.autoplay = dvd_device or dvd_filelist
+
if dvd_device:
self.physicalDVD = True
else:
choices = [(_("Exit"), "exit"), (_("Continue playing"), "play")]
if True or not self.physicalDVD:
choices.insert(1,(_("Return to file browser"), "browser"))
- if self.physicalDVD and not self.session.nav.getCurrentlyPlayingServiceReference().toString().endswith(harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD())):
- choices.insert(0,(_("Play DVD"), "playPhysical" ))
+ if self.physicalDVD:
+ cur = self.session.nav.getCurrentlyPlayingServiceReference()
+ if cur and not cur.toString().endswith(harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD())):
+ choices.insert(0,(_("Play DVD"), "playPhysical" ))
self.session.openWithCallback(self.exitCB, ChoiceBox, title=_("Leave DVD Player?"), list = choices)
def sendKey(self, key):
self.askLeavePlayer()
def opened(self):
- if len(self.dvd_filelist) == 1:
+ if self.autoplay and self.dvd_filelist:
# opened via autoplay
self.FileBrowserClosed(self.dvd_filelist[0])
+ elif self.autoplay and self.physicalDVD:
+ self.playPhysicalCB(True)
elif self.physicalDVD:
# opened from menu with dvd in drive
self.session.openWithCallback(self.playPhysicalCB, MessageBox, text=_("Do you want to play DVD in drive?"), timeout=5 )
def __onClose(self):
self.restore_infobar_seek_config()
self.session.nav.playService(self.oldService)
+ from Plugins.SystemPlugins.Hotplug.plugin import hotplugNotifier
hotplugNotifier.remove(self.hotplugCB)
def playLastCB(self, answer): # overwrite infobar cuesheet function