2015-02-10, 07:29
(2015-02-10, 01:12)marcelveldt Wrote: You're right I'm using variables for most of the actions because of the whole plex/mediabrowser integrations.
Is there a way to disable the sharing function of skinshortcuts so the menuitems won't get passed to another skin ?
Only changing the groupname won't be enough I'm afraid as the whole mainmenu will be shared across the skins.
Yeah, now that I look at it again its not possible to really change the groupname of the mainmenu.
However, couldn't you use overrides? From AdvancedUsage.txt:
Quote:1. Overriding an action
You may wish to override an action in order to provide additional functionality. For example, you could override the default action for Movies (to go to the Movie Title view) to run Cinema Experience instead.
Note, any override will replace the original menu item with one which is only visible when any conditions are met. This means you will also need an override for when the conditions are not met.
<override action="[command]" group="[GroupName]" version="[XBMC Major Version]">
<condition>[Boolean condition]</condition>
<action>[XBMC function]</action>
<override>
[command] - Replace with the action you are overriding
[GroupName] - [Optional] The group that the override applies to, for example "movies". If omitted, the property will be apply to all items which match the action.
[XBMC Major Version] - [Optional] The major XBMC version on which this override will occur, for example "13" for XBMC Gotham
[Boolean condition] - [Optional] Replace with a string that must evaluate to True for the custom action to be run
[XBMC function] - Replace with the action that should be run instead. You may include multiple <action> tags. Omit to run the original command.
<?xml version="1.0" encoding="UTF-8"?>
<overrides>
<override action="ActivateWindow(Videos,MovieTitles,return)">
<condition>!Skin.HasSetting(CinemaExperience) | !System.HasAddon(script.cinema.experience)</condition>
</override>
<override action="ActivateWindow(Videos,MovieTitles,return)">
<condition>Skin.HasSetting(CinemaExperience) + System.HasAddon(script.cinema.experience)</condition>
<action>RunScript(script.cinema.experience,movietitles)</action>
</override>
</overrides>
Please be aware that in the latest revisions of the script, library links - ActivateWindow(Videos,MovieTitles) - have been replaced by video nodes - ActivateWindow(Videos,videodb://movies/titles/). You should ensure any overrides work with both types of link.
IMPORTANT: User choice MUST be respected when overriding actions. That is to say, unless the user specifically gives permission for a shortcut they have chosen to do something else, it should be left alone. If you are overriding the action, it is expected that in most cases you will use a visibility condition - possibly linked to a skin settings - to ensure the user has consented.
Users can also provide an overrides.xml file to override actions in special://profile/