In recording settings default location settings, LEFT & RIGHT do nothing

Issue #429 resolved
prl created an issue

In MENU>Setup>TV>Recording settings>Default movie location, Timer recording location, and Instant recording location, LEFT and RIGHT are supposed to cycle through choices, but don't.

In Default movie location, the choices that should be cycled through are the list in config.movielist.videodirs.value and the current setting for Default movie location (if it's not already in that list), and in the other two, those entries and some indirect settings like <Default movie location>.

The problem is in Screens.RecordingSettings.RecordingSettings.changedEntry(), which checks changes in the locations, and then calls RecordingSettings.createSetup(), which overwrites the changed location settings with their old values.

I have a fix for this.

Replication steps

From live TV, navigate to MENU>Setup>TV>Recording settings>Timer recording location, and press LEFT several times. The setting should cycle through at least <Default movie location>, <Current movielist location>, <Last timer location>, but it does not change. Similarly for Default movie location and Instant recording location.

Comments (4)

  1. Peter Urbanec

    Fix bug #429: In recording settings default location settings, LEFT & RIGHT do nothing

    Copy the ConfigList variables for the default recording locations into the corresponding config.usage variables in RecordingSettings.changedEntry(), so that the ConfigList variables don't get over-written by the old values of the config.usage variables when RecordingSettings.createSetup() is called.

    Also tidy up all the calls to self["config"].getCurrent() after it is assigned to self.item with the use of self.item and an "a == str1 or a == str2" ... with "a in (str1, str2, ...)".

    → <<cset c22dcc9e5868>>

  2. Peter Urbanec

    Fix bug #429: [Recordings] tidy up multiple calls of self["config"].getCurrent()

    Tidy up other methods with multiple calls to self["config"].getCurrent() to use a local variable.

    → <<cset ae2a846b4367>>

  3. Log in to comment