Giter Club home page Giter Club logo

script.skinshortcuts's Introduction

Skin Shortcuts - 1.0.13

script.skinshortcuts was written with the intention of making user customizable shortcuts on the home page easier for skinners.

What's New for Skinners

Version 1.0.16 - git version

  • Basic Kodi v18 compatibility
  • Ability to specify action any control in management dialog from overrides - Read More
  • Some improvements to the interactions with Skin Helper Service, including support for resource addons (see SH wiki)

Version 1.0.13 - repo version

  • Skinners can now set that their skin should not use the users shared additional submenus - Read More
  • Submenu template improvements - Read More
  • Please be aware that:-
    • Warnings on deleting a shortcut are now shown when disabling a shortcut
    • The processing of overrides has been adjusted so that visibilityoverrides will themselves be overriden by any additional overrides which match

With Thanks - Because their names don't deserve to be at the bottom :)

  • Huge thanks to Ronie, whose code for listing plugins is used in this script
  • Equally huge thanks to Ronie and 'Black, for their favourites code used in this script
  • More huge thanks to BigNoid, for the ability to edit shortcuts, and Jeroen, for so many suggestions each of which just made the script better.
  • The thanks remain absolutely huge to the translaters on Transifex for localising the script
  • There almost isn't enough thanks for schimi2k for the icon and fanart
  • Everyone who has contributed even one idea or line of code
  • And the biggest thanks of all to Annie and my family, for feature suggestions, testing and shouting at me when I broke things

Where To Get Help - Users

End User FAQ

If you have issues with using the script, your first port of call should be the End User FAQ. If your query isn't listed there, then the next place to ask for help is the Kodi forum for the skin that you are using. There are a lot of very knowledgeable skinners and users who will be able to answer most questions.

When a question comes up that no-one in the thread can answer, the skinner may direct you to the Skin Shortcuts thread in the skin development for further help.

If you experience an error with the script, you are welcome to ask for help directly in the Skin Shortcuts thread in the skin development forum. However, we require a debug log.

Please note that this thread is primarily aimed at skin developers - if you haven't already asked in the revelant skins forum, included a debug log or are asking a question related to banned add-ons, you are not likely to recieve a warm welcome.

Where To Get Help - Skinners

Though hopefully Skin Shortcuts will save you a lot of code in the long-run, it is a relatively complex script and so may take some time to get your head around.

To help, it includes a lot of documentation covering the various features of the script

It's highly recommended to take time to read through these documents before you begin.

If you require any assistance post on the Kodi forum and I'll do my best to assist:

http://forum.kodi.tv/showthread.php?tid=178294

Documentation for different versions

The documentation with Skin Shortcuts is generally updated as features are added or changed. Therefore, the docs on Git refer to the latest build, and will include details of features that are not yet on the repo.

If you are targetting the repo version of the script you can use the tags to browse the documentation for that particular release.

script.skinshortcuts's People

Contributors

abeksis avatar bambi73 avatar bignoid avatar bobcratchett avatar canuma avatar earch0 avatar eng2heb avatar guilouz avatar hitcher avatar iz8mbw avatar jayz2k avatar jeroenpardon avatar marcelveldt avatar mergeandvary avatar mgonzales71 avatar mvalec avatar phate89 avatar phil65 avatar robweber avatar roee88 avatar sualfred avatar tomer953 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

script.skinshortcuts's Issues

FR: Make program plugins browsable as widgets

