Bug #4: Green button does not work without menu

Message ID 1121541684.27647.11.camel@localhost.localdomain
State New
Headers

Commit Message

Mikko Salo July 16, 2005, 7:21 p.m. UTC
  > > >>> Pasi Juppo wrote:
> > >>>
> > >>>> VDR: Green button does not work without menu
> > >>>> -When watching TV broadcast it is not possible to view or change the
> > >>>> audio channels without going first to menu
> > >>>>
> > >>>
> > >>> When watching TV broadcasts, the green button is assigned by the
> > >>> keymacros.conf file, only if the main menu is opened, the green key is
> > >>> permanently assigned to the audio channel menu.
> > >>>
> > >>> If you want the green key assigned to the audio menu, add this line to
> > >>> keymacros.conf:
> > >>>
> > >>>   Green     Menu Green
> > >>>
> > >> or:
> > >>    Green   Audio
> > > 
> > > 
> > > Thanks! Works like a charm. One "bug" down - 11 to go :)
> > > 
> > 
> > Actually, this _is_ a bug. IIRC when there are subtitles (by
> > subtitles-plugin) on the screen, I'm unable to go to the Audio menu,
> > neither from Menu->Green or with Audio button.
> > 
> 
> ...and I belive it was fixed in vdr-1.3.27, it works fine now anyway.
> 

My mistake!

Allways should double check what is going to say, it really wasn't in
vanilla vdr, it was this patch that fixed it. :)
  

Patch

diff -Nru vdr-1.3.26-vanilla/vdr.c vdr-1.3.26-osd-fix/vdr.c
--- vdr-1.3.26-vanilla/vdr.c	2005-05-26 13:45:29.000000000 +0300
+++ vdr-1.3.26-osd-fix/vdr.c	2005-06-13 23:11:20.000000000 +0300
@@ -702,7 +702,7 @@ 
                   }
                else
                   cDevice::PrimaryDevice()->SetVolume(NORMALKEY(key) == kVolDn ? -VOLUMEDELTA : VOLUMEDELTA);
-               if (!Menu && !cOsd::IsOpen())
+               if (!Menu /*&& !cOsd::IsOpen()*/)
                   Menu = Temp = cDisplayVolume::Create();
                cDisplayVolume::Process(key);
                key = kNone; // nobody else needs to see these keys
@@ -715,7 +715,7 @@ 
                   DELETENULL(Menu);
                   Temp = NULL;
                   }
-               if (!Menu && !cOsd::IsOpen())
+               if (!Menu /*&& !cOsd::IsOpen()*/)
                   Menu = Temp = cDisplayTracks::Create();
                else
                   cDisplayTracks::Process(key);