diff --git a/src/driver/fontrenderer.cpp b/src/driver/fontrenderer.cpp index b92accfa7..28e62a17b 100644 --- a/src/driver/fontrenderer.cpp +++ b/src/driver/fontrenderer.cpp @@ -372,7 +372,7 @@ void Font::RenderString(int x, int y, const int width, const char *text, const u if (!frameBuffer->getActive()) return; - frameBuffer->checkFbArea(x, y, width, height, true); + frameBuffer->checkFbArea(x, y-height, width, height, true); pthread_mutex_lock( &renderer->render_mutex ); @@ -622,7 +622,7 @@ void Font::RenderString(int x, int y, const int width, const char *text, const u } //printf("RenderStat: %d %d %d \n", renderer->cacheManager->num_nodes, renderer->cacheManager->num_bytes, renderer->cacheManager->max_bytes); pthread_mutex_unlock( &renderer->render_mutex ); - frameBuffer->checkFbArea(x, y, width, height, false); + frameBuffer->checkFbArea(x, y-height, width, height, false); } void Font::RenderString(int x, int y, const int width, const std::string & text, const unsigned char color, const int boxheight, const bool utf8_encoded) diff --git a/src/gui/audiomute.cpp b/src/gui/audiomute.cpp index 97a383bd2..f5309230e 100644 --- a/src/gui/audiomute.cpp +++ b/src/gui/audiomute.cpp @@ -92,11 +92,18 @@ void CAudioMute::AudioMute(int newValue, bool isEvent) if (doInit) CVolumeHelper::getInstance()->refresh(); } + else if (neutrino->getMode() == CNeutrinoApp::mode_audio) { + if (newValue) + frameBuffer->setFbArea(CFrameBuffer::FB_PAINTAREA_MUTEICON1, x, y, width, height); + else + frameBuffer->setFbArea(CFrameBuffer::FB_PAINTAREA_MUTEICON1); + } } void CAudioMute::enableMuteIcon(bool enable) { CNeutrinoApp *neutrino = CNeutrinoApp::getInstance(); + frameBuffer->fbNoCheck(true); if (enable) { frameBuffer->doPaintMuteIcon(true); do_paint_mute_icon = true; @@ -109,4 +116,5 @@ void CAudioMute::enableMuteIcon(bool enable) frameBuffer->doPaintMuteIcon(false); do_paint_mute_icon = false; } + frameBuffer->fbNoCheck(false); } diff --git a/src/gui/movieplayer.cpp b/src/gui/movieplayer.cpp index b9d04a81c..2a78bc7a4 100644 --- a/src/gui/movieplayer.cpp +++ b/src/gui/movieplayer.cpp @@ -359,6 +359,7 @@ bool CMoviePlayerGui::SelectFile() menu_ret = moviebrowser->getMenuRet(); } else { // filebrowser + CAudioMute::getInstance()->enableMuteIcon(false); if (filebrowser->exec(Path_local.c_str()) == true) { Path_local = filebrowser->getCurrentDir(); CFile *file; @@ -394,6 +395,7 @@ bool CMoviePlayerGui::SelectFile() } } else menu_ret = filebrowser->getMenuRet(); + CAudioMute::getInstance()->enableMuteIcon(true); } if(ret && file_name.empty()) { std::string::size_type pos = full_name.find_last_of('/'); diff --git a/src/neutrino.cpp b/src/neutrino.cpp index 20bfdebd6..acecfe9bc 100644 --- a/src/neutrino.cpp +++ b/src/neutrino.cpp @@ -2371,10 +2371,14 @@ _show: //_show: if(msg == CRCInput::RC_ok) { + if (g_settings.channellist_new_zap_mode > 0) /* allow or active */ + g_audioMute->enableMuteIcon(false); if( !bouquetList->Bouquets.empty() && bouquetList->Bouquets[old_b]->channelList->getSize() > 0) nNewChannel = bouquetList->Bouquets[old_b]->channelList->exec();//with ZAP! else nNewChannel = bouquetList->exec(true); + if (g_settings.channellist_new_zap_mode > 0) /* allow or active */ + g_audioMute->enableMuteIcon(true); } else if(msg == CRCInput::RC_sat) { SetChannelMode(LIST_MODE_SAT); nNewChannel = bouquetList->exec(true);