As (indirectly) requested to tomer953 on the Kodi forums, add the ability for program add-ons which present as plugins (but don't present as video/audio/picture addons) browsable and selectable as widgets.

Required changes:-

  • New <content /> grouping - addon-program-plugins(?), and the relevant plugins loaded into it in the addons function in library.py
  • Generate widget properties for program plugins, within the explorer function of library.py

Warn on altering shortcut function

@Ignoble61 I am playing around with the warning function and noticed a couple of things.

The first is that disable does not trigger the warning dialog and I think it should do so since that will prevent access to the shortcut also.

The last thing is completely trivial but felt worthy of a mention and that is if you cancel the requested change (pressing No in DialogConfirm) it triggers a menu rebuild even though nothing was changed. Not sure if that is necessary due to how the script recognizes changes in the management dialog.

Thank you and I hope all is well Sir Super Grandpa Bob 😃

Unable to build menu item on OpenELEC

Hi guys,

I know that a similar issue was already reported about this same issue on OpenELEC. But because the other one was close i decided to re-open a new one.

The problem that I'm facing is that on OpenELEC i can not use a skin that is dependent on this module. I did some investigations and it seems that the code i trying to import a python module that is not available on OpenELEC. The faulty or missing module on OpenELEC is "unidecode". It seems that this module is not present on the python version running on OE. I'm using the latest stable OpenELEC running on the Raspberry Pi 2.

OpenELEC version is: 5.0.8
Python version is: Python 2.7.3 (default, Mar 31 2015, 15:16:49) [GCC 4.9.2] on linux2

The exception thrown in the Kodi logs is the following:
Error Type: <type 'exceptions.ImportError'>
Error Contents: No module named unidecode
Traceback (most recent call last):
File "/storage/.kodi/addons/script.skinshortcuts/default.py", line 35, in
import xmlfunctions, datafunctions, library, nodefunctions
File "/storage/.kodi/addons/script.skinshortcuts/resources/lib/xmlfunctions.py", line 25, in
import datafunctions, template
File "/storage/.kodi/addons/script.skinshortcuts/resources/lib/datafunctions.py", line 10, in
from unidecode import unidecode
ImportError: No module named unidecode
-->End of Python script error report<--

Regards

Skin Shortcuts 1.0.0

I had a list of tasks that needed to be done within Skin Shortcuts before I was happy to declare it a 1.0.0 release and, with Isengard around the corner, I thought it would be interesting to post it here - with a few notes - to see if the script could be got up to a 1.0.0 release to coincide with Kodi J*, whenever that lands. And - more importantly - to see what others think would be necessary for a 1.0.0 release, and where they disagree with my views :)

  1. Most important, this script should work for all users without crashes. That doesn't mean there won't be errors (preferable, but lets be realistic!), but the script itself should work in normal circumstances (exceptional circumstances being a broken Kodi installation, user/skinner error, etc)
    • When I last engaged fully with the community there was still the occasional issue saving the menu. I would expect PR #21 to go someway towards tracking these down, if they still happen.
  2. Remove legacy code / Other code cleanup. The script in its current form is nothing like the script I originally envisioned (to be brief, it wasn't originally intended to provide the whole main menu, just - well - a list of shortcuts). The fact that this didn't appear to be what the community wanted means the code developed as necessary - and as my skills (even more limited then than they are today) allowed - to support this and features I deemed necessary to do this + requested features were added ad hoc, rather than in a planned way. It would be very nice to remove a lot of the legacy code, which would clean up the code and improve performance - but would likely break some skins if the cleanup isn't done more carefully than I could probably manage!
    • Removing .shortcuts compatibility would break Nox5 + variants, and possibly others, but would be great.
    • Menu building code has become ridiculously overloaded and needs a revamp. This would almost certainly speed up menu building and simplify code, but has the potential to break skins if not done very carefully!
    • Ideally, store main menu/submenu/additional menus in a single file. This would go someway to getting rid of the horror that is the labelID system, but stands a very good chance of breaking - and breaking badly - if not done perfectly, and is a lot of work as it affects most every area of the script. And, of course, for a 1.0.0 release, it'd be great to drop support for the then-deprecated .DATA.xml files, too...
    • Best way may be to break backwards compatibility (supporting J* would mean 4 versions of Kodi supported in one script version - which already causes some issues regarding which shortcuts are available on which version)...
  3. Feature freeze. It actually doesn't look like a huge number of features have been added since BigNoid took over day-to-day maintenance of the script (though there are some good ones that have, and huge kudos BigNoid, Phil65, marcelveldt, bambi73, et al - it's great to see the script didn't just die). But for a 1.0 release, a feature freeze - possibly mirroring Kodi J*'s - would be very useful for ensuring a stable release.
    • No potential issues?
  4. Missing features. I'm sorted myself here with the templates - a feature I'd long planned and is good to finally have in core - but the most amazing thing about this script to me has always been the incredibly inventive ways skinners have utilised it. It would be nice to ensure that any 1.0.0 release includes support - minimal if necessary - for any currently identified missing features.
    • Identify missing features.

Would love to hear any comments on this, and would love even more for the script to reach a genuine 1.0.0 status :)

skinshortcuts making kodi not to load skins properly

This is what I got from the kodi.log. The script cannot store the xml file so the skin is not properly loaded next time a kodi session is started

