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