summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--displaychannel.c7
-rw-r--r--displaychannel.h2
-rw-r--r--displaychannelview.c6
-rw-r--r--displaychannelview.h2
4 files changed, 8 insertions, 9 deletions
diff --git a/displaychannel.c b/displaychannel.c
index e026655..966adc1 100644
--- a/displaychannel.c
+++ b/displaychannel.c
@@ -20,7 +20,7 @@ cNopacityDisplayChannel::cNopacityDisplayChannel(bool WithInfo) : cThread("Displ
channelView = new cNopacityDisplayChannelView(osd);
}
-cNopacityDisplayChannel::~cNopacityDisplayChannel() {
+cNopacityDisplayChannel::~cNopacityDisplayChannel(void) {
if (config.GetValue("channelFadeOutTime")) {
fadeout = true;
Start();
@@ -55,6 +55,7 @@ void cNopacityDisplayChannel::SetChannel(const cChannel *Channel, int Number) {
} else {
ChannelName = ChannelString(NULL, 0);
}
+
channelView->ClearChannelLogo();
channelView->ClearChannelName();
channelView->ClearEPGInfo();
@@ -119,8 +120,8 @@ void cNopacityDisplayChannel::Flush(void) {
channelView->DrawEvents(present, following);
}
- if (config.GetValue("displayPoster"))
- channelView->DrawPoster(present, initial, channelChange);
+ if (config.GetValue("displayPoster") && (initial || channelChange))
+ channelView->DrawPoster(present, initial);
if (!groupSep)
channelView->DrawScreenResolution();
diff --git a/displaychannel.h b/displaychannel.h
index fa3c3ce..f1f95d5 100644
--- a/displaychannel.h
+++ b/displaychannel.h
@@ -24,7 +24,7 @@ private:
void SetProgressBar(const cEvent *present);
public:
cNopacityDisplayChannel(bool WithInfo);
- virtual ~cNopacityDisplayChannel();
+ virtual ~cNopacityDisplayChannel(void);
virtual void SetChannel(const cChannel *Channel, int Number);
virtual void SetEvents(const cEvent *Present, const cEvent *Following);
virtual void SetMessage(eMessageType Type, const char *Text);
diff --git a/displaychannelview.c b/displaychannelview.c
index 34f1727..143f2e1 100644
--- a/displaychannelview.c
+++ b/displaychannelview.c
@@ -32,7 +32,7 @@ cNopacityDisplayChannelView::cNopacityDisplayChannelView(cOsd *osd) {
}
}
-cNopacityDisplayChannelView::~cNopacityDisplayChannelView() {
+cNopacityDisplayChannelView::~cNopacityDisplayChannelView(void) {
osd->DestroyPixmap(pixmapBackground);
osd->DestroyPixmap(pixmapTop);
osd->DestroyPixmap(pixmapLogo);
@@ -570,9 +570,7 @@ void cNopacityDisplayChannelView::ClearStatusIcons(void) {
pixmapStatusIconsBackground->Fill(clrTransparent);
}
-void cNopacityDisplayChannelView::DrawPoster(const cEvent *event, bool initial, bool channelchange) {
- if (!initial && !channelchange)
- return;
+void cNopacityDisplayChannelView::DrawPoster(const cEvent *event, bool initial) {
if (pixmapPoster) {
osd->DestroyPixmap(pixmapPoster);
pixmapPoster = NULL;
diff --git a/displaychannelview.h b/displaychannelview.h
index 2c071ce..ca21ae5 100644
--- a/displaychannelview.h
+++ b/displaychannelview.h
@@ -57,7 +57,7 @@ public:
void DrawStatusIcons(const cChannel *Channel);
void DrawScreenResolution(void);
void ClearStatusIcons(void);
- void DrawPoster(const cEvent *event, bool initial, bool channelchange);
+ void DrawPoster(const cEvent *event, bool initial);
void DrawSignal(void);
void ShowSignalMeter(void);
void HideSignalMeter(void);