Traceback (most recent call last):
00:54:53 165.851669 T:2638214176 ERROR: File "/home/osmc/.kodi/addons/script.skinshortcuts/resources/lib/xmlfunctions.py", line 196, in shouldwerun
00:54:53 165.873596 T:2638214176 ERROR: hashes = ast.literal_eval( xbmcvfs.File( os.path.join( masterpath , xbmc.getSkinDir() + ".hash" ) ).read() )
00:54:53 165.874313 T:2638214176 ERROR: File "/usr/lib/python2.7/ast.py", line 49, in literal_eval
00:54:53 165.885696 T:2638214176 ERROR: node_or_string = parse(node_or_string, mode='eval')
00:54:53 165.886215 T:2638214176 ERROR: File "/usr/lib/python2.7/ast.py", line 37, in parse
00:54:53 165.886871 T:2638214176 ERROR: return compile(source, filename, mode, PyCF_ONLY_AST)
00:54:53 165.887756 T:2638214176 ERROR: File "", line 0

Feature request: Groupoverride for submenu

I need to be able to clear a window property when click on a submenu item. I tried using the groupoverride to add a supplemental action as described in the docs. I couldn't get this to work though, even when omitting the group name. It would be great if I could specify submenu as the group for the override.

Thanks for considering and let me know if you need any more information!

FR: customize property dialog

A feature request to be considered, submitted by tomer953 on the Kodi forums:
http://forum.kodi.tv/showthread.php?tid=178294&pid=2087427#pid2087427

Some requests about the Custom property method.

  1. Custom Title for the choosing dialog

  2. Default value for the property, so Every new item will have the default value

  3. option to remove the "none" option

    for example, I have:

    <property property="Icon_Overlay">31140</property> <!-- Same as Text color -->
     <property property="Icon_Overlay">31142</property> <!-- Same as Skin color -->
     <property property="Icon_Overlay">31141</property> <!-- Original Icon Color (no overlay) -->

http://i.imgur.com/jTz7Yw5.png

and I want to add custom title to the dialog, and set default value to 31142,so maybe adding new feature like:

<property id="Icon_Overlay" title="Custom Title" default="31142"/>

or something similar.
Also in that case, sometimes when I send click to "404" for one custom property (lets say choose color) the choose property dialog for other button (choose icon color) is opening right after the first one .
so I'm getting dialog after dialog when I just requested one of them. but If Ill have custom title I'll wont care, because the user will know what he is setting.

Revert Kodi logging enabled by ToggleDebug

Putting this here so I don't forget about it :)

New version of Skin Shortcuts switched from using json to enable debug logging (on either a menu build or a menu save error) to using the new-with-Isengard ToggleDebug inbuilt function.

A few reports now, though, have said that with the latest builds Kodi's debug logging isn't being automatically disabled after the script has enabled it. Whilst I can only take a guess as to why, I presume that Kodi can't handle multiple requests to this function in quick succession on some systems. As such, it will be preferable to return to using json to enable/disable this function in the next version of the script.

