1
0
mirror of https://github.com/VDR4Arch/vdr.git synced 2023-10-10 13:36:52 +02:00

Changed several calls to Skins.Message() in vdr.c to Skins.QueueMessage() in order to avoid a black screen while such a message is displayed in case the channel will be switched

This commit is contained in:
Klaus Schmidinger 2013-01-29 11:31:12 +01:00
parent 0364b026cf
commit 573cf3fc8b
2 changed files with 13 additions and 10 deletions

View File

@ -7534,7 +7534,7 @@ Video Disk Recorder Revision History
- Reduced the number of retries in cTransfer::Receive() to avoid blocking recordings - Reduced the number of retries in cTransfer::Receive() to avoid blocking recordings
in case the primary device can't handle the current live signal. in case the primary device can't handle the current live signal.
2013-01-27: Version 1.7.37 2013-01-29: Version 1.7.37
- Now also using FindHeader() in cMpeg2Fixer::AdjTref() (pointed out by Sören Moch). - Now also using FindHeader() in cMpeg2Fixer::AdjTref() (pointed out by Sören Moch).
- Added missing template for DVBDIR to Make.config.template (reported by Derek Kelly). - Added missing template for DVBDIR to Make.config.template (reported by Derek Kelly).
@ -7553,3 +7553,6 @@ Video Disk Recorder Revision History
- Fixed possible audio chatter when a recording is replayed to its very end. - Fixed possible audio chatter when a recording is replayed to its very end.
- Added dependency on 'i18n' to 'install-i18n' in the VDR Makefile (thanks to Tobias - Added dependency on 'i18n' to 'install-i18n' in the VDR Makefile (thanks to Tobias
Grimm). Grimm).
- Changed several calls to Skins.Message() in vdr.c to Skins.QueueMessage() in order to
avoid a black screen while such a message is displayed in case the channel will be
switched (reported by Uwe Scheffler).

18
vdr.c
View File

@ -22,7 +22,7 @@
* *
* The project's page is at http://www.tvdr.de * The project's page is at http://www.tvdr.de
* *
* $Id: vdr.c 2.45 2012/12/06 10:29:23 kls Exp $ * $Id: vdr.c 2.46 2013/01/29 11:17:45 kls Exp $
*/ */
#include <getopt.h> #include <getopt.h>
@ -924,7 +924,7 @@ int main(int argc, char *argv[])
Device->SetOccupied(TIMERDEVICETIMEOUT); Device->SetOccupied(TIMERDEVICETIMEOUT);
} }
if (cDevice::PrimaryDevice()->HasDecoder() && HadProgramme && !cDevice::PrimaryDevice()->HasProgramme()) if (cDevice::PrimaryDevice()->HasDecoder() && HadProgramme && !cDevice::PrimaryDevice()->HasProgramme())
Skins.Message(mtInfo, tr("Upcoming recording!")); // the previous SwitchChannel() has switched away the current live channel Skins.QueueMessage(mtInfo, tr("Upcoming recording!")); // the previous SwitchChannel() has switched away the current live channel
} }
} }
} }
@ -1095,7 +1095,7 @@ int main(int argc, char *argv[])
if (Setup.PauseKeyHandling) { if (Setup.PauseKeyHandling) {
if (Setup.PauseKeyHandling > 1 || Interface->Confirm(tr("Pause live video?"))) { if (Setup.PauseKeyHandling > 1 || Interface->Confirm(tr("Pause live video?"))) {
if (!cRecordControls::PauseLiveVideo()) if (!cRecordControls::PauseLiveVideo())
Skins.Message(mtError, tr("No free DVB device to record!")); Skins.QueueMessage(mtError, tr("No free DVB device to record!"));
} }
} }
key = kNone; // nobody else needs to see this key key = kNone; // nobody else needs to see this key
@ -1105,7 +1105,7 @@ int main(int argc, char *argv[])
case kRecord: case kRecord:
if (!cControl::Control()) { if (!cControl::Control()) {
if (cRecordControls::Start()) if (cRecordControls::Start())
Skins.Message(mtInfo, tr("Recording started")); Skins.QueueMessage(mtInfo, tr("Recording started"));
key = kNone; // nobody else needs to see this key key = kNone; // nobody else needs to see this key
} }
break; break;
@ -1157,11 +1157,11 @@ int main(int argc, char *argv[])
switch (state) { switch (state) {
case osPause: DELETE_MENU; case osPause: DELETE_MENU;
if (!cRecordControls::PauseLiveVideo()) if (!cRecordControls::PauseLiveVideo())
Skins.Message(mtError, tr("No free DVB device to record!")); Skins.QueueMessage(mtError, tr("No free DVB device to record!"));
break; break;
case osRecord: DELETE_MENU; case osRecord: DELETE_MENU;
if (cRecordControls::Start()) if (cRecordControls::Start())
Skins.Message(mtInfo, tr("Recording started")); Skins.QueueMessage(mtInfo, tr("Recording started"));
break; break;
case osRecordings: case osRecordings:
DELETE_MENU; DELETE_MENU;
@ -1179,7 +1179,7 @@ int main(int argc, char *argv[])
case osSwitchDvb: case osSwitchDvb:
DELETE_MENU; DELETE_MENU;
cControl::Shutdown(); cControl::Shutdown();
Skins.Message(mtInfo, tr("Switching primary DVB...")); Skins.QueueMessage(mtInfo, tr("Switching primary DVB..."));
cDevice::SetPrimaryDevice(Setup.PrimaryDVB); cDevice::SetPrimaryDevice(Setup.PrimaryDVB);
break; break;
case osPlugin: DELETE_MENU; case osPlugin: DELETE_MENU;
@ -1249,9 +1249,9 @@ int main(int argc, char *argv[])
EITScanner.Process(); EITScanner.Process();
if (!cCutter::Active() && cCutter::Ended()) { if (!cCutter::Active() && cCutter::Ended()) {
if (cCutter::Error()) if (cCutter::Error())
Skins.Message(mtError, tr("Editing process failed!")); Skins.QueueMessage(mtError, tr("Editing process failed!"));
else else
Skins.Message(mtInfo, tr("Editing process finished")); Skins.QueueMessage(mtInfo, tr("Editing process finished"));
} }
} }