Revision: 201009 RCL_3
authorDremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Mon, 15 Mar 2010 12:40:52 +0200
branchRCL_3
changeset 34 5dedbccec665
parent 33 dbd79466b1ed
child 35 5c11946e75b3
Revision: 201009 Kit: 201010
browserplugins/browseraudiovideoplugin/inc/BavpPlugin.h
browserplugins/browseraudiovideoplugin/src/BavpControllerVideo.cpp
browserplugins/browseraudiovideoplugin/src/BavpPlugin.cpp
browserui/browser/BrowserAppInc/BrowserAppUi.h
browserui/browser/BrowserAppSrc/BrowserAppUi.cpp
browserui/browser/BrowserAppSrc/BrowserCommsModel.cpp
browserui/browser/BrowserAppSrc/BrowserContentView.cpp
browserui/browser/BrowserAppSrc/BrowserSpecialLoadObserver.cpp
browserui/browser/FavouritesInc/BrowserBookmarksView.h
browserui/browser/FavouritesSrc/BrowserBookmarksView.cpp
browserui/browser/Rom/Browser_stub.SIS
browserui/browser/Rom/Browser_stub.pkg
browserui/browser/SettingsSrc/SettingsContainer.cpp
browserui/browser/help/group/bld.inf
browserui/operatormenu/help/group/bld.inf
pushmtm/Data/PushMtmUi.rss
pushmtm/help/group/bld.inf
--- a/browserplugins/browseraudiovideoplugin/inc/BavpPlugin.h	Fri Mar 12 15:43:05 2010 +0200
+++ b/browserplugins/browseraudiovideoplugin/inc/BavpPlugin.h	Mon Mar 15 12:40:52 2010 +0200
@@ -279,6 +279,8 @@
         NPP iNPP;
         //browser plugin state, used for play and resume 
         TBool iPauseState; 
