Kodi 17 - Skin settings no longer available after migration from Kodi 15

  Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
Janssuuh Offline
Junior Member
Posts: 16
Joined: Oct 2015
Reputation: 0
Post: #1
Hi all,

I'm trying to fix my Kodi 15 skin to make it work with Kodi 17.
An issue I'm having is that I have a 'resources' folder with 'settings.xml' which somehow is no longer 'seen' on Kodi 17.
(Selecting my skin in the addon section displays no 'settings' button any longer.)

Somehow I assume that it is not allowed to use these settings.xml for skin settings. (I see this construction being used with all other types of addons.)

I used strings.xml which I replaces with .po files, but that does not change the effect.
Also I used to have a shortcut; "Addon.OpenSettings(skin.my_skin)" which now stalls...

Does anyone know if there are any changed requirements here?

Thanks!
Jeroen
find quote
Martijn Offline
Team Kodi
Posts: 17,003
Joined: Jul 2011
Reputation: 311
Location: Dawn of time
Post: #2
Follow https://forum.kodi.tv/showthread.php?tid=250862 and https://forum.kodi.tv/showthread.php?tid=231270

Read/follow the forum rules.
For troubleshooting and bug reporting, read this first
Interested in seeing some YouTube videos about Kodi? Go here and subscribe
find quote
Janssuuh Offline
Junior Member
Posts: 16
Joined: Oct 2015
Reputation: 0
Post: #3
Hi Martijn,

Thanks for the reply.
I've been reading the links you sent. And also installed some skins which somehow use specific 'skin settings'.

Though I still cannot figure out where these settings are / should be saved. The Jarvis content actually seems to say 'the skin settings now need to be saved at settings.xml' which is exactly what I did since Isengard Confused
Also all 'new' skins seem to only provide images in the resources folder.

I did notice these 'new' skins contain a file 'SkinSettings.xml'. Also these files contain 'togglesettings' commands which might be usefull.
I'll dig the Kodi wiki / forum some more, can't yet find a specification of this file (need the meaning of the used id's)...

To be continued...
find quote
Martijn Offline
Team Kodi
Posts: 17,003
Joined: Jul 2011
Reputation: 311
Location: Dawn of time
Post: #4
moving to skinning section so you can get some help

Read/follow the forum rules.
For troubleshooting and bug reporting, read this first
Interested in seeing some YouTube videos about Kodi? Go here and subscribe
find quote
Hitcher Offline
Team-Kodi Member
Posts: 13,493
Joined: Aug 2007
Reputation: 211
Location: Eastleigh, UK
Post: #5
SkinSettings.xml was added for Frodo -

https://forum.kodi.tv/showthread.php?tid...pid1214820
find quote
scott967 Offline
Posting Freak
Posts: 2,765
Joined: Jul 2012
Reputation: 87
Post: #6
I didn't think you could do this -- actually I think having a settings.xml file would be helpful. At least in the skin I've been maintaining, it always was set up so on first use it would run through a bunch of code to set the defaults for all the skin settings.

scott s.
.
find quote
Hitcher Offline
Team-Kodi Member
Posts: 13,493
Joined: Aug 2007
Reputation: 211
Location: Eastleigh, UK
Post: #7
(2017-07-18 01:02)scott967 Wrote:  I didn't think you could do this -- actually I think having a settings.xml file would be helpful. At least in the skin I've been maintaining, it always was set up so on first use it would run through a bunch of code to set the defaults for all the skin settings.

scott s.
.

Yeah, I've never heard of it myself either.
find quote
Janssuuh Offline
Junior Member
Posts: 16
Joined: Oct 2015
Reputation: 0
Post: #8
Thanks again for replying!

I've used a settings.xml which was working with Isengard. But mayby I'm confused about the location of it.

My settings.xml is at:
-skin/resources/settings.xml

Contents:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<settings>
<category label="32012">
<setting label="32016" type="bool" id="fis-block" default="false"/>
<setting label="32015" type="bool" id="fis-speed" default="false"/>
</category>
....
</settings>

Also the skin uses its
- skin/PAL16x9/Settings.xml

But this one is just the template for settingslist (system / profiles / network / images / ...) right?

Kind regards,
Jeroen
find quote
Hitcher Offline
Team-Kodi Member
Posts: 13,493
Joined: Aug 2007
Reputation: 211
Location: Eastleigh, UK
Post: #9
Code:
\userdata\addon_data\SKIN_NAME\settings.xml
find quote
Janssuuh Offline
Junior Member
Posts: 16
Joined: Oct 2015
Reputation: 0
Post: #10
Found a third settings.xml indeed! (like Hitcher says); /root/.kodi/userdata/addon_data/skin.audi_rns/settings.xml

I made a CustomSettings.xml which contains these togglesettings tags:
Code:
<onclick>Skin.ToggleSetting(settingX)</onclick>
(radiobutton control).
Somehow I have to reload the skin to effect the settings.xml (not my main issue)

I'm pretty sure in python I used this before, but nothing is returned anymore Confused:
Code:
settingX = str( xbmcaddon.Addon().getSetting("settingX") )

Also this does not add a thing to the settings.xml:
Code:
xbmcaddon.Addon().setSetting("settingX","true")

I've read https://alwinesch.github.io/group__pytho...addon.html there are new Bool / Int / .. types of 'get' and 'set', but python xbmcaddon does not seem to know these attributes...
I also tried to add my addonid to xbmcaddon.Addon("skin.audi_rns") which should not be needed...

So now I don't receive any errors at kodi.log, but also I can't read / write to the settings.xml...

Any suggestions / examples?

Thanks!
Kind regards,
Jeroen
find quote
Hitcher Offline
Team-Kodi Member
Posts: 13,493
Joined: Aug 2007
Reputation: 211
Location: Eastleigh, UK
Post: #11
You shouldn't even be trying to edit it - just use the correct method of adding any skin settings to SkinSettings.xml and/or using the 'first run' method to set any default skin settings.
(This post was last modified: 2017-07-22 00:55 by Hitcher.)
find quote
ronie Offline
Team-Kodi Member
Posts: 13,173
Joined: Jan 2009
Reputation: 392
Post: #12
(2017-07-21 23:39)Janssuuh Wrote:  I'm pretty sure in python I used this before, but nothing is returned anymore Confused:
Code:
settingX = str( xbmcaddon.Addon().getSetting("settingX") )

Also this does not add a thing to the settings.xml:
Code:
xbmcaddon.Addon().setSetting("settingX","true")

that will get/set settings of your python addon. not the skin.

if you want to modify skin settings from a python addon, use:
Code:
xbmc.executebuiltin('Skin.ToggleSetting(settingX)')

Do not PM or e-mail Team-Kodi members directly asking for support.
Always read the Forum rules, Kodi online-manual, FAQ and Search the forum before posting.
For troubleshooting and bug reporting please make sure you read this first.
find quote
Janssuuh Offline
Junior Member
Posts: 16
Joined: Oct 2015
Reputation: 0
Post: #13
Thanks again...

I developed my Kodi skin and added some options / settings, using python.
So actually now it is a skin and an addon in one package

The addon settings I can't use anymore, because Krypton (I asume) finds a skin is not an addon.
So the skin settings are my alternative now. The 'ToggleSetting' Ronie suggests works!!
However, there does not seem to be an equal function to Get these settings back to python..

I might need to cut my skin and its (addon) options again, but I prefered it to be one package ... (Or I could have python to open settings.xml directly and read the settings there)

@Hitcher; If I manage this to work one way or another I'll try to edit the coding to fit standards again (customsettings can be skinsettings of course)

Kind regards,
Jeroen
find quote