Converter ServiceName2 Number and %n conversions fallback code uses incorrect bouquet in some contexts

Issue #436 new
prl created an issue

The fallback code for the ServiceName2 Number and %n format codes match the incorrect bouquets when in the Favourites selection (and other similar) screens.

The converters use the value of config.radio.lastroot or config.tv.lastroot to determine what the current bouquet is when they search for a serviceref in the bouquets.

However, config.radio.lastroot or config.tv.lastroot are only set when the ChannelSelection class is created.

This means that the incorrect bouquet is used to search for servicerefs if you use BLUE Favourites and enter another bouquet.

Also, when a new bouquet is selected, and the channel selection screen is entered, the initially highlighted entry has its callback service number calculated from a search of the previous bouquet. This is fixed by navigating to another service and back. Exiting and re-opening the channel selection screen does not fix the incorrect service number.

Replication steps

Add the following to the ChannelSelection skin in either the easy-skin-aus-hd or the Full-Metal-Wizard skin, set MENU>Setup>TV>Channel selection>Alternative numbering mode to "on" and restart the GUI.

        <widget source="ServiceEvent" render="Label" position="50,110" size="60,30" backgroundColor="black" font="Regular;18" foregroundColor="white" transparent="1">
            <convert type="ServiceName2">%n</convert>
        </widget>
        <widget source="ServiceEvent" render="Label" position="110,110" size="60,30" backgroundColor="black" font="Regular;18" foregroundColor="white" transparent="1">
            <convert type="ServiceName2">Number</convert>
        </widget>

Then press FAV and the set the Terrestrial LCN TV bouquet as the current bouquet by going to FAV, BLUE Favourites, navigate to Terrestrial LCN TV, OK, then OK on any service.

Ignore the service number initially displayed by the ServiceName2 fields. As you navigate up/down,

Then press FAV and select any bouquet other than the Terrestrial LCN TV bouquet as the current bouquet by going to FAV, navigate to another bouquet, BLUE Favourites, OK, then OK on any service.

Enter the Favourites selection and view the Terrestrial LCN TV bouquet going to FAV, BLUE Favourites, navigate to Terrestrial LCN TV, OK. Now navigating up/down in the favourites list no longer numbers the entries sequentially.

Navigate to any service where the displayed ServiceName2 fields are out of order, and select it with OK.

Then use FAV to re-enter the channel list. The service number displayed in the ServiceName2 fields remains out of sequence. Press UP, DOWN, and the correct sequence number is now displayed.

Comments (0)

  1. Log in to comment