From 2489e8ed6c16da9a61888fa87b225fd082b58606 Mon Sep 17 00:00:00 2001 From: Alhaziel01 Date: Sat, 19 Dec 2020 11:18:24 +0100 Subject: [PATCH] Fix per dispositivi lenti --- platformcode/launcher.py | 5 ++--- platformcode/platformtools.py | 18 +++++++++--------- specials/globalsearch.py | 9 +++++---- 3 files changed, 16 insertions(+), 16 deletions(-) diff --git a/platformcode/launcher.py b/platformcode/launcher.py index 0dc5110f..988666de 100644 --- a/platformcode/launcher.py +++ b/platformcode/launcher.py @@ -464,8 +464,7 @@ def play_from_library(item): # logger.debug("item: \n" + item.tostring('\n')) # Try to reproduce an image (this does nothing and also does not give an error) - xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, xbmcgui.ListItem(path=os.path.join(config.get_runtime_path(), "resources", "kod.mp4"))) - xbmc.Player().stop() + platformtools.prevent_busy(item) # Modify the action (currently the video library needs "findvideos" since this is where the sources are searched item.action = "findvideos" @@ -485,12 +484,12 @@ def play_from_library(item): itemlist = videolibrary.findvideos(item) p_dialog.update(100, ''); sleep(0.5); p_dialog.close() while platformtools.is_playing(): sleep(1) - # from core.support import dbg;dbg() if item.contentType == 'movie': nfo_path = item.nfo else: nfo_path = item.strm_path.replace('strm','nfo') if nfo_path and filetools.isfile(nfo_path): from core import videolibrarytools head_nfo, item_nfo = videolibrarytools.read_nfo(nfo_path) + item_nfo.window = True played_time = platformtools.get_played_time(item_nfo) else: played_time = 0 diff --git a/platformcode/platformtools.py b/platformcode/platformtools.py index 25882fa6..cc82bd8f 100644 --- a/platformcode/platformtools.py +++ b/platformcode/platformtools.py @@ -1012,12 +1012,6 @@ def set_player(item, xlistitem, mediaurl, view, strm): item.options = {'strm':False, 'continue':False} # logger.debug("item:\n" + item.tostring('\n')) - # Prevent Busy - if not item.autoplay: - if item.globalsearch: xbmc.executebuiltin("PlayMedia(" + os.path.join(config.get_runtime_path(), "resources", "kod.mp4") + ")") - else: xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, xbmcgui.ListItem(path=os.path.join(config.get_runtime_path(), "resources", "kod.mp4"))) - xbmc.Player().stop() - # Moved del conector "torrent" here if item.server == "torrent": play_torrent(item, xlistitem, mediaurl) @@ -1039,14 +1033,12 @@ def set_player(item, xlistitem, mediaurl, view, strm): logger.info("mediaurl=" + mediaurl) if player_mode in [0,1]: + prevent_busy(item) logger.info('Player Mode:' + ['Direct', 'Bookmark'][player_mode]) # Add the listitem to a playlist playlist = xbmc.PlayList(xbmc.PLAYLIST_VIDEO) playlist.clear() playlist.add(mediaurl, xlistitem) - - # played_time = resume_playback(get_played_time(item)) - # Reproduce xbmc_player.play(playlist, xlistitem) # viewed(item, played_time) @@ -1441,3 +1433,11 @@ def set_played_time(item): else: c.execute("INSERT INTO viewed (tmdb_id, episode, played_time) VALUES (?, ?, ?)", (ID, E, item.played_time)) conn.commit() conn.close() + +def prevent_busy(item): + logger.debug() + if not item.autoplay and not item.window: + if item.globalsearch: xbmc.Player().play(os.path.join(config.get_runtime_path(), "resources", "kod.mp4")) + else: xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, xbmcgui.ListItem(path=os.path.join(config.get_runtime_path(), "resources", "kod.mp4"))) + xbmc.sleep(500) + xbmc.Player().stop() \ No newline at end of file diff --git a/specials/globalsearch.py b/specials/globalsearch.py index b11dd11a..b2425bd2 100644 --- a/specials/globalsearch.py +++ b/specials/globalsearch.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- -import xbmc, xbmcgui, sys, channelselector, time, gc -from core.support import dbg, typo, tmdb +import xbmc, xbmcgui, sys, channelselector, time, os +from core.support import dbg, tmdb from core.item import Item from core import channeltools, servertools, scrapertools from platformcode import platformtools, config, logger @@ -329,7 +329,6 @@ class SearchWindow(xbmcgui.WindowXMLDialog): def makeItem(self, url): item = Item().fromurl(url) - logger.debug(item) channelParams = channeltools.get_channel_parameters(item.channel) thumb = item.thumbnail if item.thumbnail else 'Infoplus/' + item.contentType.replace('show', '') + '.png' logger.info('THUMB', thumb) @@ -434,7 +433,7 @@ class SearchWindow(xbmcgui.WindowXMLDialog): self.PROGRESS = self.getControl(PROGRESS) self.COUNT = self.getControl(COUNT) self.MAINTITLE = self.getControl(MAINTITLE) - self.MAINTITLE.setText(typo(config.get_localized_string(30993).replace('...', '') % '"%s"' % self.item.text, 'bold')) + self.MAINTITLE.setText(config.get_localized_string(30993).replace('...', '') % '"%s"' % self.item.text) self.SEARCH = self.getControl(SEARCH) self.EPISODES = self.getControl(EPISODES) self.EPISODESLIST = self.getControl(EPISODESLIST) @@ -743,7 +742,9 @@ class SearchWindow(xbmcgui.WindowXMLDialog): def playmonitor(self, server=None): if server: + server.window = True server.globalsearch = True + platformtools.prevent_busy(server) run(server) try: while not xbmc.Player().getTime() > 0: