X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/30861128f0afa56c412d9d43a7b3425484854b52..69ad5b69a69b3a9006824832afb3fa8cecb061b9:/lib/python/Screens/InfoBarGenerics.py diff --git a/lib/python/Screens/InfoBarGenerics.py b/lib/python/Screens/InfoBarGenerics.py index c1618184..bfeb394b 100644 --- a/lib/python/Screens/InfoBarGenerics.py +++ b/lib/python/Screens/InfoBarGenerics.py @@ -366,8 +366,16 @@ class InfoBarSimpleEventView: self["EPGActions"] = HelpableActionMap(self, "InfobarEPGActions", { "showEventInfo": (self.openEventView, _("show event details")), + "showInfobarOrEpgWhenInfobarAlreadyVisible": self.showEventInfoWhenNotVisible, }) + def showEventInfoWhenNotVisible(self): + if self.shown: + self.openEventView() + else: + self.toggleShow() + return 1 + def openEventView(self): epglist = [ ] self.epglist = epglist @@ -1631,12 +1639,20 @@ class InfoBarAudioSelection: idx = 0 while idx < n: + cnt = 0 i = audio.getTrackInfo(idx) - language = i.getLanguage() + languages = i.getLanguage().split('/') description = i.getDescription() + language = "" - if LanguageCodes.has_key(language): - language = LanguageCodes[language][0] + for lang in languages: + if cnt: + language += ' / ' + if LanguageCodes.has_key(lang): + language += LanguageCodes[lang][0] + else: + language += lang + cnt += 1 if len(description): description += " (" + language + ")" @@ -2173,19 +2189,19 @@ class InfoBarSubtitleSupport(object): self.__selected_subtitle = None def __serviceStopped(self): - self.subtitle_window.hide() - self.__subtitles_enabled = False self.cached_subtitle_checked = False + if self.__subtitles_enabled: + self.subtitle_window.hide() + self.__subtitles_enabled = False + self.__selected_subtitle = None def __updatedInfo(self): if not self.cached_subtitle_checked: - subtitle = self.getCurrentServiceSubtitle() self.cached_subtitle_checked = True - self.__selected_subtitle = subtitle and subtitle.getCachedSubtitle() + subtitle = self.getCurrentServiceSubtitle() + self.setSelectedSubtitle(subtitle and subtitle.getCachedSubtitle()) if self.__selected_subtitle: - subtitle.enableSubtitles(self.subtitle_window.instance, self.selected_subtitle) - self.subtitle_window.show() - self.__subtitles_enabled = True + self.setSubtitlesEnable(True) def getCurrentServiceSubtitle(self): service = self.session.nav.getCurrentService() @@ -2193,14 +2209,16 @@ class InfoBarSubtitleSupport(object): def setSubtitlesEnable(self, enable=True): subtitle = self.getCurrentServiceSubtitle() - if enable and self.__selected_subtitle is not None: - if subtitle and not self.__subtitles_enabled: - subtitle.enableSubtitles(self.subtitle_window.instance, self.selected_subtitle) - self.subtitle_window.show() - self.__subtitles_enabled = True + if enable: + if self.__selected_subtitle: + if subtitle and not self.__subtitles_enabled: + subtitle.enableSubtitles(self.subtitle_window.instance, self.selected_subtitle) + self.subtitle_window.show() + self.__subtitles_enabled = True else: if subtitle: subtitle.disableSubtitles(self.subtitle_window.instance) + self.__selected_subtitle = False self.__subtitles_enabled = False self.subtitle_window.hide()