+        TBool iIsForeGround;
+        TBool iPauseInBackground;
     };
 
 /**
--- a/browserplugins/browseraudiovideoplugin/src/BavpControllerVideo.cpp	Fri Mar 12 15:43:05 2010 +0200
+++ b/browserplugins/browseraudiovideoplugin/src/BavpControllerVideo.cpp	Mon Mar 15 12:40:52 2010 +0200
@@ -1293,9 +1293,9 @@
 // -----------------------------------------------------------------------------
 /*
  * This function was added for consistency with mmplayer.
- * Not used is 5.0 (tube) since we want to preserve correct 
+ * Not used is 5.0 (S60_50) since we want to preserve correct
  * aspect ratio and this function will stretch the video to
- * the full screen, which due to tube screen size doesn't match
+ * the full screen, which due to S60_50 screen size doesn't match
  * to correct ratio.
  * If needed it should be called in  WaitForScreenSwitchL() after 
  * screen mode changed.
--- a/browserplugins/browseraudiovideoplugin/src/BavpPlugin.cpp	Fri Mar 12 15:43:05 2010 +0200
+++ b/browserplugins/browseraudiovideoplugin/src/BavpPlugin.cpp	Mon Mar 15 12:40:52 2010 +0200
@@ -44,7 +44,9 @@
 CBavpPlugin::CBavpPlugin()
     : iError( EFalse ),
     iMimeType( NULL ), 
-    iPauseState ( EFalse )
+    iPauseState ( EFalse ), 
+    iIsForeGround ( ETrue ), 
+    iPauseInBackground (EFalse)
     {
     
     }
@@ -333,6 +335,16 @@
 // -----------------------------------------------------------------------------
 TInt CBavpPlugin::NotifyL( TNotificationType aCallType, void* aParam )
     {
+    if(iBavpController)
+        { 
+        //if player is paused due to focus change or Visual history back and manually pressed Play, then we need 
+        //to clear the pause state. 
+        if(EBavpPlaying == iBavpController->State() && iPauseState)
+            { 
+            iPauseState = EFalse; 
+            }
+        }
+    
     switch ( aCallType )
         {
         case EApplicationFocusChanged:
@@ -345,19 +357,23 @@
                 // If Browser in-focus, we send this plugin aParam=ETrue, if
                 // the plugin is (was) in-focus or activated.
                 iBavpController->HandleBrowserNotification( TBool(aParam) );
- 				if(!aParam) //app background
+ 					if(!aParam) //app background
                     {
+                    iIsForeGround = EFalse; 
                     if(EBavpPlaying == iBavpController->State()) 
                         { 
                         iPauseState = ETrue; 
-                        iBavpController->PauseL(); 
+                        iPauseInBackground = ETrue; 
+                        iBavpController->PauseL();
                         }
                     }
                 else    //app foreground  
                     { 
-                    if(EBavpPaused == iBavpController->State() && iPauseState) 
+                    iIsForeGround = ETrue;
+                    if(EBavpPaused == iBavpController->State() && iPauseInBackground) 
                        { 
                        iPauseState = EFalse; 
+                       iPauseInBackground = EFalse;
                        iBavpController->PlayL();
                        }
                     
@@ -369,7 +385,7 @@
         case EPluginPause :
             if( !aParam )
                {
-                if(iBavpController  && iPauseState && (iBavpController->State() == EBavpPaused))
+                if(iBavpController  && iPauseState && (iBavpController->State() == EBavpPaused) && (iIsForeGround))
                     { 
                     iPauseState = EFalse; 
                     iBavpController->PlayL(); 
--- a/browserui/browser/BrowserAppInc/BrowserAppUi.h	Fri Mar 12 15:43:05 2010 +0200
+++ b/browserui/browser/BrowserAppInc/BrowserAppUi.h	Mon Mar 15 12:40:52 2010 +0200
@@ -706,6 +706,8 @@
         
         // This member is public, so BrowserLauncher.dll can close the browser.
         CBrowserAsyncExit *iBrowserAsyncExit;
+    public:
+        void StopConnectionObserving();
 
 	private:    
 	
--- a/browserui/browser/BrowserAppSrc/BrowserAppUi.cpp	Fri Mar 12 15:43:05 2010 +0200
+++ b/browserui/browser/BrowserAppSrc/BrowserAppUi.cpp	Mon Mar 15 12:40:52 2010 +0200
@@ -1215,7 +1215,28 @@
 		{
         CancelFetch();
 		}
-
+#ifndef __WINS__
+//Fix for bookmark specific access point
+    if( iConnection && iConnection->Connected() )
+       {
+       TUint32 passedIap( 0 );
+       if ( aAccessPoint.ApId() != KWmlNoDefaultAccessPoint )
+           {
+           passedIap = Util::IapIdFromWapIdL( *this, aAccessPoint.ApId());
+           BROWSER_LOG((_L("CBrowserAppUi::FetchL Passed Iap: %d"), passedIap));
+           TUint32 connectedAp = iConnection->CurrentAPId();
+           BROWSER_LOG((_L("CBrowserAppUi::FetchL Existing connected Iap: %d"), connectedAp));
+           if(passedIap != connectedAp)
+               {
+               StopConnectionObserving();
+               BROWSER_LOG((_L("CBrowserAppUi::FetchL Stopped the connection observation.")));
+               DisconnectL();
+               BROWSER_LOG((_L("CBrowserAppUi::FetchL Given iap and Connected iap are not same. Disconnected the existing connection.")));
+               }
+           }
+
+       }
+#endif // __WINS__
     // iDoNotRestoreContentFlag = EFalse;
 
     TInt toPop = 0;
@@ -1290,24 +1311,13 @@
             BROWSER_LOG( ( _L( "AP or SNAP was not added set to Always ask mode" ) ) );
             iPreferences->SetAccessPointSelectionModeL(EAlwaysAsk );
             }
-        if ( iRequestedAp == KWmlNoDefaultAccessPoint )
+        if ( iRequestedAp != KWmlNoDefaultAccessPoint )
             {
-            // For all cases just set dummy id to IAPid not to let Ap engine or Ap util to leave
-            // In the cases of EDest, EAA, since ap will not be used, it's ok to do so as well
-            // In the case of EDest, need to preserve KWmlNoDefaultAccessPoint as the value
-            // it'll be used in BrowserSpecialLoadObserver.cpp for for bug fix MLAN-7EKFV4
-            if ( Preferences().AccessPointSelectionMode() != EDestination )
-                {
-    		    iRequestedAp = 2;
-                }
-            IAPid = 2;
+    		    BROWSER_LOG( ( _L( "AP added" ) ) );
+            IAPid = Util::IapIdFromWapIdL( *this, iRequestedAp );  // Get currently active ap
+            BROWSER_LOG( ( _L( "Access point: %d" ), IAPid ) );
             }
-        else
-            {
-    		BROWSER_LOG( ( _L( "AP added" ) ) );
-    		IAPid = Util::IapIdFromWapIdL( *this, iRequestedAp );  // Get currently active ap
-    		BROWSER_LOG( ( _L( "No AP 2" ) ) );
-            }
+
 #endif // BRDO_OCC_ENABLED_FF
 #else	//we can use any numbers here
         // alr: snap on emulator should not exist; use cm mode instead?
@@ -1340,24 +1350,23 @@
             err = uriParser.Parse(serviceSchemePtr);
             if (!err)
                 serviceSchemePtr = uriParser.Extract( EUriScheme );
-            
-            if( scheme.Length() != 0 )
+
+
+            if( scheme.Length() != 0 && (!scheme.Compare(serviceSchemePtr) || !scheme.Compare(searchSchemePtr)) )
                 {
-                if( !scheme.Compare(serviceSchemePtr) || !scheme.Compare(searchSchemePtr) )
-                	{
-                	iSpecialSchemeinAddress = ETrue;
-                	TRAP( err, BrCtlInterface().LoadUrlL( resultUrlBuf->Des(), IAPid ) );
-                	}
-                else
-                	{
-                	LoadObserver().DoStartLoad( aUrlType );
-                    TRAP( err, BrCtlInterface().LoadUrlL( resultUrlBuf->Des(), IAPid ) );
-                	}            
+                iSpecialSchemeinAddress = ETrue;
+                TRAP( err, BrCtlInterface().LoadUrlL( resultUrlBuf->Des(), IAPid ) );
                 }
+            else
+                {
+                LoadObserver().DoStartLoad( aUrlType );
+                TRAP( err, BrCtlInterface().LoadUrlL( resultUrlBuf->Des(), IAPid ) );
+                }            
 	        }
 	    else
 	        {
 	        LoadObserver().DoStartLoad( aUrlType );
+	        BROWSER_LOG( ( _L( "PASSED IAP: %d" ), IAPid ) );
             TRAP( err, BrCtlInterface().LoadUrlL( resultUrlBuf->Des(), IAPid ) );
 	        }
         
@@ -2176,7 +2185,11 @@
                                 // Cancel history view, mini map, toolbar or any other active control on the current window 
                                 BrCtlInterface().HandleCommandL( TBrCtlDefs::ECommandCancel + TBrCtlDefs::ECommandIdBase );
                                 // there is already a window, so create a new one
-                                CBrowserWindow *win = WindowMgr().CreateWindowL( 0, &KNullDesC );
+                                CBrowserWindow *win = NULL; 
+                                if(WindowMgr().CurrentWindow()) 
+                                    win = WindowMgr().CreateWindowL( (WindowMgr().CurrentWindow()->WindowId()) ? WindowMgr().CurrentWindow()->WindowId() : 0, &KNullDesC );
+                                else
+                                    win = WindowMgr().CreateWindowL( 0, &KNullDesC );
                                 if (win != NULL)
                                     {
                                         
@@ -2326,6 +2339,15 @@
         iParametrizedLaunchInProgress = 2;
         }
     }
+void CBrowserAppUi::StopConnectionObserving()
+    {
+    LOG_ENTERFN("CBrowserAppUi::StopConnectionObserving");
+    if ( iConnStageNotifier && iConnStageNotifier->IsActive() )
+        {
+        BROWSER_LOG( ( _L( " CBrowserAppUi::StopConnectionObserving Cancelling Observer" ) ) );
+        iConnStageNotifier->Cancel();
+        }
+    }
 
 // -----------------------------------------------------------------------------
 // CBrowserAppUi::ConnNeededStatusL
@@ -2333,6 +2355,7 @@
 //
 void CBrowserAppUi::ConnNeededStatusL( TInt aErr )
     {
+    LOG_ENTERFN("CBrowserAppUi::ConnNeededStatusL");
     UpdateSoftKeys();
     if (iSuppressAlwaysAsk)
         {
@@ -2356,6 +2379,7 @@
 
     if ( !iConnStageNotifier->IsActive() )
         {
+        BROWSER_LOG( ( _L( " CBrowserAppUi::ConnNeededStatusL Starting Connection Observer" ) ) );
         TName* connectionName = Connection().ConnectionNameL();
         CleanupStack::PushL( connectionName );
         iConnStageNotifier->StartNotificationL(
--- a/browserui/browser/BrowserAppSrc/BrowserCommsModel.cpp	Fri Mar 12 15:43:05 2010 +0200
+++ b/browserui/browser/BrowserAppSrc/BrowserCommsModel.cpp	Mon Mar 15 12:40:52 2010 +0200
@@ -263,7 +263,9 @@
 //        KEApIspTypeAll | KEApIspTypeWAPMandatory,
         EApBearerTypeAll,
         KEApSortNameAscending,
-		EIPv4 | EIPv6
+		EIPv4 | EIPv6,
+		EVpnFilterBoth, //For VPNs
+        ETrue    //Easy Wlan ap
         );
     (void)apSelect->AllListItemDataL( aList );
     CleanupStack::PopAndDestroy();  // apSelect
--- a/browserui/browser/BrowserAppSrc/BrowserContentView.cpp	Fri Mar 12 15:43:05 2010 +0200
+++ b/browserui/browser/BrowserAppSrc/BrowserContentView.cpp	Mon Mar 15 12:40:52 2010 +0200
@@ -282,7 +282,6 @@
         }
     switch ( aCommand )
         {
-#ifdef BRDO_SINGLE_CLICK_ENABLED_FF		
         case EWmlCmdSetAsHomePage:
             {
             HBufC* url = ApiProvider().BrCtlInterface().PageInfoLC(TBrCtlDefs::EPageInfoUrl);
@@ -293,8 +292,7 @@
                 }
             CleanupStack::PopAndDestroy(); // url
             break;
-            } 
-#endif			      
+            } 			      
         case EWmlCmdFavourites:
             {
             ApiProvider().SetViewToBeActivatedIfNeededL(
@@ -327,6 +325,14 @@
 		// Set search pane active and then launch editor.	
         case EIsCmdSearchWeb:
             {
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF 
+            CEikButtonGroupContainer* cba = Cba()->Current();
+            CEikCba* eikCba = static_cast<CEikCba*>( cba->ButtonGroup() );
+            if( eikCba )
+                {
+                eikCba->EnableItemSpecificSoftkey( EFalse );
+                }
+#endif
             iContainer->GotoPane()->SetSearchPaneActiveL();
             LaunchGotoAddressEditorL();
             break;
--- a/browserui/browser/BrowserAppSrc/BrowserSpecialLoadObserver.cpp	Fri Mar 12 15:43:05 2010 +0200
+++ b/browserui/browser/BrowserAppSrc/BrowserSpecialLoadObserver.cpp	Mon Mar 15 12:40:52 2010 +0200
@@ -284,6 +284,22 @@
 
 				BROWSER_LOG((_L("StartConnection params, query: %d, temp: %d"), query, disableConnDlgs));
                 iConnectionStarted = ETrue; // is true when connection request submited.
+#ifndef __WINS__
+                TUint32 bookmarkIap( 0 );
+                //If bookmark has defined its AP, use it
+                if ( iApiProvider->RequestedAp() != KWmlNoDefaultAccessPoint )
+                    {
+                    bookmarkIap = Util::IapIdFromWapIdL( *iApiProvider, iApiProvider->RequestedAp() );
+                    BROWSER_LOG((_L("Bookmark Iap: %d"), bookmarkIap));
+                    iApiProvider->Connection().SetRequestedAP( bookmarkIap );
+                    iApiProvider->Connection().SetConnectionType( EConnectionMethod );
+                    }
+                else
+                    {
+                    iApiProvider->Connection().SetRequestedAP( bookmarkIap );
+                    BROWSER_LOG((_L("Setting Bookmark Iap: %d"), bookmarkIap));
+                    }
+#endif
                 // might leave, don't TRAP. OK.
                 err = iApiProvider->Connection().StartConnectionL( disableConnDlgs );
                 iConnectionStarted = EFalse; // is false when connection response completed.
--- a/browserui/browser/FavouritesInc/BrowserBookmarksView.h	Fri Mar 12 15:43:05 2010 +0200
+++ b/browserui/browser/FavouritesInc/BrowserBookmarksView.h	Mon Mar 15 12:40:52 2010 +0200
@@ -548,8 +548,6 @@
         // Re-Entry Gate flag for Delete Bookmark routine
         TBool iHandleDeleteInProgress;
 
-        // updates the softkey
-        TBool iSoftKeyUpdate;
 
 	};
 
--- a/browserui/browser/FavouritesSrc/BrowserBookmarksView.cpp	Fri Mar 12 15:43:05 2010 +0200
+++ b/browserui/browser/FavouritesSrc/BrowserBookmarksView.cpp	Mon Mar 15 12:40:52 2010 +0200
@@ -492,7 +492,6 @@
         case EWmlCmdGoToAddress: // MSK for Recent Url page
         case EWmlCmdSwitchToGotoActive:
             {
-            iSoftKeyUpdate = EFalse;
             DimToolbarButtons(ETrue);
 #ifdef BRDO_SINGLE_CLICK_ENABLED_FF            
             CEikButtonGroupContainer* cba = Cba()->Current();
@@ -509,6 +508,14 @@
         case EIsCmdSearchWeb:
         	{
         	DimToolbarButtons(ETrue);
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF 
+            CEikButtonGroupContainer* cba = Cba()->Current();
+            CEikCba* eikCba = static_cast<CEikCba*>( cba->ButtonGroup() );
+            if( eikCba )
+                {
+                eikCba->EnableItemSpecificSoftkey( EFalse );
+                }
+#endif
         	TheContainer()->SetSearchActiveL();
         	break;
         	}
@@ -829,7 +836,7 @@
     CBrowserBookmarksContainer* theContainer = TheContainer();
 
     // if the container doesn't exist, leave gotoPanePtr at NULL
-    if (theContainer && !iSoftKeyUpdate)
+    if (theContainer)
         {
         gotoPanePtr = theContainer->GotoPane();
         }
@@ -2075,11 +2082,6 @@
         {
         iInAdaptiveBookmarksFolder = ETrue;
         }
-
-    if( iPreviousViewID == KUidBrowserBookmarksViewId )
-       {
-       iSoftKeyUpdate = ETrue;
-       }
     CBrowserFavouritesView::DoActivateL
                             ( aPrevViewId, aCustomMessageId, aCustomMessage );
     ApiProvider().BrCtlInterface().AddLoadEventObserverL( this );
@@ -2128,7 +2130,6 @@
         {
         ExitAdaptiveBookmarks();
         }
-    iSoftKeyUpdate = EFalse;
     if ( !ApiProvider().ExitInProgress() )
         {
         ApiProvider().BrCtlInterface().RemoveLoadEventObserver( this );
Binary file browserui/browser/Rom/Browser_stub.SIS has changed
--- a/browserui/browser/Rom/Browser_stub.pkg	Fri Mar 12 15:43:05 2010 +0200
+++ b/browserui/browser/Rom/Browser_stub.pkg	Mon Mar 15 12:40:52 2010 +0200
@@ -14,7 +14,7 @@
 &EN
 
 ;Header
-#{"Web Browser"},(0x10008D39),7,1,0, TYPE=SA
+#{"Web Browser"},(0x10008D39),7,2,3, TYPE=SA
 
 ;Localised Vendor name
 %{"Nokia"}
--- a/browserui/browser/SettingsSrc/SettingsContainer.cpp	Fri Mar 12 15:43:05 2010 +0200
+++ b/browserui/browser/SettingsSrc/SettingsContainer.cpp	Mon Mar 15 12:40:52 2010 +0200
@@ -3379,8 +3379,8 @@
                     TKeyEvent keyEvent;
                     keyEvent.iModifiers = 0;
                     keyEvent.iRepeats = 0;
-                    keyEvent.iCode = EKeyDevice3;
-                    keyEvent.iScanCode = EStdKeyDevice3;
+                    keyEvent.iCode = EKeyEnter;
+                    keyEvent.iScanCode = EStdKeyEnter;
                     CCoeEnv::Static()->SimulateKeyEventL( keyEvent, EEventKey );
                     }
                     break;
--- a/browserui/browser/help/group/bld.inf	Fri Mar 12 15:43:05 2010 +0200
+++ b/browserui/browser/help/group/bld.inf	Mon Mar 15 12:40:52 2010 +0200
@@ -20,7 +20,7 @@
 #include <platform_paths.hrh>	
 #include "../../../../../../mw/web/web_plat/browser_platform_api/inc/browser_platform_variant.hrh"
 			
-#if !defined(__PLATFORM_VERSION_32__) && !defined(__PLATFORM_VERSION_50__) && !defined(__PLATFORM_VERSION_50_TUBE__)
+#if !defined(__PLATFORM_VERSION_32__) && !defined(__PLATFORM_VERSION_5250__) && !defined(__PLATFORM_VERSION_S60_50__)
 
 PRJ_EXPORTS
 :zip ../data/xhtml.zip   /epoc32/data/z/resource/ overwrite
--- a/browserui/operatormenu/help/group/bld.inf	Fri Mar 12 15:43:05 2010 +0200
+++ b/browserui/operatormenu/help/group/bld.inf	Mon Mar 15 12:40:52 2010 +0200
@@ -20,7 +20,7 @@
 #include <platform_paths.hrh>
 #include "../../../../../../mw/web/web_plat/browser_platform_api/inc/browser_platform_variant.hrh"
 			
-#if !defined(__PLATFORM_VERSION_32__) && !defined(__PLATFORM_VERSION_50__) && !defined(__PLATFORM_VERSION_50_TUBE__)
+#if !defined(__PLATFORM_VERSION_32__) && !defined(__PLATFORM_VERSION_5250__) && !defined(__PLATFORM_VERSION_S60_50__)
 				
 PRJ_EXPORTS
 :zip ../data/xhtml.zip   /epoc32/data/z/resource/ overwrite
--- a/pushmtm/Data/PushMtmUi.rss	Fri Mar 12 15:43:05 2010 +0200
+++ b/pushmtm/Data/PushMtmUi.rss	Mon Mar 15 12:40:52 2010 +0200
@@ -20,7 +20,7 @@
 NAME PMTM
 
 //  INCLUDES
-
+#include <browser_platform_variant.hrh>
 #include "PushMtmCommands.hrh"
 #include "PushMtmUi.hrh"
 #include <pushmtmui.loc>
@@ -35,6 +35,7 @@
 #include <bldvariant.hrh>
 #include <Muiu.mbg>
 
+
 //  RESOURCE DEFINITIONS 
 
 RESOURCE RSS_SIGNATURE { }
@@ -109,6 +110,9 @@
             {
             command = EPushSettingsDialogCmdChange;
             txt = qtn_mce_settings_change;
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF    
+            flags = EEikMenuItemAction;
+#endif         
             },
 #ifdef __SERIES60_HELP
         MENU_ITEM
--- a/pushmtm/help/group/bld.inf	Fri Mar 12 15:43:05 2010 +0200
+++ b/pushmtm/help/group/bld.inf	Mon Mar 15 12:40:52 2010 +0200
@@ -20,7 +20,7 @@
 #include <platform_paths.hrh>	
 #include "../../../../../mw/web/web_plat/browser_platform_api/inc/browser_platform_variant.hrh"
 			
-#if !defined(__PLATFORM_VERSION_32__) && !defined(__PLATFORM_VERSION_50__) && !defined(__PLATFORM_VERSION_50_TUBE__)
+#if !defined(__PLATFORM_VERSION_32__) && !defined(__PLATFORM_VERSION_5250__) && !defined(__PLATFORM_VERSION_S60_50__)
 			
 PRJ_EXPORTS
 :zip ../data/xhtml.zip   /epoc32/data/z/resource/ overwrite