Ultimo Test Gestione Viste
This commit is contained in:
@@ -31,7 +31,6 @@ def start():
|
||||
|
||||
def run(item=None):
|
||||
logger.debug()
|
||||
platformtools.save_view_mode()
|
||||
# Extract item from sys.argv
|
||||
if not item: item = makeItem()
|
||||
|
||||
|
||||
@@ -328,6 +328,7 @@ def render_items(itemlist, parent_item):
|
||||
itemlist.append(Item(title=config.get_localized_string(60347), thumbnail=get_thumb('nofolder.png')))
|
||||
|
||||
dirItems = []
|
||||
|
||||
for n, item in enumerate(itemlist):
|
||||
# item.itemlistPosition = n + 1
|
||||
item_url = item.tourl()
|
||||
@@ -363,8 +364,8 @@ def render_items(itemlist, parent_item):
|
||||
|
||||
dirItems.append(('%s?%s' % (sys.argv[0], item_url), listitem, item.folder))
|
||||
|
||||
set_view_mode(itemlist[0], parent_item)
|
||||
xbmcplugin.addDirectoryItems(_handle, dirItems)
|
||||
set_view_mode(itemlist[0], parent_item)
|
||||
|
||||
if parent_item.list_type == '':
|
||||
breadcrumb = parent_item.category #.capitalize()
|
||||
@@ -380,38 +381,36 @@ def render_items(itemlist, parent_item):
|
||||
xbmcplugin.setPluginCategory(handle=_handle, category=breadcrumb)
|
||||
|
||||
|
||||
|
||||
# cacheToDisc = False
|
||||
# if (parent_item.action == 'findvideos' and config.get_setting('autoplay')) or parent_item.action == 'search':
|
||||
# cacheToDisc = True
|
||||
|
||||
xbmcplugin.endOfDirectory(_handle, succeeded=True, updateListing=False, cacheToDisc=True)
|
||||
|
||||
logger.debug('END render_items')
|
||||
|
||||
|
||||
# def viewmodeMonitor():
|
||||
# logger.debug('WINDOW:',get_window(), xbmcgui.getCurrentWindowId())
|
||||
# if get_window() == 'WINDOW_VIDEO_NAV':
|
||||
# try:
|
||||
# currentMode = int(xbmcgui.Window(10025).getFocusId())
|
||||
# if 50 <= currentMode < 600:
|
||||
# currentModeName = xbmc.getInfoLabel('Container.Viewmode')
|
||||
# parent_info = xbmc.getInfoLabel('Container.FolderPath')
|
||||
# item_info = xbmc.getInfoLabel('Container.ListItemPosition(1).FileNameAndPath')
|
||||
# if currentModeName and 'plugin.video.kod' in parent_info:
|
||||
# content, Type = getCurrentView(Item().fromurl(item_info) if item_info else Item(), Item().fromurl(parent_info))
|
||||
# defaultMode = int(config.get_setting('view_mode_%s' % content).split(',')[-1])
|
||||
# if content and currentMode != defaultMode and int(xbmcgui.Window(10025).getFocusId()) == currentMode:
|
||||
# config.set_setting('view_mode_%s' % content, currentModeName + ', ' + str(currentMode))
|
||||
# if config.get_setting('viewchange_notify'):
|
||||
# dialog_notification(config.get_localized_string(70153),
|
||||
# config.get_localized_string(70187) % (content, currentModeName),
|
||||
# sound=False)
|
||||
def viewmodeMonitor():
|
||||
logger.debug('WINDOW:',get_window(), xbmcgui.getCurrentWindowId())
|
||||
if get_window() == 'WINDOW_VIDEO_NAV':
|
||||
try:
|
||||
parent_info = xbmc.getInfoLabel('Container.FolderPath')
|
||||
parent = Item().fromurl(parent_info)
|
||||
if 'plugin.video.kod' in parent_info:
|
||||
item = Item().fromurl(xbmc.getInfoLabel('Container.ListItemPosition(2).FileNameAndPath'))
|
||||
currentModeName = xbmc.getInfoLabel('Container.Viewmode')
|
||||
currentMode = int(xbmcgui.Window(10025).getFocusId())
|
||||
logger.debug('SAVE VIEW 1', currentMode, parent.action, item.action)
|
||||
if 50 <= currentMode < 600 and parent.action != item.action:
|
||||
content, Type = getCurrentView(item, parent)
|
||||
defaultMode = int(config.get_setting('view_mode_%s' % content).split(',')[-1])
|
||||
if content and currentMode != defaultMode:
|
||||
config.set_setting('view_mode_%s' % content, currentModeName + ', ' + str(currentMode))
|
||||
logger.debug('SAVE VIEW 2', defaultMode, '->', currentMode)
|
||||
if config.get_setting('viewchange_notify'):
|
||||
dialog_notification(config.get_localized_string(70153),
|
||||
config.get_localized_string(70187) % (content, currentModeName),
|
||||
sound=False)
|
||||
|
||||
# except:
|
||||
# import traceback
|
||||
# logger.error(traceback.print_exc())
|
||||
except:
|
||||
import traceback
|
||||
logger.error(traceback.print_exc())
|
||||
|
||||
|
||||
def getCurrentView(item=None, parent_item=None):
|
||||
@@ -464,24 +463,6 @@ def getCurrentView(item=None, parent_item=None):
|
||||
return None, None
|
||||
|
||||
|
||||
def save_view_mode():
|
||||
if get_window() == 'WINDOW_VIDEO_NAV':
|
||||
currentModeName = xbmc.getInfoLabel('Container.Viewmode')
|
||||
currentMode = int(xbmcgui.Window(10025).getFocusId())
|
||||
parent_info = xbmc.getInfoLabel('Container.FolderPath')
|
||||
item_info = xbmc.getInfoLabel('ListItem.FileNameAndPath')
|
||||
content, Type = getCurrentView(Item().fromurl(item_info) if item_info else Item(), Item().fromurl(parent_info))
|
||||
|
||||
if content:
|
||||
defaultMode = int(config.get_setting('view_mode_%s' % content).split(',')[-1])
|
||||
if currentMode != defaultMode:
|
||||
config.set_setting('view_mode_%s' % content, currentModeName + ', ' + str(currentMode))
|
||||
if config.get_setting('viewchange_notify'):
|
||||
dialog_notification(config.get_localized_string(70153),
|
||||
config.get_localized_string(70187) % (content, currentModeName),
|
||||
sound=False)
|
||||
|
||||
|
||||
def set_view_mode(item, parent_item):
|
||||
def reset_view_mode():
|
||||
for mode in ['home','menu','channels','channel','movie','tvshow','season','episode','server']:
|
||||
@@ -490,18 +471,19 @@ def set_view_mode(item, parent_item):
|
||||
|
||||
if xbmc.getSkinDir() != config.get_setting('skin_name') or not config.get_setting('skin_name'):
|
||||
reset_view_mode()
|
||||
xbmcplugin.setContent(handle=int(sys.argv[1]), content='')
|
||||
xbmc.executebuiltin('Container.SetViewMode(%s)' % 55)
|
||||
# from core.support import dbg;dbg()
|
||||
xbmcplugin.setContent(handle=int(sys.argv[1]), content='')
|
||||
|
||||
content, Type = getCurrentView(item, parent_item)
|
||||
|
||||
if content:
|
||||
mode = int(config.get_setting('view_mode_%s' % content).split(',')[-1])
|
||||
if mode == 0:
|
||||
logger.debug('default mode')
|
||||
mode = 55
|
||||
xbmcplugin.setContent(handle=int(sys.argv[1]), content=Type)
|
||||
xbmc.executebuiltin('Container.SetViewMode(%s)' % mode)
|
||||
logger.debug('TYPE: ' + Type + ' - ' + 'CONTENT: ' + content)
|
||||
xbmcplugin.setContent(handle=int(sys.argv[1]), content=Type)
|
||||
# logger.debug('TYPE: ' + Type + ' - ' + 'CONTENT: ' + content)
|
||||
|
||||
|
||||
def set_infolabels(listitem, item, player=False):
|
||||
@@ -1424,15 +1406,6 @@ def set_player(item, xlistitem, mediaurl, view, strm):
|
||||
from platformcode import xbmc_videolibrary
|
||||
xbmc_videolibrary.mark_auto_as_watched(item)
|
||||
|
||||
# for cases where the audio playback window appears in place of the video one
|
||||
# if item.focusOnVideoPlayer:
|
||||
# while is_playing() and xbmcgui.getCurrentWindowId() != 12006:
|
||||
# continue
|
||||
# xbmc.sleep(500)
|
||||
# xbmcgui.Window(12005).show()
|
||||
|
||||
|
||||
|
||||
|
||||
def add_next_to_playlist(item):
|
||||
import threading
|
||||
|
||||
@@ -441,7 +441,7 @@ class AddonMonitor(xbmc.Monitor):
|
||||
logger.debug('scheduled videolibrary at ' + str(self.update_hour).zfill(2) + ':00')
|
||||
|
||||
def scheduleScreenOnJobs(self):
|
||||
# schedule.every().second.do(platformtools.viewmodeMonitor).tag('screenOn')
|
||||
schedule.every().second.do(platformtools.viewmodeMonitor).tag('screenOn')
|
||||
schedule.every().second.do(torrent.elementum_monitor).tag('screenOn')
|
||||
|
||||
def onDPMSActivated(self):
|
||||
|
||||
Reference in New Issue
Block a user