When a timer is newly created in the Timers menu, it now immediately appears at the correct position in the list

This commit is contained in:
Klaus Schmidinger 2018-02-10 12:51:19 +01:00
parent 902c83ece3
commit 6b9c5aa1ac
2 changed files with 9 additions and 2 deletions

View File

@ -9266,3 +9266,6 @@ Video Disk Recorder Revision History
button.
- Fixed keeping the cursor position in the Recordings menu in case a timer starts
recording while the menu is open.
- When a timer is newly created in the Timers menu, it now immediately appears at the
correct position in the list, rather than first being added at the end and then
jumping to the proper offset.

8
menu.c
View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: menu.c 4.59 2018/02/10 12:32:52 kls Exp $
* $Id: menu.c 4.60 2018/02/10 12:45:36 kls Exp $
*/
#include "menu.h"
@ -1399,7 +1399,11 @@ eOSState cMenuTimers::ProcessKey(eKeys Key)
if (const cTimer *Timer = cMenuEditTimer::AddedTimer()) {
// a newly created timer was confirmed with Ok and the proper item needs to be added:
LOCK_TIMERS_READ;
Add(new cMenuTimerItem(Timer), true);
cMenuTimerItem *CurrentItem = new cMenuTimerItem(Timer);
Add(CurrentItem, true);
Sort();
SetCurrent(CurrentItem);
SetHelpKeys();
Display();
}
if (Key != kNone)