src/screensaverctrlplugin.cpp
branchRCL_3
changeset 16 1f307dce3b5a
parent 11 4784a3bc2236
child 21 724d4ec22f0d
--- a/src/screensaverctrlplugin.cpp	Tue May 25 12:43:23 2010 +0300
+++ b/src/screensaverctrlplugin.cpp	Wed Jun 09 09:42:47 2010 +0300
@@ -123,7 +123,15 @@
     // is displaying. Other indicators' state changing also dismisses
     // screensaver. Once redisplaying, the indicators are updated anyway.
     // Key lock indicator depends on status of key guard.
+    TIndicatorPayload payload;
+    payload.iType = EPayloadTypeInteger;
+    
     Array().SetDependencyStatus( ESsKeyLockInd, !Model().SharedDataInterface()->IsKeyguardOn() );
+    payload.iInteger = Model().SharedDataInterface()->UnreadMessagesNumber();
+    Array().SetIndicatorPayload( ESsNewMessagesInd, payload );
+    Array().SetDependencyStatus( ESsNewMessagesInd, ( payload.iInteger <= 0 ) );
+    Array().SetDependencyStatus( ESsVoicemailInd, !Model().SharedDataInterface()->IsHaveNewVoicemail() );
+
     Array().SetVisibilityForIndicators();
 
     SCRLOGGER_WRITEF( _L("SCR:CScreensaverCtrlPlugin::Refresh DrawObject") );