equal
deleted
inserted
replaced
63 DeleteSubscriber( iCallStateSubscriber ); |
63 DeleteSubscriber( iCallStateSubscriber ); |
64 iCallStateProperty.Close(); |
64 iCallStateProperty.Close(); |
65 |
65 |
66 DeleteSubscriber( iShuttingDownSubscriber ); |
66 DeleteSubscriber( iShuttingDownSubscriber ); |
67 iShuttingDownProperty.Close(); |
67 iShuttingDownProperty.Close(); |
|
68 |
|
69 DeleteSubscriber( iActivateSSSubscriber ); |
|
70 iActivateSSProperty.Close(); |
68 } |
71 } |
69 |
72 |
70 // ----------------------------------------------------------------------------- |
73 // ----------------------------------------------------------------------------- |
71 // CScreensaverSharedDataMonitor::NewL |
74 // CScreensaverSharedDataMonitor::NewL |
72 // ----------------------------------------------------------------------------- |
75 // ----------------------------------------------------------------------------- |
131 // Shutting down state watcher |
134 // Shutting down state watcher |
132 User::LeaveIfError( iShuttingDownProperty.Attach( KPSUidStartup, KPSGlobalSystemState ) ); |
135 User::LeaveIfError( iShuttingDownProperty.Attach( KPSUidStartup, KPSGlobalSystemState ) ); |
133 iShuttingDownSubscriber = new (ELeave) CSubscriber( |
136 iShuttingDownSubscriber = new (ELeave) CSubscriber( |
134 TCallBack(HandleShuttingDownStateChanged, this), iShuttingDownProperty); |
137 TCallBack(HandleShuttingDownStateChanged, this), iShuttingDownProperty); |
135 iShuttingDownSubscriber->SubscribeL(); |
138 iShuttingDownSubscriber->SubscribeL(); |
|
139 |
|
140 User::LeaveIfError( iActivateSSProperty.Attach( KPSUidScreenSaver, KScreenSaverActivate ) ); |
|
141 iActivateSSSubscriber = new( ELeave ) CSubscriber( TCallBack( HandleActivateSSChanged, this ), iActivateSSProperty ); |
|
142 iActivateSSSubscriber->SubscribeL(); |
136 } |
143 } |
137 |
144 |
138 // ----------------------------------------------------------------------------- |
145 // ----------------------------------------------------------------------------- |
139 // CScreensaverSharedDataMonitor::View |
146 // CScreensaverSharedDataMonitor::View |
140 // ----------------------------------------------------------------------------- |
147 // ----------------------------------------------------------------------------- |
234 if ( _this->iData->IsKeyguardOn() ) |
241 if ( _this->iData->IsKeyguardOn() ) |
235 { |
242 { |
236 // Keys locked - if screensaver is running, this was caused by |
243 // Keys locked - if screensaver is running, this was caused by |
237 // automatic keyguard and screensaver should refresh the view |
244 // automatic keyguard and screensaver should refresh the view |
238 // to show the keylock indicator |
245 // to show the keylock indicator |
239 if ( _this->Model().ScreenSaverIsOn() ) |
246 /* if ( _this->Model().ScreenSaverIsOn() ) |
240 { |
247 { |
241 _this->View()->UpdateAndRefresh(); |
248 _this->View()->UpdateAndRefresh(); |
242 } |
249 } |
|
250 */ |
|
251 _this->Model().StartScreenSaver(); |
|
252 } |
|
253 else |
|
254 { |
|
255 _this->Model().StopScreenSaver(); |
243 } |
256 } |
244 |
257 |
245 return KErrNone; |
258 return KErrNone; |
246 } |
259 } |
247 |
260 |
278 } |
291 } |
279 |
292 |
280 return KErrNone; |
293 return KErrNone; |
281 } |
294 } |
282 |
295 |
|
296 |
|
297 TInt CScreensaverSharedDataMonitor::HandleActivateSSChanged( TAny* aPtr ) |
|
298 { |
|
299 TInt activateState = -1; |
|
300 |
|
301 RProperty::Get( KPSUidScreenSaver, KScreenSaverActivate, activateState ); |
|
302 |
|
303 if( activateState && -1 != activateState ) |
|
304 { |
|
305 // Enable SS |
|
306 SCRLOGGER_WRITE("SharedDataMonitor: Activate SS"); |
|
307 STATIC_CAST(CScreensaverSharedDataMonitor*, aPtr)->Model().StartScreenSaver(); |
|
308 } |
|
309 else if ( !activateState ) |
|
310 { |
|
311 // Disable SS |
|
312 SCRLOGGER_WRITE("SharedDataMonitor: Stop SS"); |
|
313 STATIC_CAST(CScreensaverSharedDataMonitor*, aPtr)->Model().StopScreenSaver(); |
|
314 } |
|
315 else |
|
316 { |
|
317 // Unknown state |
|
318 } |
|
319 return KErrNone; |
|
320 } |
|
321 |
|
322 |
283 // End of file |
323 // End of file |