src/screensaverengine.cpp
branchRCL_3
changeset 17 d8eca2b0590d
parent 15 0bfd55b8504e
child 18 2e08ef6b6eda
--- a/src/screensaverengine.cpp	Tue Apr 27 16:38:49 2010 +0300
+++ b/src/screensaverengine.cpp	Tue May 11 16:14:23 2010 +0300
@@ -23,6 +23,7 @@
 #include <Profile.hrh>
 #include <screensaver.rsg>
 #include <AknUtils.h>
+#include <activitymanager.h>
 
 #include "screensaverengine.h"
 #include "screensaverctrlmovingtext.h"
@@ -31,8 +32,6 @@
 #include "screensaverappui.h"
 #include "ScreensaverUtils.h"
 #include "screensaverutility.h"
-#include "screensaveractivitymanager.h"
-
 
 // Minimum plugin suspension time
 const TInt KMinPluginSuspensionTime = 500000; // 0.5 sec
@@ -43,7 +42,6 @@
 const TInt KNoPreview = 0;
 
 const TInt KPreviewTimeout = 10000000; // 10 sec
-const TInt KIgnoreActivityTimeout = 500000; // 0.5 sec
 
 const TText KSilentProfileInd= KPuaCodeSilentSymbol;
 const TText KSilentVibraInd= KPuaCodeAprofSilentVibra;
@@ -77,7 +75,6 @@
     delete iIndicatorArray;
     KillTimer( iPreviewTimer );
     KillTimer( iExpiryTimer );
-    KillTimer( iIgnoreActivityResetTimer );
     iAknUiServer.Close();
     }
 
@@ -228,7 +225,6 @@
 void CScreensaverEngine::StartPreviewModeL( )
     {
     SCRLOGGER_WRITEF(_L("SCR: Inside CScreensaverEngine::StartPreviewModeL()") );
-    iActivityManagerScreensaverShort->SetInactivityTimeout(0);
     
     iScreenSaverIsPreviewing = ETrue;
     // Change the display object into what's being previewed
@@ -563,14 +559,14 @@
 
     // Start monitoring activity for screensaver
     iActivityManagerScreensaver
-        = CScreensaverActivityManager::NewL( CActive::EPriorityStandard );
+        = CUserActivityManager::NewL( CActive::EPriorityStandard );
         iActivityManagerScreensaver->Start( Timeout(), 
             TCallBack( HandleInactiveEventL,this ),
             TCallBack( HandleActiveEventL, this ) );
 
     // Start monitoring activity for screensaver, short timeout
     iActivityManagerScreensaverShort
-        = CScreensaverActivityManager::NewL( CActive::EPriorityUserInput );
+        = CUserActivityManager::NewL( CActive::EPriorityUserInput );
     
         iActivityManagerScreensaverShort->Start( KTimeoutShort, 
             TCallBack( HandleInactiveEventShortL, this ), 
@@ -581,7 +577,7 @@
 // CScreensaverEngine::StopActivityMonitoring
 // -----------------------------------------------------------------------------
 //
-void CScreensaverEngine::StopActivityMonitoring( CScreensaverActivityManager*& aActivityManager )
+void CScreensaverEngine::StopActivityMonitoring( CUserActivityManager*& aActivityManager )
     {
     if ( aActivityManager )
         {
@@ -733,16 +729,7 @@
 //
 TInt CScreensaverEngine::HandleActiveEventShortL( TAny* aPtr )
     {
-    SCRLOGGER_WRITE("HandleActiveEventShortL(), stopping saver");
-    CScreensaverEngine* _this= STATIC_CAST(CScreensaverEngine*, aPtr);
-    if ( !_this->iIgnoreNextActivity )
-        {
-        _this->StopScreenSaver();
-        }
-    else
-        {
-        _this->iActivityManagerScreensaverShort->SetInactivityTimeout(0);
-        }
+    SCRLOGGER_WRITE("HandleActiveEventShortL()");
     return KErrNone;
     }
 
@@ -755,10 +742,6 @@
     SCRLOGGER_WRITE("HandleInactiveEventShortL()");
     // Start, if keys are locked and short timeout in use
     CScreensaverEngine* _this= STATIC_CAST(CScreensaverEngine*, aPtr);
-    // Restore inactivity timeout if it was reset at keylock activation
-    _this->iActivityManagerScreensaverShort->SetInactivityTimeout(KTimeoutShort);
-    _this->iIgnoreNextActivity = EFalse;
-    
     if ( _this->iSharedDataI->IsKeyguardOn() )
         {
         SCRLOGGER_WRITE("HandleInactiveEventShortL() starting saver");
@@ -786,53 +769,14 @@
     }
 
 // ---------------------------------------------------------------------------
-// CScreensaverEngine::ResetIgnoreFlagCb
-// ---------------------------------------------------------------------------
-//
-TInt CScreensaverEngine::ResetIgnoreFlagCb( TAny* aPtr )
-    {
-    CScreensaverEngine* engine = STATIC_CAST(CScreensaverEngine*, aPtr);
-    engine->KillTimer( engine->iIgnoreActivityResetTimer );
-    engine->iIgnoreNextActivity = EFalse;
-    
-    return KErrNone;
-    }
-
-// ---------------------------------------------------------------------------
 // CScreensaverEngine::HandleKeyguardStateChanged
 // ---------------------------------------------------------------------------
 //
 void CScreensaverEngine::HandleKeyguardStateChanged( TBool aEnabled )
     {
-    KillTimer( iIgnoreActivityResetTimer );
     if ( aEnabled )
         {
-        if ( !iScreenSaverIsOn )
-            {
-            // Start the screensaver, but set the ignore flag in case keylock
-            // was activated using the side switch. The switch will generate
-            // activity that must be ignored.
-            if ( iActivityManagerScreensaverShort->IsMonitoringForActivity() )
-                {
-                // Inactive state, start immediately
-                StartScreenSaver();
-                }
-            else
-                {
-                // Active state, go to inactive and start.
-                iActivityManagerScreensaverShort->SetInactivityTimeout(0);
-                }
-            
-            iIgnoreNextActivity = ETrue;
-            
-            iIgnoreActivityResetTimer = CPeriodic::New( EPriorityLow );
-            if ( iIgnoreActivityResetTimer )
-                {
-                iIgnoreActivityResetTimer->Start( KIgnoreActivityTimeout, 
-                                                  KIgnoreActivityTimeout, 
-                                                  TCallBack( ResetIgnoreFlagCb, this ) );
-                }
-            }
+        StartScreenSaver();
         }
     else
         {
@@ -844,11 +788,15 @@
 // 
 // ---------------------------------------------------------------------------
 //
-void CScreensaverEngine::NotifyKeyEventReceived()
+void CScreensaverEngine::HandleActivateSSChanged( TBool aStart )
     {
-    if ( iSharedDataI->IsKeyguardOn() )
+    if ( aStart )
         {
-        iIgnoreNextActivity = ETrue;
+        StartScreenSaver();
+        }
+    else
+        {
+        StopScreenSaver();
         }
     }