Kodi Community Forum
Solved Wondering Why Navigation Isn’t Working - Printable Version

+- Kodi Community Forum (https://forum.kodi.tv)
+-- Forum: Support (https://forum.kodi.tv/forumdisplay.php?fid=33)
+--- Forum: Skins Support (https://forum.kodi.tv/forumdisplay.php?fid=67)
+---- Forum: Estuary (https://forum.kodi.tv/forumdisplay.php?fid=260)
+---- Thread: Solved Wondering Why Navigation Isn’t Working (/showthread.php?tid=375595)



Wondering Why Navigation Isn’t Working - CadmarLegend - 2023-12-31

Hello there! I added an Anime Movies item within the sidemenu. I simply copied the Movies item and changed ids.

However, I am not able to get to the widgets within Anime Movies through my keyboard/button navigation. I have been trying to debug it for an hour and just cannot figure out what went wrong. 

home.xml (Movies item/button)
xml:
<item>
    <label>Movies</label>
    <onclick condition="Library.HasContent(movies) + Skin.HasSetting(home_no_categories_widget) + !System.GetBool(myvideos.flatten)">ActivateWindow(Videos,videodb://movies/,return)</onclick>
    <onclick condition="Library.HasContent(movies) + Skin.HasSetting(home_no_categories_widget) + System.GetBool(myvideos.flatten)">ActivateWindow(Videos,special://skin/playlists/movie_titles.xsp,return)</onclick>
    <onclick condition="Library.HasContent(movies) + !Skin.HasSetting(home_no_categories_widget)">ActivateWindow(Videos,special://skin/playlists/movie_titles.xsp,return)</onclick>
    <onclick condition="!Library.HasContent(movies)">ActivateWindow(Videos,sources://video/,return)</onclick>
    <property name="menu_id">$NUMBER[5000]</property>
    <thumb>icons/sidemenu/movies.png</thumb>
    <property name="id">movies</property>
    <visible>!Skin.HasSetting(HomeMenuNoMovieButton)</visible>
</item>

home.xml (Movies widgets)
xml:
<control type="group" id="5000">
    <visible>String.IsEqual(Container(9000).ListItem.Property(id),movies)</visible>
    <include content="Visible_Right_Delayed">
        <param name="id" value="movies"/>
    </include>
    <control type="grouplist" id="5001">
        <include>WidgetGroupListCommon</include>
        <pagecontrol>5010</pagecontrol>
        <include content="WidgetListCategories" condition="Library.HasContent(movies) + !Skin.HasSetting(home_no_categories_widget)">
            <param name="content_path" value="special://skin/custom-nodes/video/movies/"/>
            <param name="additional_movie_items" value="true"/>
            <param name="widget_header" value="$LOCALIZE[31148]"/>
            <param name="widget_target" value="videos"/>
            <param name="list_id" value="5900"/>
        </include>
        <include content="WidgetListPoster" condition="Library.HasContent(movies)">
            <param name="content_path" value="special://skin/playlists/inprogress_movies.xsp"/>
            <param name="widget_header" value="Continue watching..."/>
            <param name="widget_target" value="videos"/>
            <param name="list_id" value="5100"/>
        </include>
        <include content="WidgetListPoster" condition="Library.HasContent(movies)">
            <param name="content_path" value="special://skin/playlists/recent_unwatched_movies.xsp"/>
            <param name="widget_header" value="$LOCALIZE[20386]"/>
            <param name="widget_target" value="videos"/>
            <param name="list_id" value="5200"/>
        </include>
        <include content="WidgetListPoster" condition="Library.HasContent(movies)">
            <param name="content_path" value="special://skin/playlists/unwatched_movies.xsp"/>
            <param name="widget_header" value="$LOCALIZE[31007]"/>
            <param name="widget_target" value="videos"/>
            <param name="list_id" value="5300"/>
        </include>
        <include content="WidgetListPoster" condition="Library.HasContent(movies)">
            <param name="content_path" value="special://skin/playlists/random_movies.xsp"/>
            <param name="widget_header" value="$LOCALIZE[31006]"/>
            <param name="widget_target" value="videos"/>
            <param name="browse_mode" value="never"/>
            <param name="list_id" value="5400"/>
        </include>
        <include content="WidgetListCategories" condition="Library.HasContent(movies)">
            <param name="content_path" value="videodb://movies/genres/"/>
            <param name="widget_header" value="$LOCALIZE[135]"/>
            <param name="widget_target" value="videos"/>
            <param name="list_id" value="5500"/>
            <param name="icon" value="$VAR[WidgetGenreIconVar]"/>
            <param name="icon_height" value="70"/>
        </include>
        <include content="WidgetListPoster" condition="Library.HasContent(movies)">
            <param name="content_path" value="videodb://movies/sets/"/>
            <param name="widget_header" value="$LOCALIZE[31075]"/>
            <param name="widget_target" value="videos"/>
            <param name="sortby" value="random"/>
            <param name="list_id" value="5600"/>
            <param name="onclick_condition" value="true"/>
            <param name="onclick_action" value="$VAR[MovieSetOnClickActionVar]"/>
        </include>
    </control>
    <include content="ImageWidget" condition="!Library.HasContent(movies)">
        <param name="text_label" value="$LOCALIZE[31104]" />
        <param name="button_label" value="$LOCALIZE[31110]" />
        <param name="button_onclick" value="ActivateWindow(videos,files,return)"/>
        <param name="button_id" value="5500"/>
        <param name="button2_onclick" value="Skin.SetBool(HomeMenuNoMovieButton)"/>
    </include>
    <include content="WidgetScrollbar" condition="Skin.HasSetting(touchmode)">
        <param name="scrollbar_id" value="5010"/>
    </include>
</control>
----------------------------------
home.xml (Anime Movies item/button)
xml:
<item>
    <label>Anime Movies</label>
    <onclick condition="Library.HasContent(movies) + Skin.HasSetting(home_no_categories_widget) + !System.GetBool(myvideos.flatten)">ActivateWindow(Videos,videodb://movies/,return)</onclick>
    <onclick condition="Library.HasContent(movies) + Skin.HasSetting(home_no_categories_widget) + System.GetBool(myvideos.flatten)">ActivateWindow(Videos,special://skin/playlists/movie_titles.xsp,return)</onclick>
    <onclick condition="Library.HasContent(movies) + !Skin.HasSetting(home_no_categories_widget)">ActivateWindow(Videos,special://skin/playlists/movie_titles.xsp,return)</onclick>
    <onclick condition="!Library.HasContent(movies)">ActivateWindow(Videos,sources://video/,return)</onclick>
    <property name="menu_id">16000</property>
    <thumb>icons/sidemenu/movies.png</thumb>
    <property name="id">animemovies</property>
    <visible>!Skin.HasSetting(HomeMenuNoMovieButton)</visible>
</item>

home.xml (Anime Movies widgets)
xml:
<control type="group" id="16000">
    <visible>String.IsEqual(Container(9000).ListItem.Property(id),animemovies)</visible>
    <include content="Visible_Right_Delayed">
        <param name="id" value="animemovies"/>
    </include>
    <control type="grouplist" id="16001">
        <include>WidgetGroupListCommon</include>
        <pagecontrol>16010</pagecontrol>
        <include content="WidgetListCategories" condition="Library.HasContent(movies) + !Skin.HasSetting(home_no_categories_widget)">
            <param name="content_path" value="library://video/movies/"/>
            <param name="additional_movie_items" value="true"/>
            <param name="widget_header" value="$LOCALIZE[31148]"/>
            <param name="widget_target" value="videos"/>
            <param name="list_id" value="16900"/>
        </include>
        <include content="WidgetListPoster" condition="Library.HasContent(movies)">
            <param name="content_path" value="special://skin/playlists/inprogress_movies.xsp"/>
            <param name="widget_header" value="Continue watching..."/>
            <param name="widget_target" value="videos"/>
            <param name="list_id" value="16100"/>
        </include>
        <include content="WidgetListPoster" condition="Library.HasContent(movies)">
            <param name="content_path" value="special://skin/playlists/recent_unwatched_movies.xsp"/>
            <param name="widget_header" value="$LOCALIZE[20386]"/>
            <param name="widget_target" value="videos"/>
            <param name="list_id" value="16200"/>
        </include>
        <include content="WidgetListPoster" condition="Library.HasContent(movies)">
            <param name="content_path" value="special://skin/playlists/unwatched_movies.xsp"/>
            <param name="widget_header" value="$LOCALIZE[31007]"/>
            <param name="widget_target" value="videos"/>
            <param name="list_id" value="16300"/>
        </include>
        <include content="WidgetListPoster" condition="Library.HasContent(movies)">
            <param name="content_path" value="special://skin/playlists/random_movies.xsp"/>
            <param name="widget_header" value="$LOCALIZE[31006]"/>
            <param name="widget_target" value="videos"/>
            <param name="browse_mode" value="never"/>
            <param name="list_id" value="16400"/>
        </include>
        <include content="WidgetListCategories" condition="Library.HasContent(movies)">
            <param name="content_path" value="videodb://movies/genres/"/>
            <param name="widget_header" value="$LOCALIZE[135]"/>
            <param name="widget_target" value="videos"/>
            <param name="list_id" value="16500"/>
            <param name="icon" value="$VAR[WidgetGenreIconVar]"/>
            <param name="icon_height" value="70"/>
        </include>
        <include content="WidgetListPoster" condition="Library.HasContent(movies)">
            <param name="content_path" value="videodb://movies/sets/"/>
            <param name="widget_header" value="$LOCALIZE[31075]"/>
            <param name="widget_target" value="videos"/>
            <param name="sortby" value="random"/>
            <param name="list_id" value="16600"/>
            <param name="onclick_condition" value="true"/>
            <param name="onclick_action" value="$VAR[MovieSetOnClickActionVar]"/>
        </include>
    </control>
    <include content="ImageWidget" condition="!Library.HasContent(movies)">
        <param name="text_label" value="$LOCALIZE[31104]" />
        <param name="button_label" value="$LOCALIZE[31110]" />
        <param name="button_onclick" value="ActivateWindow(videos,files,return)"/>
        <param name="button_id" value="16500"/>
        <param name="button2_onclick" value="Skin.SetBool(HomeMenuNoMovieButton)"/>
    </include>
    <include content="WidgetScrollbar" condition="Skin.HasSetting(touchmode)">
        <param name="scrollbar_id" value="16010"/>
    </include>
</control>




RE: Wondering Why Navigation Isn’t Working - Hitcher - 2023-12-31

You haven't correctly identified the menu id as being a number so Kodi thinks it's a string id instead.

<property name="menu_id">16000</property>

Should be:

<property name="menu_id">$NUMBER[16000]</property>


RE: Wondering Why Navigation Isn’t Working - CadmarLegend - 2023-12-31

Thank you so very much! I was quite at my wit’s end.


Wondering Why Navigation Isn’t Working - Hitcher - 2023-12-31

Thread marked solved.