summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkamel5 <vdr.kamel5 (at) gmx (dot) net>2019-11-01 11:23:57 +0100
committerkamel5 <vdr.kamel5 (at) gmx (dot) net>2019-11-01 11:31:13 +0100
commit9f7a718a121ce1b69fdb094d1729d2ddad7895e8 (patch)
tree2b83cb653393cbff19c3112f1a9a45fd37063def
parent72f3a54725f0a516ee5d47e3ec60f962c3373797 (diff)
downloadskin-nopacity-9f7a718a121ce1b69fdb094d1729d2ddad7895e8.tar.gz
skin-nopacity-9f7a718a121ce1b69fdb094d1729d2ddad7895e8.tar.bz2
Optimize display poster in displaychannel
-rw-r--r--displaychannel.c2
-rw-r--r--displaychannelview.c4
-rw-r--r--displaychannelview.h2
3 files changed, 5 insertions, 3 deletions
diff --git a/displaychannel.c b/displaychannel.c
index 6849e4f..736327f 100644
--- a/displaychannel.c
+++ b/displaychannel.c
@@ -142,7 +142,7 @@ void cNopacityDisplayChannel::Flush(void) {
}
if (config.GetValue("displayPoster"))
- channelView->DrawPoster(present, initial);
+ channelView->DrawPoster(present, initial, channelChange);
if (!groupSep)
channelView->DrawScreenResolution();
diff --git a/displaychannelview.c b/displaychannelview.c
index 79b1ad9..0556442 100644
--- a/displaychannelview.c
+++ b/displaychannelview.c
@@ -585,7 +585,9 @@ void cNopacityDisplayChannelView::ClearStatusIcons(void) {
pixmapStatusIconsBackground->Fill(clrTransparent);
}
-void cNopacityDisplayChannelView::DrawPoster(const cEvent *event, bool initial) {
+void cNopacityDisplayChannelView::DrawPoster(const cEvent *event, bool initial, bool channelchange) {
+ if (!initial && !channelchange)
+ return;
if (pixmapPoster) {
osd->DestroyPixmap(pixmapPoster);
pixmapPoster = NULL;
diff --git a/displaychannelview.h b/displaychannelview.h
index 8a63bb5..38f2401 100644
--- a/displaychannelview.h
+++ b/displaychannelview.h
@@ -56,7 +56,7 @@ public:
void DrawStatusIcons(const cChannel *Channel);
void DrawScreenResolution(void);
void ClearStatusIcons(void);
- void DrawPoster(const cEvent *event, bool initial);
+ void DrawPoster(const cEvent *event, bool initial, bool channelchange);
void DrawSignalMeter(void);
void DrawSignal(void);
void ShowSignalMeter(void);