equal
deleted
inserted
replaced
18 #include <AknNotifierWrapperDefs.h> |
18 #include <AknNotifierWrapperDefs.h> |
19 #include <AknNotifierControllerPlugin.h> |
19 #include <AknNotifierControllerPlugin.h> |
20 #include "AknNfySrv.h" |
20 #include "AknNfySrv.h" |
21 |
21 |
22 const TUid KDllUid = {0x10000079}; |
22 const TUid KDllUid = {0x10000079}; |
23 |
23 const TInt KCheckInterval = 1000000 / 64; |
24 |
24 |
25 class CAknNotifierEntry: public CBase |
25 class CAknNotifierEntry: public CBase |
26 { |
26 { |
27 public: |
27 public: |
28 CAknNotifierEntry():iNotifier(0),iLibraryName(0){} |
28 CAknNotifierEntry():iNotifier(0),iLibraryName(0){} |
63 if (me->iLibraryArray[ii]->iReferenceCount == 0) |
63 if (me->iLibraryArray[ii]->iReferenceCount == 0) |
64 { |
64 { |
65 if (me->iLibraryArray[ii]->iNestingLevel >= CActiveScheduler::Current()->StackDepth()) |
65 if (me->iLibraryArray[ii]->iNestingLevel >= CActiveScheduler::Current()->StackDepth()) |
66 { |
66 { |
67 me->DoUnload(me->iLibraryArray[ii]->iLibraryName->Des()); |
67 me->DoUnload(me->iLibraryArray[ii]->iLibraryName->Des()); |
|
68 me->iLibraryRemover->Cancel(); |
68 } |
69 } |
69 else |
70 else |
70 { |
71 { |
71 foundPending = ETrue; |
72 foundPending = ETrue; |
72 } |
73 } |
109 |
110 |
110 void CAknNfySrv::CheckPendingRemovalsL() |
111 void CAknNfySrv::CheckPendingRemovalsL() |
111 { |
112 { |
112 if (!iLibraryRemover) |
113 if (!iLibraryRemover) |
113 { |
114 { |
114 iLibraryRemover = CIdle::NewL(CActive::EPriorityIdle); // there is no hurry |
115 iLibraryRemover = CPeriodic::NewL(CActive::EPriorityIdle); // there is no hurry |
115 } |
116 } |
116 else if (iLibraryRemover->IsActive()) |
117 else if (iLibraryRemover->IsActive()) |
117 { |
118 { |
118 if (CheckUnusedLibraries((TAny*) this)) |
119 if (CheckUnusedLibraries((TAny*) this)) |
119 { |
120 { |
289 } |
290 } |
290 else |
291 else |
291 { |
292 { |
292 if (!iLibraryRemover->IsActive()) |
293 if (!iLibraryRemover->IsActive()) |
293 { |
294 { |
294 iLibraryRemover->Start(TCallBack(CheckUnusedLibraries, this)); |
295 iLibraryRemover->Start(0, KCheckInterval, TCallBack(CheckUnusedLibraries, this)); |
295 } |
296 } |
296 } |
297 } |
297 } |
298 } |
298 } |
299 } |
299 break; |
300 break; |