equal
deleted
inserted
replaced
57 |
57 |
58 #include <AknLaunchAppService.h> // for launching RMUI embedded |
58 #include <AknLaunchAppService.h> // for launching RMUI embedded |
59 |
59 |
60 #include <utf.h> |
60 #include <utf.h> |
61 |
61 |
62 #include <SchemeHandler.h> // for handling URLs |
|
63 #include "DRMHelperServer.h" |
62 #include "DRMHelperServer.h" |
64 #include "ConsumeData.h" |
63 #include "ConsumeData.h" |
65 #include "DRMTypes.h" |
64 #include "DRMTypes.h" |
66 #include "DRMClockClient.h" |
65 #include "DRMClockClient.h" |
67 #include "DRMPointerArray.h" |
66 #include "DRMPointerArray.h" |
|
67 #include <drmbrowserlauncher.h> |
68 |
68 |
69 #include <SecondaryDisplay/DRMHelperSecondaryDisplay.h> // for secondary display support |
69 #include <SecondaryDisplay/DRMHelperSecondaryDisplay.h> // for secondary display support |
70 #include <AknMediatorFacade.h> |
70 #include <AknMediatorFacade.h> |
71 #include <MediatorEventProvider.h> |
71 #include <MediatorEventProvider.h> |
72 #include <MediatorDomainUIDs.h> |
72 #include <MediatorDomainUIDs.h> |
860 iFs.Close(); |
860 iFs.Close(); |
861 } |
861 } |
862 |
862 |
863 FeatureManager::UnInitializeLib(); |
863 FeatureManager::UnInitializeLib(); |
864 |
864 |
865 delete iSchemeHandler; |
|
866 delete iEventProvider; |
865 delete iEventProvider; |
867 } |
866 } |
868 |
867 |
869 #pragma mark - |
868 #pragma mark - |
870 |
869 |
5547 newUrl->Des().Append( ptr.Mid( i ) ); |
5546 newUrl->Des().Append( ptr.Mid( i ) ); |
5548 ptr.Set( *newUrl ); |
5547 ptr.Set( *newUrl ); |
5549 i = 0; |
5548 i = 0; |
5550 } |
5549 } |
5551 |
5550 |
5552 CSchemeHandler* schemeHandler( CSchemeHandler::NewL( ptr.Mid( i ) ) ); |
5551 // convert given URL to QUrl format |
5553 CleanupStack::PushL( schemeHandler ); |
5552 DRM::CDrmBrowserLauncher* browserLauncher = DRM::CDrmBrowserLauncher::NewLC(); |
5554 if ( iUseCoeEnv ) |
5553 |
5555 { |
5554 browserLauncher->LaunchUrlL(ptr); |
5556 // launch embedded |
5555 |
5557 schemeHandler->Observer( this ); |
5556 CleanupStack::PopAndDestroy(); // browserLauncher |
5558 schemeHandler->HandleUrlEmbeddedL(); |
5557 |
5559 CleanupStack::Pop( schemeHandler ); |
5558 |
5560 iSchemeHandler = schemeHandler; |
|
5561 iWait.Start(); |
|
5562 } |
|
5563 else |
|
5564 { |
|
5565 // no CoeEnv, launch standalone with scheme app |
|
5566 schemeHandler->HandleUrlStandaloneL(); |
|
5567 CleanupStack::PopAndDestroy( schemeHandler ); |
|
5568 } |
|
5569 schemeHandler = NULL; |
|
5570 |
|
5571 // delete newUrl if needed |
5559 // delete newUrl if needed |
5572 if ( newUrl ) |
5560 if ( newUrl ) |
5573 { |
5561 { |
5574 CleanupStack::PopAndDestroy( newUrl ); |
5562 CleanupStack::PopAndDestroy( newUrl ); |
5575 } |
5563 } |
7046 // CDRMHelper::HandleServerAppExit |
7034 // CDRMHelper::HandleServerAppExit |
7047 // ----------------------------------------------------------------------------- |
7035 // ----------------------------------------------------------------------------- |
7048 // |
7036 // |
7049 void CDRMHelper::HandleServerAppExit( TInt aReason ) |
7037 void CDRMHelper::HandleServerAppExit( TInt aReason ) |
7050 { |
7038 { |
7051 if ( aReason == EAknCmdExit && !iSchemeHandler ) |
7039 if ( aReason == EAknCmdExit ) |
7052 { |
7040 { |
7053 CAknEnv::RunAppShutter(); |
7041 CAknEnv::RunAppShutter(); |
7054 } |
|
7055 |
|
7056 if ( iSchemeHandler ) |
|
7057 { |
|
7058 delete iSchemeHandler; |
|
7059 iSchemeHandler = NULL; |
|
7060 } |
7042 } |
7061 |
7043 |
7062 if ( iWait.IsStarted() ) |
7044 if ( iWait.IsStarted() ) |
7063 { |
7045 { |
7064 iWait.AsyncStop(); |
7046 iWait.AsyncStop(); |