summaryrefslogtreecommitdiff
path: root/displayvolume.c
diff options
context:
space:
mode:
Diffstat (limited to 'displayvolume.c')
-rw-r--r--displayvolume.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/displayvolume.c b/displayvolume.c
index 4271fac..78c6e83 100644
--- a/displayvolume.c
+++ b/displayvolume.c
@@ -129,6 +129,8 @@ tColor cNopacityDisplayVolume::DrawProgressbarBackground(int left, int top, int
}
void cNopacityDisplayVolume::Flush(void) {
+ if (Running())
+ return;
if (initial)
if (FadeTime)
Start();
@@ -137,18 +139,22 @@ void cNopacityDisplayVolume::Flush(void) {
}
void cNopacityDisplayVolume::Action(void) {
+ uint64_t First = cTimeMs::Now();
+ cPixmap::Lock();
+ cPixmap::Unlock();
uint64_t Start = cTimeMs::Now();
+ dsyslog ("skinnopacity: First Lock(): %lims \n", Start - First);
while (Running()) {
uint64_t Now = cTimeMs::Now();
- cPixmap::Lock();
double t = std::min(double(Now - Start) / FadeTime, 1.0);
int Alpha = t * ALPHA_OPAQUE;
+ cPixmap::Lock();
pixmapBackground->SetAlpha(Alpha);
pixmapProgressBar->SetAlpha(Alpha);
pixmapLabel->SetAlpha(Alpha);
- cPixmap::Unlock();
if (Running())
osd->Flush();
+ cPixmap::Unlock();
int Delta = cTimeMs::Now() - Now;
if (Running() && (Delta < FrameTime))
cCondWait::SleepMs(FrameTime - Delta);