(Though obviously also to check, that the code is correctly calling the function a second time to disable debug logging - however, this seems unlikely as (a) it's working for a large number of people and (b) the underlying code hasn't changed, and I'm not aware of any reports of this issue with previous versions and (c) it's code that I'm generally very happy with ;)).

Video playlists widgets "target" tag is empty

The <content target="" /> is empty when a video playlist (.xsp) is selected as widget. This causes dead click/select item when the playlist has not playable items (eg TV Shows).
For Music playlists is set fine.

EDIT:
Also i notice that for the video playlists the <property name="widget"> is set little different:
<property name="widget">::PLAYLIST::</property>

Fro the music playlists is like this:
<property name="widget">Playlist</property>

Thanks
Nessus

Request - 2nd level submenus

As requested by Guilouz on the forum, the ability for a submenu to have a submenu.

Would need labelID system expanding to ensure that submenu items labelID's are all unique to main menu labelID's (otherwise the files that 2nd level submenus are written to could be the same files as the 1st level submenus) and extension of build code to accept the control ID of the submenu, and to build the 2nd level submenu.

new update

your new update messed up my kod
i submenu using nebula skin

please fix or get me away to delete it .. i have to have my updates set to notify because i can not delete the repository this is a biggggggggggg issue

please send out another version with the v12 is not good for jarvis 16.1

Unable to build menu

I need your support. My OpenElec @ rPi2 keeps showing up this issue:
http://xbmclogs.com/pgo5xlowi

When browsing in main menu a popup pops up and tells "Failed to write menu".

I don't have a clear view what might cause this behavior, could you help?

Smart Playlists widgets issues

I am using the <widgetPlaylists type="playlist">True</widgetPlaylists> in overrides.xml to use the smart playlists as widgets and i have some problems/questions.

First of all using this $INFO[Container(20).ListItem.Property(widgetPlaylist)] as a content tag it breaks the "Hidden" animation. The "Visible" works fine. If i replace it with a real string path (special://profile/playlists/video/MY-SMARTPLAYLIST.xsp) it works fine as the rest of the widgets.

This is the code that i am using for the list... http://xbmclogs.com/p5fjv83ls
and this is the visible/hidden animation... http://xbmclogs.com/phwog9fd2

The second issue that i have is the way that script handles the playlists. There is no distinguish between video and music playlist that's why in the above list code, i am using a substring visible condition (playlists/video) to check if the list is video playlist. Using "video" or "music" as "type=" in widgetPlaylists tag is not working. IMHO skinners should have the option to choose what type of playlist they will use so the lists will have different layout in look and info.

Thanks
Nessus

Bug: Icons with unicode characters may be reset to DefaultShortcut.png

When checking for icon overrides, one of the checks is to ask Kodi if the skin has the image in question. When there is unicode in the name, this check may return False even if the image does exist.

As the problem is not readily reproducible in a consistent manner, and my time is limited at present, I'll fix this when I can get into the problem properly.

Ready for release to stable?

There have been a few (comparatively minor) changes to the script which WIP skins are now reliant on - most notably to custom properties - and the forum thread has been remarkably quiet for a few days, so I wanted to open discussion on whether the script is ready for an update on repo.

AFAIK only one actual error has been reported (unicode issue, now fixed on git) with the current version, all other errors reported have ultimately proved to be user error. So script appears to be remarkably stable.

There are a number of WIP skins that are reliant on new functions of the script - most notably to custom properties. Changes made have been tested - and are comparatively minor - that I consider them at this point safe for repo.

Two changes are still needed before repo push - an update to stable (increase version to - I presume - 0.6.4; adjust readme/changelog to mark stable) and a change I proposed which tomer953 has said he will PR in the next day (it's again a very minor change, and I will be very surprised if it breaks anything).

One other change to consider as briefly discussed previously - though, as I've started to use the skin helper service, I'm increasingly very happy with how they are currently done - change the default widgets to use <shortcut /> elements rather than relying on a 3rd party script.

Other than that, my impression is the script is stable enough and contains enough important updates to consider a repo update.

@marcelveldt - if it's agreed that a repo push is due, are you happy to lead it again?

Edit - It's also an opportunity to get a repo release in before Jarvis changes become necessary. From what I've read, a new shortcut for event log will be necessary, and with the music library + files views becoming combined, various changes will be needed here both to available shortcuts and to visibility conditions (which may even satisfy #76 ;))

change shortcut deletes all properties

If a user wants to change the action for an existing shortcut all of the existing shortcut's properties like submenu, label, icon and stuff are lost.

I have received several complaints about this behaviour on my skin's forum threads so I thought looking into it.

@Ignoble61 Welcome back ;-) Hope you and your family are doing fine?
I was hoping if you could shine a light on this? Was this the expected behaviour?

If so, I'm thinking about adding an extra menu action to just change the action (and choose from the list) instead of wiping the full shortcut.

I can/will pick this one up myself (if nobody beats me to it), it's just a reminder that I need to do this and maybe someone else has an opinion about this.

What's the latest release for Krypton?

What tag should I be using to develop in Krypton? I am brand new to skinning, but I want to start with extending Estuary and play around with this plugin.

FR: Submenu widgets

As discussed in #52, feature request to provide submenu's as selectable widgets. Either:

  1. A single submenu widget, with name set to the main menu item whose widget is being set. Only visible if the main menu item has a submenu.
  2. Multiple submenu widgets, one for each main menu item. Each only visible if the relevant main menu item has a submenu.

Required improvements to implement:-

  • Library.py needs to be aware of whether there are submenu items for a given main menu item
  • Gui.py needs to pass to library.py either the currently selected main menu item, or all main menu items
  • Library.py needs to be able to dynamically generate available widget within SelectShortcut method based on information passed to it from gui.py
  • (If (2)), either defaultID must be confirmed generated before passing information to library.py, or selected submenu widget must be updated on save to use the final labelID (assuming that in this scenario, the submenu widget would be linked to the correct submenu via either the labelID or the defaultID)
  • Xmlfunctions.py to work out correct submenu include at build time, save this to the widgetPath property(?) and pass it to template.py

Good chance of breakages, so to be looked into at a time when script is non-beta.

submenuOther template error with labelid matching

On krypton, when using templates and building widgets for submenus there is an error with the conditions generated for matching submenu items. submenuOther will generate a condition based upon the LabelID. However, when the LabelID is a localized string it doesn't match because the condition matches to the number not the localized string.

e.g. a condition will be generated for the submenu widget:
[String.IsEqual(Container(300).ListItem.Property(submenuVisibility),music) + String.IsEqual(Container(302).ListItem.Property(labelID),744)]

However, the LabelID wont match the 744 because the property gets translated to the localized string, but the 744 part does not. This can be fixed fairly easily I imagine by wrapping number in a localize tag:
e.g.
String.IsEqual(Container(302).ListItem.Property(labelID),$LOCALIZE[744])

Low prio: Write empty includes

http://forum.kodi.tv/showthread.php?tid=259210&pid=2239242#pid2239242

When using templates, the XML code is built when needed (the shortcut has condition X or Y).
This works fantastically well for writing widgets to the homemenu and even multiple widgets.

However if the condition is not true for a shortcut, the include is not written at all in the skin, causing some missing include errors in the logs.

For example, in Titan each shortcut can have up to 4 widgets and an include is set for each templated include. Well, when the user only assigned one widget a warning is written to the log.

This error could be prevented ny writing an empty xml element to skin for the include.

Definitely low prio as it's only a warning in the log and does no harm.
I'll look into it myself on a rainy day so this is just a reminder.

Nonetype error with the latest update

I'm using Kodi 14.2 with Aeon Nox

12:34:27 T:42268  NOTICE: -->Python Interpreter Initialized<--
12:34:28 T:42268  NOTICE: Previous line repeats 1 times.
12:34:28 T:42268   ERROR: Traceback (most recent call last):
12:34:28 T:42268   ERROR:   File "C:\Users\Angel\AppData\Roaming\Kodi\addons\script.skinshortcuts\resources\lib\xmlfunctions.py", line 87, in buildMenu
12:34:28 T:42268   ERROR:     self.writexml( profilelist, mainmenuID, groups, numLevels, buildMode, progress, options )
12:34:28 T:42268   ERROR:   File "C:\Users\Angel\AppData\Roaming\Kodi\addons\script.skinshortcuts\resources\lib\xmlfunctions.py", line 406, in writexml
12:34:28 T:42268   ERROR:     submenudata = DATA._get_shortcuts( submenu, submenuDefaultID, True, profile[0] )
12:34:28 T:42268   ERROR:   File "C:\Users\Angel\AppData\Roaming\Kodi\addons\script.skinshortcuts\resources\lib\datafunctions.py", line 167, in _get_shortcuts
12:34:28 T:42268   ERROR:     self._process_shortcuts( tree, group, profileDir )
12:34:28 T:42268   ERROR:   File "C:\Users\Angel\AppData\Roaming\Kodi\addons\script.skinshortcuts\resources\lib\datafunctions.py", line 205, in _process_shortcuts
12:34:28 T:42268   ERROR:     allGroupOverrides = skinoverrides.findall( "groupoverride" )
12:34:28 T:42268   ERROR: AttributeError: 'NoneType' object has no attribute 'findall'

Problems with ListItem.Property(hasSubmenu)

I am using this property to check whether or not a main menu item has a submenu tied to it. If it has I show an arrow/greater than sign next to the main menu item to make it clear there is a submenu (the submenu is hidden until the main menu item is clicked).

<control type="group">
    <left>20</left>
    <control type="label">
        <width>260</width>
        <height>55</height>
        <font>condensed_HomeSmall</font>
        <textcolor>Color3</textcolor>
        <label>$INFO[ListItem.Label]</label>
        <visible>IsEmpty(ListItem.Property(isSubmenu))</visible>
    </control>
    <control type="label">
        <width>260</width>
        <height>55</height>
        <font>condensed_HomeSub</font>
        <textcolor>Color3</textcolor>
        <label>$INFO[ListItem.Label]</label>
        <visible>!IsEmpty(ListItem.Property(isSubmenu))</visible>
    </control>
    <control type="label">
        <right>20</right>
        <width>20</width>
        <height>54</height>
        <label>›</label>
        <font>regular</font>
        <align>right</align>
        <textcolor>Color3</textcolor>
        <visible>!IsEmpty(ListItem.Property(hasSubmenu))</visible>
        <visible>!StringCompare(ListItem.Property("submenuVisibility"),Window(10000).Property("submenuVisibility") )</visible>
    </control>
</control>

This was working fine, and the code in my skin for this has not changed in months, basically since implementing skin shortcuts. But now, the arrow symbol is always shown.

If I change the main menu's infolabel to

$INFO[ListItem.Property(hasSubmenu)]

It does returns "True" or "False", so the value is getting set...

I tried checking for the value

<visible>!StringCompare(ListItem.Property(hasSubmenu),True)</visible>

but it doesn't make a difference, under all circumstances my main menu item's are showing the arrow symbol regardless of whether there's a submenu.

Branch script for Kodi 18

Having given some thought to Phil's comment on recent PR for compatibility for Kodi 18, I'd like to branch the script for v18 of Kodi but would appreciate others thoughts before I do this (which won't be until after Christmas at the earliest ;)) and have begun extended my RetroPlayer branch at https://github.com/Ignoble61/script.skinshortcuts/tree/games in preparation

The advantage of doing this is it simplifies code (rather than having to use the workarounds currently on git for keeping compatibility with v18 - this also gives a good opportunity to make a 'clean break' of it, as it were, where the current master will only work on v15-17, the new branch only v18). It also gives a good opportunity to refactor and remove old code knowing that this may cause breakages in the short term, but with plenty of time to fix before v18 becomes mainstream.

Jobs already done on the branch:

  • Retroplayer support (not complete - Kodi api has not yet been updated to supply all information)
  • Remove all backwards support (with the preference being to remove 'forward compatibility code' from existing branch)
  • Remove gui 309 (old widget select code)
  • Remove auto-playlist generation for viewing sources in library
  • Refactor various library loading code - sources, static items (common, commands, settings, pvr)

Jobs that it would be nice to do:

  • Remove gui's 101/102/110 - these are only used by Nox 5. @BigNoid if I were to submit a PR which replaced these with gui 401 to your skin (as used by others), would you be happy to lose these?
  • Move 'Default widget' listing from Skin Helper to Skin Shortcuts, with the possibility to backport this to existing branch. @marcelveldt any objections to this?
  • Keep refactoring complex/repetitive code

Jobs that it may not be practical to do, but would let the code be massively simplified in places

  • Remove [skin.id].properties file - save properties directly in the .DATA.xml file
  • Remove various 'default' overrides - have these provided directly in the skins default .DATA.xml files
  • Move available shortcut loading to separate module

Any thoughts on the idea in general, the ideas presented above or other areas of the script where the opportunity could be taken to remove/refactor?

Script broken on Python 2.6

Sorry, I don't have time to fix this myself at the moment (not even meant to be using the internet, but modern phones are a wonderful thing!), but a note on recent changes. Using xpath with elementtree is not supported with Python version 2.6, so using it is breaking the script on systems with that Python version (see logs on fTV skin thread, for example)

E.g. if not newelement.findall(".//property[@name='path']"): will cause a script crash on systems using that Python version.

Issue with widget-groupings

I am pretty sure that i am doing something wrong here but i have a problem with widget-groupings and the new way of assigning widgets. I am trying to use the <widget-groupings> so to group all of my skin's widgets to custom nodes. The problem is that the widgetName property is always empty for my skin's widgets. When i assign a widget from the default libraries nodes they are showing fine. Also for some weird reason the Smartish script widgets are not showing in the select dialog (the script is installed fine of course).

This is my <widget-groupings> code... http://pastebin.com/g4mPPeQs

What am i doing wrong here ?

Widgets select

I've tested the latest commit and everything seems to working fine except one thing. I use this
<label2>$INFO[Container(211).ListItem.Property(widgetName)]</label2> in 312 button to show the name of the current selected widget. After the latest commits (i don't know when but it was after 0.5.1 BETA) the widget name has a $INFO prefix in front.
Example...
Widget name: Popular Movies
now it shows: $SKIN[31251]|skin.bello|Popular Movies (31251 is my skin string for "Popular Movies")

This is happening only with the skin strings. Kodi and script's strings are working fine. I remember i've read somewhere in the documentation that skin strings should have a ::LOCAL:: prefix but until now they were working fine without that.

I have also some requests if i may. We really need to find a way to determine the kind of "Sources" widgets. I mean when user selects a Source as a widget there is no way that the skin to know what kind of source is that (movies, tvshows, music etc) so to display the proper thumbs and info. Is it possible to add some question to the user about the type of the source content and then set that as widgetType ?. That will make things more easy to handle. If there is no way to determine (and add a property about that) the source type then i will remove them from my widgets list since there is no point to have them and not to be able to display them properly.

One last thing. Is possible to break the the library nodes in additional nodes ?.
What i mean is this... This will show all the Video Library nodes:

<node label="32030">
   <content>video</content>
</node>

Now, is it possible to break this in additional nodes like this ?:

<node label="32030">
   <content>movie</content>
   <content>tvshow</content>
   <content>files</content>
.
.
</node>

I've try the above code but is not working. This could help to group very well the library nodes widgets and the skin widgets.

EDIT: I forgot about this and i have no idea if is old but i just notice it. If you try to override the PVR Guide icon with the Kodi 22020 string you will end up with the DefaultAddon icon...
<icon labelID="22020">special://skin/extras/icons/Guide.png</icon>

Cheers
Nessus

Provide option to reset current shortcut only

Having the ability to reset all of them back to defaults is definitely useful, but if a user has modified their shortcuts extensively and just needs to reset one (because they decided they wanted to revert it to default behavior, but forgot how to achieve that, for instance), there is currently no (easy) way for them to do that without dumping all of their other modifications as well.

update the script on kodi repo ?

Hi guys,
It just occured to me while working on some problem reports that the changes that I submitted to fix in the skin never got updated on the repo.
Would it be possible to publish this to repo because now users are not able to select a thumbnail for their shortcuts which causes confusion.

If you want I can ask Martijn myself to do a pull from here.

Thanks!

marcel

RPi3: added widgets but I can't select them -> EstuaryMod v2

I don't know, if this is a bug in skinshortcuts or in EstuaryMod v2:
If I add widgets, I can't select them. The author of the skin, guilouz said that it is no skin issue, because it is only happening on RPi.

more info and forum post:
https://forum.kodi.tv/showthread.php?tid=178294&pid=2657452#pid2657452
Thx for making this clear

Update: Angelinas found the issue: https://forum.kodi.tv/showthread.php?tid=306757&pid=2677994#pid2677994
but no fix yet

Several nodes not showing up in management dialog

Following up on reports in my skin thread I have found that several of my custom shortcuts and certain nodes were not available in the management dialog anymore.

I use a custom grouping, example

Simplified example:

<node label="example">
    <content>video</content>
</node>

will list all the available video related nodes correctly.

But using any of these nodes will not display anything.

<content>movie</content>
<content>tvshow</content>
<content>musicvideo</content>
<content>customvideonode</content>

The contents of these nodes are all available in the video node, with the exception of customvideonode of course. But I highly prefer to split it all up for various reasons mainly for better organization and integration of my custom shortcuts.

I'm completely sure these were working before. I'm not sure what is causing it, but as there has hardly been any changes to the script since Unfledged left, I suspect some sort of incompatibility with Helix?

See section 5 in AdvancedUsage.txt

Happy to provide any additional info.

Leia To-Do

To-do list for Leia era version of script, to be kept updated as issues and to-do's are identified.

  • Error message shown when attempting to make labelID changes to existing menu items [log 1] [log 2], possibly linked to new universal 'attempt' method
  • Removed library.py function scriptPlaylists still referenced from GUI 310 (should this function have been removed?) [log]
  • Removed import 'gmtime' still referenced from GUI 405 [log]

Script's main window multiple instances

Accidentally the other day i push the button to open script's main window twice and i notice that the window was open twice. Tested again and it turns out that the window is opening so many times how many times the window opens so many times as the times you manage to click before the first instance is open. I manage to do that for 6 times in my testing.

Is this a bug or the multiple instances have some purpose ?

Cheers
Nessus

Why Titan for Krypton still using an old PVR setting reference?

@marcelveldt

Why in few files this old PVR request setting still exist?
System.GetBool(pvrmanager.enabled)

While the current and the only request since kodi 17 (Krypton) is this:
System.HasPVRAddon

The reason is because I found this error line in the log repeats many many times (Debug mode) especially when I am in the home screen:
DEBUG: CSettingsManager: requested setting (pvrmanager.enabled) was not found.

Any leftovers of System.GetBool(pvrmanager.enabled) should be removed.

I found them in these files:
• \Kodi\addons\skin.titan.kryptonbeta\1080i\script-skinshortcuts-includes.xml
(When I'm trying to edit this file, it always back to the previous content again as explained here: https://github.com/BigNoid/script.skinshortcuts/blob/master/resources/docs/FAQ.md#changes-to-script-skinshortcuts-includesxml-are-overwritten )
• \Kodi\addons\skin.titan.kryptonbeta\shortcuts\1038.DATA.xml
• \Kodi\addons\skin.titan.kryptonbeta\shortcuts\mainmenu.DATA.xml
• \Kodi\addons\script.skinshortcuts\resources\shortcuts\overrides.xml (for version 13)

Can someone check this?

https://forum.kodi.tv/showthread.php?tid=328621


By the way, in Titan skin this file: script-skinshortcuts-includes.xml
still holding old data and leftovers from previous changes that I made in the menu shortcuts which no longer exist, and when I'm checking the debug log, I'm seeing that it's still directing to them in the background.

How can I edit this file? Instead from the shortcuts editor in the skin, that seems that it doesn't remove old shortcuts data.

Thanks

safety check when writing includes file

As reported by Ronie on the Kodi forums, a race condition occurs when writing the script-skinshortcuts-includes.xml file.

http://forum.kodi.tv/showthread.php?tid=178294&pid=2074446#pid2074446

When writing the file, a safety check should be done if the skin directory hasn't changed since the menu build started.

The issue happens when you launch a skin that utilizes the skinshortcuts script, the menu building starts working and in the meanwhile you switch to another skin.

Offcourse this issue would be gone as soon as the recent changes hit the repo (as the menu build time has been improved to almost zero) but still this safety check would be good.

BUG: shortcuts to music hidden

@ignoble, I'm getting more and more reports of users complaining about the missing shortcuts to the Music library if no library content is added. I know this was once by design but I think it's time for a change and just make it show all the time because this is starting to get really confusing since the changes in Jarvis.

I even ran into it myself a couple of days ago where I couldn't understand why the shortcut to music kept dissapearing from the main menu when I did not yet scan in my music library.

A couple of posts...

http://forum.kodi.tv/showthread.php?tid=261070&pid=2255976#pid2255976
kodi-community-addons/skin.titan#188

What do you think of just showing the shortcuts and let the users decide they want to delete it instead of applying some conditions that are not known to the user ?

PVR channels widget doesn't work anymore

Hi I use latest krypton from git and mimic skin. If I correctly understand the widget part is managed by your addon. The problem I had is with recent git version of krypton the PVR channel widget stop working it just display nothing. The strange thing is the PVR channel with artwork widget is working perfectly.

new stable version 1.0.6

@Ignoble61 now that version 1.0.6 is tested for a couple of days on the beta repo it's pretty safe to say that it's stable. I requested the pull to the Kodi repo a few minutes ago.

Once it's published it's safe to start adding features/move code around again ;-)

BTW: What to do with the optional contextmenu addon ?
Do you want to submit it yourself or do you want me to do that ?

Request: 211 Click

HI,

first of all Thanks for this great addon!

I was wondering if it would be possible to control the clicks for list 211,

my use case is the following:

I have 211 in a panel, so for items not on row 1, it's impossible to reach group 300 (which is on top in my case)

since clicking on items on 211 doesn't have any effect, I was wondering if it couldn't move focus to group 300.

I've tried tomato it happen adding an onclick to panel, but since it has no it doesn't work.

in alternative to coding the action at your level, is there a "list" I can use in that if filled with items for 211 ?
such as for instance : skinshortcuts-mainmenu_211

hope it makes sense, thanks!

ready for deploy to stable ?

The current beta version has been tested by a bunch of users. Some issues found and fixed.
Now things seem to be very stable and this new version offers a lot of improvements.

Everybody happy with a deploy to the Kodi repo ?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.