Kodi Community Forum
Changes to the skinning engine for Kodi Krypton - Printable Version

+- Kodi Community Forum (https://forum.kodi.tv)
+-- Forum: Development (https://forum.kodi.tv/forumdisplay.php?fid=32)
+--- Forum: Skinning (https://forum.kodi.tv/forumdisplay.php?fid=12)
+--- Thread: Changes to the skinning engine for Kodi Krypton (/showthread.php?tid=250862)

Pages: 1 2 3 4 5 6 7


Changes to the skinning engine for Kodi Krypton - ronie - 2015-12-05

Below you'll find an up-to-date list of all changes made to the skinning engine since the release of Kodi Jarvis.


addon.xml

xbmc.gui

new feature

new actions

new built-in functions

removed built-in functions

new infolabels

changed infolabels
  • ListItem.Rating - for songs it's now the scraped rating (details)
  • ListItem.UserRating - now available for albums/songs (details)
  • ListItem.RatingAndVotes - now available for albums/songs (details)
  • ListItem.DBType - now available in the music library (details)
  • ListItem.Property(Addon.Name) -> ListItem.AddonName (details)
  • ListItem.Property(Addon.Version) -> ListItem.AddonVersion (details)
  • ListItem.Property(Addon.Creator) -> ListItem.AddonCreator (details)
  • ListItem.Property(Addon.Summary) -> ListItem.AddonSummary (details)
  • ListItem.Property(Addon.Description) -> ListItem.AddonDescription (details)
  • ListItem.Property(Addon.Disclaimer) -> ListItem.AddonDisclaimer (details)
  • ListItem.Property(Addon.Broken) -> ListItem.AddonBroken (details)
  • ListItem.Property(Addon.Type) -> ListItem.AddonType (details)

removed infolabels

new infobools

changed infobools
  • ListItem.Property(Addon.Installed) > ListItem.Property(Addon.IsInstalled) (details)
  • ListItem.Property(Addon.Enabled) > ListItem.Property(Addon.IsEnabled) (details)
  • ListItem.Property(Addon.UpdateAvail) > ListItem.Property(Addon.HasUpdate) (details)


removed infobools

deprecated infobools

includes

new defaulticons

changed defaulticons
  • unknown-user.png -> DefaultUser.png (details)


new database path

new content type

new control type

removed control types

epggrid control

grouplist control

slider control

new dialogs

new window names

removed window names

DialogAddonInfo.xml
DialogNotification.xml

DialogAudioDSPManager.xml
  • remove listitems (details)
  • ListItem.Property(Name) --> ListItem.Label (details)
  • ListItem.Property(AddonName) --> ListItem.Label2 (details)
  • ListItem.Property(Icon) --> ListItem.Icon (details)


DialogConfirm.xml

DialogGameControllers.xml

DialogMusicInfo.xml

DialogNotification.xml

DialogPVRInfo.xml

DialogSelect.xml

DialogSettings.xml

DialogVolumeBar.xml

MyPlaylist.xml

MyPVRTimers.xml
  • remove radiobutton id="8" (details)
  • change radiobutton id="9" to id="8" (details)
  • add ActivateWindow(TVTimerRules) / ActivateWindow(RadioTimerRules) (details)
  • update visible conditions (details)


SettingsCategory.xml

SettingsSystemInfo.xml

SlideShow.xml

SmartPlaylistEditor.xml / SmartPlaylistRule.xml
  • converted several controls to regular "button" controls" (details)


VideoFullScreen.xml


Please keep this thread clean. It should be an easy overview for skinners who are updating their skin for Kodi Krypton.
For discussions / feature requests / bugreports, please find (or create) the appropriate thread in the skin development forum.



RE: Changes to the skinning engine for Kodi K*** - ronie - 2015-12-05

Changes to the skinning engine for Kodi Jarvis

Changes to the skinning engine for Kodi Isengard

Changes to the skinning engine for Kodi Helix

Changes to the skinning engine for XBMC Gotham

Changes to the skinning engine for XBMC Frodo

Changes to the skinning engine for XBMC Eden

Changes to the skinning engine for XBMC Dharma



RE: Changes to the skinning engine for Kodi K*** - ronie - 2015-12-05

2015-12-05 new built-in function - InstallAddon()

instead of adding a long list of addon dependencies to your addon.xml,
please consider whether you can remove some of them and instead use the
InstallAddon() function in your skin to install addons on demand.


forum discussion: 231104 (thread)
git commit: https://github.com/xbmc/xbmc/commit/c8f7480d9c570f62df910ced25d691a4b8c368fe
pull request: 8419 (PR)


RE: Changes to the skinning engine for Kodi K*** - ronie - 2015-12-06

2015-12-06 music ratings changes

this applies to albums and songs:
ratings have been split into
  • ListItem.Rating (scraped rating)
  • ListItem.UserRating (user set rating)

this info label has been added:
  • ListItem.RatingAndVotes (for albums/songs)
  • MusicPlayer.UserRating (for songs)

this info label has been removed:
  • ListItem.StarRating

also, these ratings now use a 1-10 rating system (used to be 1-5).


git commit: https://github.com/xbmc/xbmc/commit/3cd0721c2354f41aec86c6e4cc43c05cb867cfe9
pull request: 8405 (PR)


RE: Changes to the skinning engine for Kodi K*** - ronie - 2015-12-06

Will be superseded by https://github.com/xbmc/xbmc/pull/8856

(2015-12-06, 16:23)ronie Wrote: 2015-12-06 DialogContentSettings.xml changes

needed changes:
  • replace spincontrol (id="20") with a button control (id="20")
  • remove the list control (id="21") and replace it with a button (id="21")

some cleanup / navigation fixes might be needed in your skin as well.

Image


git commit: https://github.com/xbmc/xbmc/commit/c1d4b5884b2de915729b1870218672adacb9c9ba
pull request: 8320 (PR)



RE: Changes to the skinning engine for Kodi K*** - ronie - 2015-12-06

2015-12-06 xbmc.gui - version bump

xbmc.gui has been bumped to 5.11.0.

git commit: https://github.com/xbmc/xbmc/commit/a358bc14e8d82f2627be5febb6843dda6654d488
pull request: 8495 (PR)


RE: Changes to the skinning engine for Kodi K*** - ronie - 2015-12-15

2015-12-15 DialogSelect.xml - cancel button

add a cancel button (id="7") in DialogSelect.xml
or
in case you already had a custom cancel button, change it's id to 7 and remove the onclick and label tags.


git commit: https://github.com/xbmc/xbmc/commit/17fb8a3031135131545fa8e10d2f3194420f3634
pull request: 8417 (PR)


RE: Changes to the skinning engine for Kodi K*** - ronie - 2015-12-19

2015-12-18 MyPVRTimers.xml - changes

pvr timers have been split in 'repeating timers' and 'one off timers'.
the repeating timers have been moved to two new windows:
  • TVTimerRules
  • RadioTimerRules
both will keep using the MyPVRTimers.xml file.

required changes:
  • remove radiobutton id="8" (group timers)
  • change the id of radiobutton id="9" to id="8" (Hide disabled timers)
  • add ActivateWindow(TVTimerRules) / ActivateWindow(RadioTimerRules) somewhere so the new windows can be accessed
  • update your visible conditions to include Window.IsVisible(TVTimerRules) / Window.IsVisible(RadioTimerRules) where needed



git commit: https://github.com/xbmc/xbmc/commit/5cd85cb42eb012543e34cfba7031733f0b433360
pull request: 8561 (PR)


RE: Changes to the skinning engine for Kodi K*** - ronie - 2015-12-29

2015-12-29 AddonBrowser.xml - changes

a few settings that were on the sidemenu of the addon browser have been moved to the system settings window.

needed changes:
  • remove radiobutton id="6" (notifications)
  • change the label of button id="5" to 10004 (settings)


this change also introduces a new boolean condition:
  • ListItem.Property(Addon.Orphaned)


git commit: https://github.com/xbmc/xbmc/commit/af48354f81e4d2cef15fee5778ca797bba379b09
pull request: 8607 (PR)


RE: Changes to the skinning engine for Kodi K*** - ronie - 2015-12-31

2015-12-31 Changed infolabel

ListItem.DBType now also works in the music library.
it will return 'artist', 'album' or 'song', depending on the listitem.



git commit: https://github.com/xbmc/xbmc/commit/5ece5e0d4b9941e5a6825f44a55dae6b2a4dd372
pull request: 8711 (PR)


RE: Changes to the skinning engine for Kodi Krypton - ronie - 2016-01-05

2016-01-04 New infolabels
  • ListItem.Tag
  • ListItem.Set

will return the name of the 'tag' or 'set' the item is part of.


git commit: https://github.com/xbmc/xbmc/commit/4a65050ae7af6edcd7bcab1f1ed70a984d697592
pull request: 8721 (PR)


RE: Changes to the skinning engine for Kodi Krypton - ronie - 2016-01-05

2016-01-04 Changed infobools

old names:
  • ListItem.Property(Addon.Installed)
  • ListItem.Property(Addon.Enabled)
  • ListItem.Property(Addon.UpdateAvail)


new names:
  • ListItem.Property(Addon.IsInstalled)
  • ListItem.Property(Addon.IsEnabled)
  • ListItem.Property(Addon.HasUpdate)

for use in the addon window/dialogs


git commit: https://github.com/xbmc/xbmc/commit/7e84c1d3bf5fecc7b425f2ec0f4fd7a0a8179a86
pull request: 8682 (PR)


RE: Changes to the skinning engine for Kodi Krypton - ronie - 2016-01-06

2016-01-05 New built-in function
  • Skin.SelectBool()

up 'till now skins couldn't use spincontrols (or any other button) to make a selection between multiple options.
this new function allows skins to use a select dialog to select between multiple skin setting options.

you need to pass the header label and the labels and the names of the skin settings:
Code:
Skin.SelectBool(424, 31411|RecentWidget, 31412|RandomWidget, 31413|InProgressWidget)


git commit: https://github.com/xbmc/xbmc/commit/34eb53958f5e0242eea3caed87c32b378734c9e8
pull request: 8303 (PR)


RE: Changes to the skinning engine for Kodi Krypton - ronie - 2016-01-06

2016-01-05 New infolabels

in order to support multiple ratings in the future (needs scraper support),
the following new infolabels have been added:
  • ListItem.Rating(<name>)
  • ListItem.Votes(<name>)
  • ListItem.RatingAndVotes(<name>)

this will allow skins to display a rating from a specific metadata provider, eg:
Code:
ListItem.Rating(imdb)
ListItem.Votes(tmdb)


git commit: https://github.com/xbmc/xbmc/commit/92042ae170dd1229fa466db8322f520b92c4b97d
git commit: https://github.com/xbmc/xbmc/commit/03c80c59efbb0b05ff3cba05df5b307c821f1374
pull request: 8080 (PR)
pull request: 8788 (PR)


RE: Changes to the skinning engine for Kodi Krypton - ronie - 2016-01-09

2016-01-09 New infolabel
  • ListItem.SetID

usecases:
show a list of movies belonging to the same set as the focused movie: <content target="video">videodb://movies/sets/$INFO[ListItem.SetID]</content>
provide a shortcut to open the movie set directly: ActivateWindow(Videos,videodb://movies/sets/$INFO[ListItem.SetID],return)


git commit: https://github.com/xbmc/xbmc/commit/ea3f2fcc6d2211a68c0329a2fd6b0ab27a850814
pull request: 8759 (PR)