equal
deleted
inserted
replaced
73 StopActivityMonitoring( iActivityManagerScreensaver ); |
73 StopActivityMonitoring( iActivityManagerScreensaver ); |
74 StopActivityMonitoring( iActivityManagerScreensaverShort ); |
74 StopActivityMonitoring( iActivityManagerScreensaverShort ); |
75 DisableSharedDataAndMonitor(); |
75 DisableSharedDataAndMonitor(); |
76 delete iIndicatorArray; |
76 delete iIndicatorArray; |
77 KillTimer( iPreviewTimer ); |
77 KillTimer( iPreviewTimer ); |
|
78 KillTimer( iExpiryTimer ); |
78 iAknUiServer.Close(); |
79 iAknUiServer.Close(); |
79 } |
80 } |
80 |
81 |
81 // ----------------------------------------------------------------------------- |
82 // ----------------------------------------------------------------------------- |
82 // CScreensaverEngine::SharedDataInterface |
83 // CScreensaverEngine::SharedDataInterface |
151 iAknUiServer.ConnectAndSendAppsKeySuppress(ETrue); |
152 iAknUiServer.ConnectAndSendAppsKeySuppress(ETrue); |
152 iScreenSaverIsOn = ETrue; |
153 iScreenSaverIsOn = ETrue; |
153 |
154 |
154 // Report whether started from Idle BEFORE bringing to foreground |
155 // Report whether started from Idle BEFORE bringing to foreground |
155 iSharedDataI->SetSSStartedFromIdleStatus(); |
156 iSharedDataI->SetSSStartedFromIdleStatus(); |
|
157 |
|
158 iSharedDataI->SetSSForcedLightsOn(1); |
156 |
159 |
157 ScreensaverUtility::BringToForeground(); |
160 ScreensaverUtility::BringToForeground(); |
158 |
161 |
159 SCRLOGGER_WRITE("Model: SS is displaying (BringToForeground)"); |
162 SCRLOGGER_WRITE("Model: SS is displaying (BringToForeground)"); |
160 |
163 |
192 // Indicate we've stopped |
195 // Indicate we've stopped |
193 iSharedDataI->SetScreensaverStatus( EFalse ); |
196 iSharedDataI->SetScreensaverStatus( EFalse ); |
194 |
197 |
195 iScreenSaverIsOn = EFalse ; |
198 iScreenSaverIsOn = EFalse ; |
196 |
199 |
|
200 KillTimer( iExpiryTimer ); |
|
201 |
197 View()->HideDisplayObject(); |
202 View()->HideDisplayObject(); |
198 } |
203 } |
199 |
204 |
200 |
205 |
201 if( iScreenSaverIsPreviewing ) |
206 if( iScreenSaverIsPreviewing ) |
257 { |
262 { |
258 View()->SetDisplayObject( EDisplayPlugin ); |
263 View()->SetDisplayObject( EDisplayPlugin ); |
259 } |
264 } |
260 |
265 |
261 UpdateIndicatorAttributes(); |
266 UpdateIndicatorAttributes(); |
|
267 |
|
268 SetExpiryTimerTimeout( KDefaultScreenSaverTimeout ); |
262 |
269 |
263 View()->ShowDisplayObject(); |
270 View()->ShowDisplayObject(); |
264 |
271 |
265 iSharedDataI->SetScreensaverStatus( ETrue ); |
272 iSharedDataI->SetScreensaverStatus( ETrue ); |
266 } |
273 } |
457 // } |
464 // } |
458 } |
465 } |
459 |
466 |
460 |
467 |
461 // ----------------------------------------------------------------------------- |
468 // ----------------------------------------------------------------------------- |
|
469 // Start screensaver expiry timer. When the timer expires the screensaver will |
|
470 // be stopped and hided. |
|
471 // ----------------------------------------------------------------------------- |
|
472 // |
|
473 void CScreensaverEngine::SetExpiryTimerTimeout( TInt aTimeout ) |
|
474 { |
|
475 SCRLOGGER_WRITEF( _L( "SCR:CScreensaverEngine::SetExpiryTimerTimeout(%d) start" ), aTimeout ); |
|
476 KillTimer( iExpiryTimer ); |
|
477 |
|
478 if ( 0 < aTimeout ) |
|
479 { |
|
480 TRAP_IGNORE( |
|
481 iExpiryTimer = CPeriodic::NewL( CActive::EPriorityStandard ); |
|
482 iExpiryTimer->Start( aTimeout , aTimeout , |
|
483 TCallBack( HandleExpiryTimerExpiry, this ) ); |
|
484 ) |
|
485 } |
|
486 } |
|
487 |
|
488 |
|
489 // ----------------------------------------------------------------------------- |
462 // CScreensaverEngine::CScreensaverEngine |
490 // CScreensaverEngine::CScreensaverEngine |
463 // ----------------------------------------------------------------------------- |
491 // ----------------------------------------------------------------------------- |
464 // |
492 // |
465 CScreensaverEngine::CScreensaverEngine() |
493 CScreensaverEngine::CScreensaverEngine() |
466 { |
494 { |
683 TInt CScreensaverEngine::HandleInactiveEventL( TAny* aPtr ) |
711 TInt CScreensaverEngine::HandleInactiveEventL( TAny* aPtr ) |
684 { |
712 { |
685 SCRLOGGER_WRITE("HandleInactiveEventL(), starting screensaver"); |
713 SCRLOGGER_WRITE("HandleInactiveEventL(), starting screensaver"); |
686 |
714 |
687 CScreensaverEngine* _this= STATIC_CAST(CScreensaverEngine*, aPtr); |
715 CScreensaverEngine* _this= STATIC_CAST(CScreensaverEngine*, aPtr); |
688 /* |
716 |
689 // Double-start is OK, it will be checked in StartScreenSaver() |
717 // Double-start is OK, it will be checked in StartScreenSaver() |
|
718 // This will be trigged by keylock activation after keyguard |
|
719 // timeout, or if keylock is disabled |
690 _this->StartScreenSaver( ); |
720 _this->StartScreenSaver( ); |
691 */ |
721 |
692 return KErrNone; |
722 return KErrNone; |
693 } |
723 } |
694 |
724 |
695 // ----------------------------------------------------------------------------- |
725 // ----------------------------------------------------------------------------- |
696 // CScreensaverEngine::HandleActiveEventShortL |
726 // CScreensaverEngine::HandleActiveEventShortL |
710 TInt CScreensaverEngine::HandleInactiveEventShortL( TAny* aPtr ) |
740 TInt CScreensaverEngine::HandleInactiveEventShortL( TAny* aPtr ) |
711 { |
741 { |
712 SCRLOGGER_WRITE("HandleInactiveEventShortL()"); |
742 SCRLOGGER_WRITE("HandleInactiveEventShortL()"); |
713 // Start, if keys are locked and short timeout in use |
743 // Start, if keys are locked and short timeout in use |
714 CScreensaverEngine* _this= STATIC_CAST(CScreensaverEngine*, aPtr); |
744 CScreensaverEngine* _this= STATIC_CAST(CScreensaverEngine*, aPtr); |
|
745 // Restore inactivity timeout if it was reset at keylock activation |
|
746 _this->iActivityManagerScreensaverShort->SetInactivityTimeout(KTimeoutShort); |
715 |
747 |
716 if ( _this->iSharedDataI->IsKeyguardOn() ) |
748 if ( _this->iSharedDataI->IsKeyguardOn() ) |
717 { |
749 { |
718 SCRLOGGER_WRITE("HandleInactiveEventShortL() starting saver"); |
750 SCRLOGGER_WRITE("HandleInactiveEventShortL() starting saver"); |
719 _this->StartScreenSaver( ); |
751 _this->StartScreenSaver( ); |
737 control->View()->ShowDisplayObject(); |
769 control->View()->ShowDisplayObject(); |
738 |
770 |
739 return KErrNone; |
771 return KErrNone; |
740 } |
772 } |
741 |
773 |
|
774 // --------------------------------------------------------------------------- |
|
775 // CScreensaverEngine::HandleKeyguardStateChanged |
|
776 // --------------------------------------------------------------------------- |
|
777 // |
|
778 void CScreensaverEngine::HandleKeyguardStateChanged( TBool aEnabled ) |
|
779 { |
|
780 if ( aEnabled ) |
|
781 { |
|
782 // Keyguard switch generates an activity event still, let the inactivity |
|
783 // handler start the screensaver after one second |
|
784 iActivityManagerScreensaverShort->SetInactivityTimeout(1); |
|
785 } |
|
786 else |
|
787 { |
|
788 StopScreenSaver(); |
|
789 } |
|
790 } |
|
791 |
742 // ----------------------------------------------------------------------------- |
792 // ----------------------------------------------------------------------------- |
743 // CScreensaverEngine::View |
793 // CScreensaverEngine::View |
744 // ----------------------------------------------------------------------------- |
794 // ----------------------------------------------------------------------------- |
745 // |
795 // |
746 CScreensaverView* CScreensaverEngine::View() const |
796 CScreensaverView* CScreensaverEngine::View() const |
763 // |
813 // |
764 TInt CScreensaverEngine::DisplayFlag( ) |
814 TInt CScreensaverEngine::DisplayFlag( ) |
765 { |
815 { |
766 return iSharedDataI->IsScreenSaverAllowed(); |
816 return iSharedDataI->IsScreenSaverAllowed(); |
767 } |
817 } |
|
818 |
|
819 |
|
820 // ----------------------------------------------------------------------------- |
|
821 // Handles expire timer timeout |
|
822 // ----------------------------------------------------------------------------- |
|
823 // |
|
824 TInt CScreensaverEngine::HandleExpiryTimerExpiry( TAny* aPtr ) |
|
825 { |
|
826 SCRLOGGER_WRITEF( _L( "SCR:CScreensaverEngine::HandleExpiryTimerExpiry(%d) start" ), aPtr ); |
|
827 CScreensaverEngine *control = STATIC_CAST( CScreensaverEngine*, aPtr ); |
|
828 |
|
829 if ( control ) |
|
830 { |
|
831 control->KillTimer( control->iExpiryTimer ); |
|
832 control->StopScreenSaver(); |
|
833 control->iSharedDataI->SetSSForcedLightsOn( 0 ); |
|
834 } |
|
835 |
|
836 return KErrNone; |
|
837 } |
|
838 |
|
839 |
768 // End of file. |
840 // End of file. |