(2019-12-16, 03:03)ronie Wrote: During the development of Kodi Leia, we've added support for addons to use the same settings format as Kodi itself uses.
Due to some initial bugs that couldn't be fixed in time before the v18 release, we've never promoted the use of this settings format for addons.
Over the past few months, these issues have been fixed.
If you're running a nightly v19 build and plan to submit your addon to the addon repo for Matrix,
there shouldn't be any reason to stop you from migrating your settings.xml file to the new format.
Here's an addon that will do (or at least try to) the hard work for you:
script.settings-convert-0.0.10.zip
(please make a backup of your settings.xml file before running this script)
In case you prefer not to depend on automated tools and rather do it manually, there's a wiki page where i tried to cover as much as i could think of:
https://kodi.wiki/view/Add-on_settings_conversion
Thanks for the great work on the conversion script. I've run into one issue with it I wanted to highlight. I ran it against my Kodi 18 settings.xml file and everything except in one section it set the parent value incorrectly which caused some formatting changes in Kodi 19 and some of the settings were greyed out. Here's my Kodi 18 settings.xml file:
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<settings>
<category label="30339">
<setting id="ssdp_timeout" type="number" label="30340" default="5"/>
</category>
<category label="30362">
<setting id="content_pin" type="number" label="30363" option="hidden" default=""/>
<setting id="caching" type="bool" label="30366" default="false"/>
<setting id="kodiactor" type="bool" label="30367" default="true"/>
<setting id="koditv" type="bool" label="30369" default="false"/>
<setting id="kodichange" type="bool" label="30370" default="true"/>
<setting id="kodisync" type="bool" label="30371" default="true"/>
<setting id="mdupelog" type="bool" label="30374" default="false"/>
<setting id="kodiclean" type="bool" label="30368" default="false"/>
</category>
<!-- View -->
<category label="30300">
<setting id="only_mezzmo_servers" type="bool" label="30350" default="true"/>
<setting id="skinname" type="enum" label="30061" values="Estuary|Confluence|Aeon Nox 5" default="Estuary"/>
<!--Confluence Skin-->
<setting id="top_view_mode" type="enum" label="30349" lvalues="30345|30331|30332|30333" default="1" subsetting="true" visible="eq(-1,1)" enable="eq(-1,1)"/>
<setting id="folders_view_mode" type="enum" label="30342" lvalues="30345|30331|30332|30333" default="3" subsetting="true" visible="eq(-2,1)" enable="eq(-2,1)"/>
<setting id="files_view_mode" type="enum" label="30343" lvalues="30345|30331|30332|30333" default="3" subsetting="true" visible="eq(-3,1)" enable="eq(-3,1)"/>
<setting id="servers_view_mode" type="enum" label="30344" lvalues="30345|30331|30332|30333" default="3" subsetting="true" visible="eq(-4,1)" enable="eq(-4,1)"/>
<setting id="movies_view_mode" type="enum" label="30330" lvalues="30345|30331|30332|30333|30334|30335|30336|30337|30338" default="5" subsetting="true" visible="eq(-5,1)" enable="eq(-5,1)"/>
<setting id="episodes_view_mode" type="enum" label="30341" lvalues="30345|30331|30332|30333|30334|30335|30336|30337|30338" default="7" subsetting="true" visible="eq(-6,1)" enable="eq(-6,1)"/>
<setting id="songs_view_mode" type="enum" label="30365" lvalues="30345|30331|30332|30333|30334|30335|30336|30337|30338" default="3" subsetting="true" visible="eq(-7,1)" enable="eq(-7,1)"/>
<!--Aeon Nox 5 Skin-->
<setting id="top_view_mode_aeon" type="labelenum" label="30349" values="Default AEON|List|InfoWall|Landscape|ShowCase1|ShowCase2|TriPanel|Posters|Shift|BannerWall|Icons|LowList|Episode|Wall|Gallery|Panel|RightList|BigList" default="List" subsetting="true" visible="eq(-8,2)" enable="eq(-8,2)"/>
<setting id="folders_view_mode_aeon" type="labelenum" label="30342" values="Default|List|InfoWall|Landscape|ShowCase1|ShowCase2|TriPanel|Posters|Shift|BannerWall|Icons|LowList|Episode|Wall|Gallery|Panel|RightList|BigList|SongList|MyFlix|BigFan|BannerPlex|FanartList|Music_JukeBox|Fullscreen_Wall" default="List" subsetting="true" visible="eq(-9,2)" enable="eq(-9,2)"/>
<setting id="files_view_mode_aeon" type="labelenum" label="30343" values="Default|List|InfoWall|Landscape|ShowCase1|ShowCase2|TriPanel|Posters|Shift|BannerWall|Icons|LowList|Episode|Wall|Gallery|Panel|RightList|BigList|SongList|MyFlix|BigFan|BannerPlex|FanartList|Music_JukeBox|Fullscreen_Wall" default="List" subsetting="true" visible="eq(-10,2)" enable="eq(-10,2)"/>
<setting id="servers_view_mode_aeon" type="labelenum" label="30344" values="Default|List|InfoWall|Landscape|ShowCase1|ShowCase2|TriPanel|Posters|Shift|BannerWall|Icons|LowList|Episode|Wall|Gallery|Panel|RightList|BigList|SongList|MyFlix|BigFan|BannerPlex|FanartList|Music_JukeBox|Fullscreen_Wall" default="List" subsetting="true" visible="eq(-11,2)" enable="eq(-11,2)"/>
<setting id="movies_view_mode_aeon" type="labelenum" label="30330" values="Default|List|InfoWall|Landscape|ShowCase1|ShowCase2|TriPanel|Posters|Shift|BannerWall|Icons|LowList|Episode|Wall|Gallery|Panel|RightList|BigList|SongList|MyFlix|BigFan|BannerPlex|FanartList|Music_JukeBox|Fullscreen_Wall" default="Shift" subsetting="true" visible="eq(-12,2)" enable="eq(-12,2)"/>
<setting id="episodes_view_mode_aeon" type="labelenum" label="30341" values="Default|List|InfoWall|Landscape|ShowCase1|ShowCase2|TriPanel|Posters|Shift|BannerWall|Icons|LowList|Episode|Wall|Gallery|Panel|RightList|BigList|SongList|MyFlix|BigFan|BannerPlex|FanartList|Music_JukeBox|Fullscreen_Wall" default="Episode" subsetting="true" visible="eq(-13,2)" enable="eq(-13,2)"/>
<setting id="songs_view_mode_aeon" type="labelenum" label="30365" values="Default|List|InfoWall|Landscape|ShowCase1|ShowCase2|TriPanel|Posters|Shift|BannerWall|Icons|LowList|Episode|Wall|Gallery|Panel|RightList|BigList|SongList|MyFlix|BigFan|BannerPlex|FanartList|Music_JukeBox|Fullscreen_Wall" default="List" subsetting="true" visible="eq(-14,2)" enable="eq(-14,2)"/>
<!--Estuary Skin-->
<setting id="top_view_mode_estuary" type="labelenum" label="30349" values="Default ESTUARY|List|InfoWall|Landscape|ShowCase1|ShowCase2|TriPanel|Posters|Shift|BannerWall|Logo|Wall|LowList|BigList" default="List" subsetting="true" visible="eq(-15,0)" enable="eq(-15,0)"/>
<setting id="folders_view_mode_estuary" type="labelenum" label="30342" values="Default|List|InfoWall|Landscape|ShowCase1|ShowCase2|TriPanel|Posters|Shift|BannerWall|Logo|Wall|LowList|BigList" default="List" subsetting="true" visible="eq(-16,0)" enable="eq(-16,0)"/>
<setting id="files_view_mode_estuary" type="labelenum" label="30343" values="Default|List|InfoWall|Landscape|ShowCase1|ShowCase2|TriPanel|Posters|Shift|BannerWall|Logo|Wall|LowList|BigList" default="List" subsetting="true" visible="eq(-17,0)" enable="eq(-17,0)"/>
<setting id="servers_view_mode_estuary" type="labelenum" label="30344" values="Default|List|InfoWall|Landscape|ShowCase1|ShowCase2|TriPanel|Posters|Shift|BannerWall|Logo|Wall|LowList|BigList" default="List" subsetting="true" visible="eq(-18,0)" enable="eq(-18,0)"/>
<setting id="movies_view_mode_estuary" type="labelenum" label="30330" values="Default|List|InfoWall|Landscape|ShowCase1|ShowCase2|TriPanel|Posters|Shift|BannerWall|Logo|Wall|LowList|BigList" default="Shift" subsetting="true" visible="eq(-19,0)" enable="eq(-19,0)"/>
<setting id="episodes_view_mode_estuary" type="labelenum" label="30341" values="Default|List|InfoWall|Landscape|ShowCase1|ShowCase2|TriPanel|Posters|Shift|BannerWall|Logo|Wall|LowList|Episode|BigList" default="Episode" subsetting="true" visible="eq(-20,0)" enable="eq(-20,0)"/>
<setting id="songs_view_mode_estuary" type="labelenum" label="30365" values="Default|List|InfoWall|Landscape|ShowCase1|ShowCase2|TriPanel|Posters|Shift|BannerWall|Logo|Wall|LowList|BigList" default="List" subsetting="true" visible="eq(-21,0)" enable="eq(-21,0)"/>
</category>
<!-- Search -->
<category label="30351">
<setting id="search_video" type="bool" label="30352" default="true"/>
<setting id="search_music" type="bool" label="30353" default="true"/>
<setting id="search_photo" type="bool" label="30354" default="true"/>
<setting id="search_title" type="bool" label="30360" default="true"/>
<setting id="search_artist" type="bool" label="30356" default="true"/>
<setting id="search_album" type="bool" label="30355" default="true"/>
<setting id="search_tagline" type="bool" label="30357" default="true"/>
<setting id="search_description" type="bool" label="30358" default="true"/>
<setting id="search_keywords" type="bool" label="30359" default="true"/>
<setting id="search_creator" type="bool" label="30364" default="true"/>
</category>
</settings>
The problem is in the View section for anything other than the Confluence skin. A sample output from the conversion is:
<setting id="top_view_mode_aeon" type="string" label="30349" help="" parent="
songs_view_mode">
<level>0</level>
<default>List</default>
<constraints>
<options>
<option label="Default">Default</option>
<option label="List">List</option>
<option label="InfoWall">InfoWall</option>
<option label="Landscape">Landscape</option>
<option label="ShowCase1">ShowCase1</option>
<option label="ShowCase2">ShowCase2</option>
<option label="TriPanel">TriPanel</option>
<option label="Posters">Posters</option>
<option label="Shift">Shift</option>
<option label="BannerWall">BannerWall</option>
<option label="Icons">Icons</option>
<option label="LowList">LowList</option>
<option label="Episode">Episode</option>
<option label="Wall">Wall</option>
<option label="Gallery">Gallery</option>
<option label="Panel">Panel</option>
<option label="RightList">RightList</option>
<option label="BigList">BigList</option>
</options>
</constraints>
<dependencies>
<dependency type="enable">
<condition operator="is" setting="skinname">2</condition>
</dependency>
<dependency type="visible">
<condition operator="is" setting="skinname">2</condition>
</dependency>
</dependencies>
<control type="spinner" format="string"/>
</setting>
The parent is incorrect. If I change it to skinname and the other settings options it works properly. This may be an issue with the formatting of the View section of my Kodi 18 settings.xml file but when I load the Kodi 18 formatted settings.xml file under Kodi 19 Alpha 2 it works fine.
Jeff