File 0001-Fixed-disappearing-symbols-in-channel-info-osd-if-si.patch of Package vdr-plugin-skinenigmang

From aae9aadc381d4f67326a25c80214c2b7ef04e10a Mon Sep 17 00:00:00 2001
From: Andreas Mair <amair.sob@googlemail.com>
Date: Mon, 30 Apr 2012 20:06:58 +0200
Subject: [PATCH 01/19] Fixed disappearing symbols in channel info osd if
 signal strength and quality are shown.

---
 enigma.c | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

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;
 
-- 
2.20.1

openSUSE Build Service is sponsored by