Skip to content

Channel Selection

xcentaurix edited this page Nov 11, 2026 · 1 revision

Channel selection

The channel selection of the skin is a carousel: the channels are tiles in a row, and a row of genres above them says which channels you see.

The channel selection: the genres above, the channels as tiles, what is on below

What you see

From top to bottom:

  • The genres. All and then the categories of the bouquet, for example Action & Drama, Comedy or Kids. The selected one is the light chip.
  • The channels. Nine tiles in a row. The selected one is in the middle, light and a bit larger. A tile has the logo, the name of the channel, what is on now with a progress bar, and what is on next. The arrows at the left and the right say that the row goes on.
  • The selected channel. The title, the time and the description of the programme that is on now.
  • The colour keys at the bottom switch between all channels, satellites, providers and favourites, as in the normal channel list.

Genres

The genres are the markers of the bouquet: the category names that a bouquet of the Cockpit plugins (Rakuten TV, Samsung TV and others) has before the channels of the category.

  • All shows every channel of the bouquet. The category names are tiles between the channels, as headings (Action & Drama in the picture). The cursor jumps over them, so it only stops on channels.
  • A genre shows only the channels of that category. The headings are gone, the genre is the chip.
  • A bouquet without markers has only All.

Keys

Key What it does
LEFT / RIGHT, UP / DOWN the previous / next channel (up and down are the same as left and right)
PREVIOUS / NEXT (also BACK / FORWARD) the previous / next genre. After the last genre comes All, and before All the last genre
OK tunes the selected channel
CHANNEL UP / CHANNEL DOWN the next / previous bouquet
EXIT closes the channel selection

The channel list wraps around: to the left of the first channel is the last one.

It remembers

The channel selection keeps the last genre and channel of every bouquet. When you open it again, or come back to a bouquet, it has the genre that you left and the channel that was selected. The channel that is playing is only the start, if the bouquet has not been used yet. If a channel is not in the genre any more, the genre shows its first channel; if the genre is gone, it shows All.

It is stored when the channel selection is closed and when you switch to another bouquet, in /etc/enigma2/MaterialSkinCockpit/lastselection.json. Delete the file to start again.

Status and limits

The carousel is a prototype. It is drawn by the skin from a list in Python (PyServiceList.py), not by the list of enigma2, and it is off by default. To switch it on, set

config.plugins.materialskincockpit.python_servicelist=true

in /etc/enigma2/settings while enigma2 is stopped. There is no setup screen for it yet.

  • The description under the channels does not scroll: a long text is cut after about six lines.
  • The lists that are not horizontal, for example the radio channel list, are not carousels and show the markers as headings in the list, as before.
  • The next and previous channel of the infobar (channel up and down while watching) go through all channels of the bouquet, not only those of the genre.

For developers

  • The skin part is screenpart_ChannelSelectionCarouselBody.ymlinc in src/skin/default/: the widgets genrelist and list, the chevrons and the event block. The tile is the template of the list widget, a Python dictionary like the one of the TemplatedMultiContent converter.
  • PyServiceList.py has the list (PyServiceList), the genre list (PyGenreBar), the genre filter and the file of the last selection. Screens.ChannelSelection uses it through the same methods as the list of enigma2.
  • The carousel itself is a feature of the listbox of this enigma2 (carousel, carouselZoom, ...), see doc/LISTBOXES.md there.

Clone this wiki locally