author | zecke <zecke> | 2004-09-21 00:40:38 (UTC) |
---|---|---|
committer | zecke <zecke> | 2004-09-21 00:40:38 (UTC) |
commit | 97e20b7cc746d5e2822385fc815739853a9c6e2f (patch) (side-by-side diff) | |
tree | 8c72e5148518cd7b11be4ccce3d9e9f9c4c541d5 /libopie2/opiecore/device/odevice_simpad.cpp | |
parent | ee21a12cded5c53f196a5183f39e8069a22ef835 (diff) | |
download | opie-97e20b7cc746d5e2822385fc815739853a9c6e2f.zip opie-97e20b7cc746d5e2822385fc815739853a9c6e2f.tar.gz opie-97e20b7cc746d5e2822385fc815739853a9c6e2f.tar.bz2 |
If sound is not yet finished return and do not try to play
it again.
if(!snd.isFinished())
return;
Diffstat (limited to 'libopie2/opiecore/device/odevice_simpad.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | libopie2/opiecore/device/odevice_simpad.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/libopie2/opiecore/device/odevice_simpad.cpp b/libopie2/opiecore/device/odevice_simpad.cpp index fd46b95..34876da 100644 --- a/libopie2/opiecore/device/odevice_simpad.cpp +++ b/libopie2/opiecore/device/odevice_simpad.cpp @@ -298,48 +298,50 @@ bool SIMpad::setLedState ( OLed l, OLedState st ) return false; } bool SIMpad::filter ( int /*unicode*/, int /*keycode*/, int /*modifiers*/, bool /*isPress*/, bool /*autoRepeat*/ ) { //TODO return false; } void SIMpad::timerEvent ( QTimerEvent * ) { killTimer ( m_power_timer ); m_power_timer = 0; QWSServer::sendKeyEvent ( -1, HardKey_Backlight, 0, true, false ); QWSServer::sendKeyEvent ( -1, HardKey_Backlight, 0, false, false ); } void SIMpad::playAlarmSound() { #ifndef QT_NO_SOUND static Sound snd ( "alarm" ); + if(!snd.isFinished()) + return; /* save as the Sound is static! */ changeMixerForAlarm( 0, "/dev/sound/mixer" , &snd); snd. play(); #endif } bool SIMpad::suspend() // Must override because SIMpad does NOT have apm { qDebug( "ODevice for SIMpad: suspend()" ); if ( !isQWS( ) ) // only qwsserver is allowed to suspend return false; /* * we need to save the screen content * then go to suspend using ODevice::suspend * and finally restore the screen content */ (void)::system( "cat /dev/fb/0 > /tmp/.buffer" ); bool res = ODevice::suspend(); /* * restore |