diff options
| -rw-r--r-- | HISTORY | 6 | ||||
| -rw-r--r-- | menu.c | 10 | 
2 files changed, 11 insertions, 5 deletions
| @@ -7330,3 +7330,9 @@ Video Disk Recorder Revision History      a recording when actually cutting the recording    + not doing anything if the editing marks in place would result in the edited      version being the same as the original recording +- Editing marks can now be placed directly on top of each other, in which case they +  simply mark a position, but have no effect on the actual cutting process. +- When positioned at an offset where two (or more) editing marks are placed on top +  of each other, the '4' key moves the first one of them to the left, while the '6' +  key moves the last one of them to the right. The '7' and '9' key handle multiple +  marks at the same place as if it were one single mark. @@ -4,7 +4,7 @@   * See the main source file 'vdr.c' for copyright information and   * how to reach the author.   * - * $Id: menu.c 2.63 2012/11/13 11:23:25 kls Exp $ + * $Id: menu.c 2.64 2012/11/18 13:00:33 kls Exp $   */  #include "menu.h" @@ -4771,12 +4771,12 @@ void cReplayControl::MarkMove(bool Forward)          int p = SkipFrames(Forward ? 1 : -1);          cMark *m2;          if (Forward) { -           if ((m2 = marks.Next(m)) != NULL && m2->Position() <= p) -              return; +           while ((m2 = marks.Next(m)) != NULL && m2->Position() == m->Position()) +                 m = m2;             }          else { -           if ((m2 = marks.Prev(m)) != NULL && m2->Position() >= p) -              return; +           while ((m2 = marks.Prev(m)) != NULL && m2->Position() == m->Position()) +                 m = m2;             }          m->SetPosition(p);          Goto(m->Position(), true); | 
