Martin Gansser b0159df
commit aae9aadc381d4f67326a25c80214c2b7ef04e10a
Martin Gansser b0159df
Author: Andreas Mair <amair.sob@googlemail.com>
Martin Gansser b0159df
Date:   Mon Apr 30 20:06:58 2012 +0200
Martin Gansser b0159df
Martin Gansser b0159df
    Fixed disappearing symbols in channel info osd if signal strength and quality are shown.
Martin Gansser b0159df
Martin Gansser b0159df
diff --git a/enigma.c b/enigma.c
Martin Gansser b0159df
index 826d671..97827de 100644
Martin Gansser b0159df
--- a/enigma.c
Martin Gansser b0159df
+++ b/enigma.c
Martin Gansser b0159df
@@ -335,7 +335,6 @@ cSkinEnigmaDisplayChannel::cSkinEnigmaDisplayChannel(bool WithInfo)
Martin Gansser b0159df
   fShowLogo = EnigmaConfig.showLogo;
Martin Gansser b0159df
   xFirstSymbol = 0;
Martin Gansser b0159df
 #ifndef DISABLE_SIGNALINFO
Martin Gansser b0159df
-  xSignalBarLeft = EnigmaConfig.showSignalInfo ? 0 : -1;
Martin Gansser b0159df
   nStrBarWidth = 10000;
Martin Gansser b0159df
   nSnrBarWidth = 10000;
Martin Gansser b0159df
 #if VDRVERSNUM < 10719
Martin Gansser b0159df
@@ -403,6 +402,9 @@ cSkinEnigmaDisplayChannel::cSkinEnigmaDisplayChannel(bool WithInfo)
Martin Gansser b0159df
   cString date = DayDateTime();
Martin Gansser b0159df
   int w = pFontDate->Width(date);
Martin Gansser b0159df
   xDateLeft = xTitleRight - xIndent - w - SmallGap;
Martin Gansser b0159df
+#ifndef DISABLE_SIGNALINFO
Martin Gansser b0159df
+  xSignalBarLeft = EnigmaConfig.showSignalInfo ? (xBottomRight - xIndent - MIN_CI_SIGNALBAR) : -1;
Martin Gansser b0159df
+#endif
Martin Gansser b0159df
 
Martin Gansser b0159df
   // create osd
Martin Gansser b0159df
   osd = cOsdProvider::NewOsd(OsdSize.x, OsdSize.y + (Setup.ChannelInfoPos ? 0 : (OsdSize.h - yBottomBottom)) );
Martin Gansser b0159df
@@ -553,7 +555,6 @@ void cSkinEnigmaDisplayChannel::DrawSymbols(const cChannel *Channel)
Martin Gansser b0159df
   int ys = yBottomTop + (yBottomBottom - yBottomTop - SymbolHeight) / 2;
Martin Gansser b0159df
 
Martin Gansser b0159df
 #ifndef DISABLE_SIGNALINFO
Martin Gansser b0159df
-  UpdateSignal();
Martin Gansser b0159df
   if (xSignalBarLeft >= 0)
Martin Gansser b0159df
     xs = xSignalBarLeft - Gap;
Martin Gansser b0159df
 #endif //DISABLE_SIGNALINFO
Martin Gansser b0159df
@@ -697,23 +698,18 @@ int cSkinEnigmaDisplayChannel::GetSignal(int &str, int &snr, fe_status_t & /* st
Martin Gansser b0159df
 }
Martin Gansser b0159df
 
Martin Gansser b0159df
 void cSkinEnigmaDisplayChannel::UpdateSignal() {
Martin Gansser b0159df
-  if (xSignalBarLeft < 0)
Martin Gansser b0159df
+  if (xSignalBarLeft <= 0)
Martin Gansser b0159df
     return;
Martin Gansser b0159df
 
Martin Gansser b0159df
   int str = -1;
Martin Gansser b0159df
   int snr = -1;
Martin Gansser b0159df
   fe_status_t status;
Martin Gansser b0159df
   if (GetSignal(str, snr, status) < 0)
Martin Gansser b0159df
-  {
Martin Gansser b0159df
-    xSignalBarLeft = -1;
Martin Gansser b0159df
     return;
Martin Gansser b0159df
-  }
Martin Gansser b0159df
 
Martin Gansser b0159df
   if (snr < 0 && str < 0)
Martin Gansser b0159df
     return;
Martin Gansser b0159df
 
Martin Gansser b0159df
-  xSignalBarLeft = xBottomRight - xIndent - MIN_CI_SIGNALBAR;
Martin Gansser b0159df
-
Martin Gansser b0159df
   int bw = MIN_CI_SIGNALBAR; //45;
Martin Gansser b0159df
   int xSignalBarRight = xSignalBarLeft + bw;
Martin Gansser b0159df