From 0c1581b1a14d74f9d15bff079a5bf50138b6f3f3 Mon Sep 17 00:00:00 2001 From: vanhofen Date: Thu, 30 Nov 2017 23:22:53 +0100 Subject: [PATCH] infoicons: don't hide already hidden icons; ... this fixes wholes in radiotext gui Origin commit data ------------------ Commit: https://github.com/neutrino-images/ni-neutrino/commit/28fad372308126da57f33a59243e5874de7ebfab Author: vanhofen Date: 2017-11-30 (Thu, 30 Nov 2017) Origin message was: ------------------ - infoicons: don't hide already hidden icons; ... this fixes wholes in radiotext gui --- src/gui/infoicons.cpp | 8 +++++++- src/gui/infoicons.h | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/gui/infoicons.cpp b/src/gui/infoicons.cpp index a8191b1d3..2024d1fdb 100644 --- a/src/gui/infoicons.cpp +++ b/src/gui/infoicons.cpp @@ -78,6 +78,7 @@ CInfoIcons::CInfoIcons() thrTimer = 0; status = false; + is_painted = false; Init(); } @@ -242,11 +243,16 @@ void CInfoIcons::paintIcons(bool first) startx += icon[i].sizeW; } } + is_painted = true; } void CInfoIcons::hideIcons() { - frameBuffer->paintBackgroundBoxRel(x, y, width + OFFSET_SHADOW, height + OFFSET_SHADOW); + if (is_painted) + { + frameBuffer->paintBackgroundBoxRel(x, y, width + OFFSET_SHADOW, height + OFFSET_SHADOW); + is_painted = false; + } } void* CInfoIcons::TimerProc(void *arg) diff --git a/src/gui/infoicons.h b/src/gui/infoicons.h index 849ea57c0..51311ac7f 100644 --- a/src/gui/infoicons.h +++ b/src/gui/infoicons.h @@ -48,7 +48,7 @@ class CInfoIcons pthread_t thrTimer; int x, y, width, height, offset; int start_i, m_entries, popup; - bool status; + bool status, is_painted; static void CleanUpProc(void* arg); static void* TimerProc(void *arg);