Revision: 201003 PDK_3.0.g
authorDremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Tue, 02 Feb 2010 00:12:41 +0200
changeset 37 481242ead638
parent 33 97c9f46387be
child 41 d6c1cc3e4806
child 42 644aeb2c9622
child 51 48e827313edd
Revision: 201003 Kit: 201005
browserplugins/browseraudiovideoplugin/data/BrowserAudioVideoPlugin.rls
browserplugins/browseraudiovideoplugin/src/BavpView.cpp
browserplugins/browsergpsplugin/data/GpsPlugin.rls
browserplugins/browsersysteminfoplugin/data/SystemInfoPlugin.rls
browserui/browser/BrowserAppSrc/BrowserAppUi.cpp
browserui/browser/BrowserAppSrc/BrowserAppViewBase.cpp
browserui/browser/BrowserAppSrc/BrowserContentView.cpp
browserui/browser/BrowserAppSrc/BrowserGotoPane.cpp
browserui/browser/FavouritesSrc/BrowserAdaptiveListPopup.cpp
browserui/browser/FavouritesSrc/BrowserBookmarksContainer.cpp
browserui/browser/FavouritesSrc/BrowserBookmarksGotoPane.cpp
browserui/browser/FavouritesSrc/BrowserBookmarksView.cpp
browserui/browser/FavouritesSrc/BrowserFavouritesView.cpp
browserui/browser/FeedsSrc/FeedsFeedView.cpp
browserui/browser/FeedsSrc/FeedsFolderContainer.cpp
browserui/browser/FeedsSrc/FeedsFolderView.cpp
browserui/browser/FeedsSrc/FeedsTopicContainer.cpp
browserui/browser/FeedsSrc/FeedsTopicView.cpp
browserui/browser/Group/72browsericons.txt
browserui/browser/Group/bld.inf
browserui/browser/Group/browsericons.txt
browserui/browser/SettingsSrc/SettingsContainer.cpp
browserui/browser/SettingsSrc/SettingsView.cpp
browserui/browser/SrcData/Browser.rss
browserui/browser/SrcData/BrowserBookmarks.rssi
browserui/browser/SrcData/BrowserSettings.rssi
browserui/browser/SrcData/BrowserToolbar.hrh
browserui/browser/SrcData/bookmark_toolbar.rssi
browserui/browser/SrcData/browser_toolbar.rssi
browserui/browser/SrcData/feeds_toolbar.rssi
browserui/browser/data/qgn_indi_browser_tb_exit.svg
pushmtm/MtmUiSrc/PushSettingsDialog.cpp
--- a/browserplugins/browseraudiovideoplugin/data/BrowserAudioVideoPlugin.rls	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserplugins/browseraudiovideoplugin/data/BrowserAudioVideoPlugin.rls	Tue Feb 02 00:12:41 2010 +0200
@@ -19,7 +19,7 @@
 rls_string STRING_r_browser_audio_video_plugin "npBrowserAudioVideoPlugin.dll;Audio Video - Real Player Plugin"
 rls_string STRING_r_browser_audio_video_plugin_desc "Audio Video Plugin for S60 Browser"
 
-rls_string STRING_r_mime_application "application/vnd.nokia.ringing-tone;rng,dm,dcf|application/vnd.nokia.ringing-tone;nrt,dm,dcf|application/sdp;sdp|application/vnd.rn-realmedia;rm";
-rls_string STRING_r_mime_audio "audio/*;3gp,3g2,amr,au,aac,awb,dcf,dm,mid,midi,mxmf,mp3,m4a,mp4,ra,ram,rpm,rmf,spmid,wav,wma";
-rls_string STRING_r_mime_video "video/*;3gp,mpeg,ram,rm,rv,wmv";
-rls_string STRING_r_mime_wax_wvx_asx "audio/x-ms-wax;wax|audio/x-ms-wvx;wvx|video/x-ms-asf;asx";
+rls_string STRING_r_mime_application "application/vnd.nokia.ringing-tone;rng,dm,dcf|application/vnd.nokia.ringing-tone;nrt,dm,dcf|application/sdp;sdp|application/vnd.rn-realmedia;rm"
+rls_string STRING_r_mime_audio "audio/*;3gp,3g2,amr,au,aac,awb,dcf,dm,mid,midi,mxmf,mp3,m4a,mp4,ra,ram,rpm,rmf,spmid,wav,wma"
+rls_string STRING_r_mime_video "video/*;3gp,mpeg,ram,rm,rv,wmv"
+rls_string STRING_r_mime_wax_wvx_asx "audio/x-ms-wax;wax|audio/x-ms-wvx;wvx|video/x-ms-asf;asx"
--- a/browserplugins/browseraudiovideoplugin/src/BavpView.cpp	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserplugins/browseraudiovideoplugin/src/BavpView.cpp	Tue Feb 02 00:12:41 2010 +0200
@@ -19,6 +19,7 @@
 
 
 // INCLUDE FILES
+#include <browser_platform_variant.hrh>
 #include <AknUtils.h>
 #include <aknclearer.h>
 #include <AknBitmapAnimation.h>
@@ -58,6 +59,14 @@
     iBavPlugin = aBavPlugin;
     
 	CreateWindowL(aParent);
+#ifdef BRDO_MULTITOUCH_ENABLED_FF
+    if (AknLayoutUtils::PenEnabled()) {
+        DrawableWindow()->SetPointerGrab(ETrue);
+        EnableDragEvents();
+    }
+	//To enable advance pointer info for multi-touch
+   	Window().EnableAdvancedPointers();
+#endif 
 	ActivateL(); // Draws icon
 	iRect = aRect;
 	CCoeControl::SetRect( aRect ); // Calls SizeChanged
@@ -757,18 +766,31 @@
      * so we convert position of the pointer event here.
      */
     TPoint point(aPointerEvent.iPosition  + PositionRelativeToScreen());
-    TPointerEvent tmpEvent(aPointerEvent);
-    tmpEvent.iPosition = point;
-    
     NPNetscapeFuncs* funcs = iBavPlugin->getNPNFuncs();
-    
-    
-    if(funcs && funcs->setvalue)
-        {
-        (funcs->setvalue)(iBavPlugin->getNPP(), 
-                            (NPPVariable) NPPVPluginPointerEvent,
-                            (void*) &(tmpEvent));
+#ifdef BRDO_MULTITOUCH_ENABLED_FF
+    if (aPointerEvent.IsAdvancedPointerEvent()) {
+        TAdvancedPointerEvent tadvp = *(static_cast<const TAdvancedPointerEvent *>(&aPointerEvent));
+        tadvp.iPosition = point;
+        if(funcs && funcs->setvalue) {
+            (funcs->setvalue)(iBavPlugin->getNPP(), 
+                                (NPPVariable) NPPVPluginPointerEvent,
+                                (void*) &(tadvp));
         }
+
+    }
+    else {
+#endif 	
+        TPointerEvent event(aPointerEvent);
+        event.iPosition = point;
+        if(funcs && funcs->setvalue) {
+            (funcs->setvalue)(iBavPlugin->getNPP(), 
+                                (NPPVariable) NPPVPluginPointerEvent,
+                                (void*) &(event));
+      }
+#ifdef BRDO_MULTITOUCH_ENABLED_FF	  
+    }
+#endif 	
+ 
     }
 
 //  End of File
--- a/browserplugins/browsergpsplugin/data/GpsPlugin.rls	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserplugins/browsergpsplugin/data/GpsPlugin.rls	Tue Feb 02 00:12:41 2010 +0200
@@ -18,4 +18,4 @@
 
 rls_string STRING_r_browser_gps_plugin "npGpsPlugin.dll;Browser GPS Plugin"
 rls_string STRING_r_browser_gps_desc "GPS Plugin for S60 Browser"
-rls_string STRING_r_mime_gps "application/x-gps-widget";
+rls_string STRING_r_mime_gps "application/x-gps-widget"
--- a/browserplugins/browsersysteminfoplugin/data/SystemInfoPlugin.rls	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserplugins/browsersysteminfoplugin/data/SystemInfoPlugin.rls	Tue Feb 02 00:12:41 2010 +0200
@@ -18,7 +18,7 @@
 
 rls_string STRING_r_browser_system_info_plugin "npSystemInfoPlugin.dll;Browser System Info Plugin"
 rls_string STRING_r_browser_system_info_desc "System Information Plugin for S60 Browser"
-rls_string STRING_r_mime_system_info "application/x-systeminfo-widget";
+rls_string STRING_r_mime_system_info "application/x-systeminfo-widget"
 
 
 
--- a/browserui/browser/BrowserAppSrc/BrowserAppUi.cpp	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserui/browser/BrowserAppSrc/BrowserAppUi.cpp	Tue Feb 02 00:12:41 2010 +0200
@@ -246,8 +246,11 @@
 PERFLOG_STOPWATCH_START;
 
 
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF
+    BaseConstructL( EAknEnableSkin | EAknEnableMSK | EAknSingleClickCompatible);
+#else 
     BaseConstructL( EAknEnableSkin | EAknEnableMSK );
-
+#endif
     if ( !IsEmbeddedModeOn( ) )
     	{
     	InitBrowserL();
@@ -331,7 +334,12 @@
         BROWSER_LOG( ( _L( "Preferences up" ) ) );
 
         PERFLOG_STOPWATCH_START;
-        iConnection = CInternetConnectionManager::NewL( &iCommsModel->CommsDb(), EFalse );
+        #ifdef BRDO_OCC_ENABLED_FF
+          iConnection = CInternetConnectionManager::NewL( &iCommsModel->CommsDb(), ETrue );
+        #else
+          iConnection = CInternetConnectionManager::NewL( &iCommsModel->CommsDb(), EFalse );
+        #endif
+        	
         PERFLOG_STOP_WRITE("\t ConnMan NewL");
         BROWSER_LOG( ( _L( "ConnectionManager up" ) ) );
 
@@ -542,6 +550,13 @@
 												(TInt)TBrCtlDefs::ECommandIdBase );
             break;
             }
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF			
+        case EWmlCmdSetAsHomePage:
+            {
+            ContentView()->HandleCommandL(EWmlCmdSetAsHomePage);
+            break;
+            }
+#endif			
         case EAknSoftkeyBack:
         case EWmlCmdBack:
             {
--- a/browserui/browser/BrowserAppSrc/BrowserAppViewBase.cpp	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserui/browser/BrowserAppSrc/BrowserAppViewBase.cpp	Tue Feb 02 00:12:41 2010 +0200
@@ -32,6 +32,8 @@
 #include <StringLoader.h>
 #include "BrowserUtil.h"
 #include <browseruisdkcrkeys.h>
+#include <UTF.h>
+#include <charconv.h>
 // ================= MEMBER FUNCTIONS =======================
 
 // ---------------------------------------------------------
@@ -291,8 +293,8 @@
     TUid searchAppId( TUid::Uid( id ) );
     TApaTaskList taskList( CEikonEnv::Static()->WsSession() );
     TApaTask task = taskList.FindApp( searchAppId );
-    HBufC8* searchParam8 = HBufC8::NewLC( aSearchString.Length() + 1);
-    searchParam8->Des().Append( aSearchString );
+    HBufC8* searchParam8 = CnvUtfConverter::ConvertFromUnicodeToUtf8L( aSearchString );
+    CleanupStack::PushL( searchParam8 );
     if ( task.Exists() )
         {
         User::LeaveIfError( task.SendMessage( TUid::Uid( 0 ), *searchParam8 ) );
--- a/browserui/browser/BrowserAppSrc/BrowserContentView.cpp	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserui/browser/BrowserAppSrc/BrowserContentView.cpp	Tue Feb 02 00:12:41 2010 +0200
@@ -282,6 +282,19 @@
         }
     switch ( aCommand )
         {
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF		
+        case EWmlCmdSetAsHomePage:
+            {
+            HBufC* url = ApiProvider().BrCtlInterface().PageInfoLC(TBrCtlDefs::EPageInfoUrl);
+            if ( url && url->Length() && TBrowserDialogs::ConfirmQueryYesNoL(R_BROWSER_QUERY_SET_AS_HOME_PAGE))
+                {
+                ApiProvider().Preferences().SetHomePageUrlL(url->Des());
+                ApiProvider().Preferences().SetHomePageTypeL( EWmlSettingsHomePageAddress );
+                }
+            CleanupStack::PopAndDestroy(); // url
+            break;
+            } 
+#endif			      
         case EWmlCmdFavourites:
             {
             ApiProvider().SetViewToBeActivatedIfNeededL(
@@ -321,6 +334,14 @@
         case EWmlCmdGoToAddress:
 		case EWmlCmdGoToAddressAndSearch:
             {
+#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()->SetGotoPaneActiveL();
             LaunchGotoAddressEditorL();
             break;
@@ -1390,7 +1411,8 @@
             }
 
         // set as home page
-        aMenuPane->SetItemDimmed( EWmlCmdSetAsHomePage, ETrue);
+        //aMenuPane->SetItemDimmed( EWmlCmdSetAsHomePage, ETrue);
+
 
         // pop-up blocking
         if ( ApiProvider().IsEmbeddedModeOn() || ApiProvider().WindowMgr().CurrentWindow()->WMLMode())
--- a/browserui/browser/BrowserAppSrc/BrowserGotoPane.cpp	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserui/browser/BrowserAppSrc/BrowserGotoPane.cpp	Tue Feb 02 00:12:41 2010 +0200
@@ -55,6 +55,7 @@
 
 #include <StringLoader.h>
 
+const TInt KMaxTitleLength = 512;
 
 // ---------------------------------------------------------------------------
 // CBrowserGotoPane::NewL
@@ -1197,7 +1198,22 @@
         // Set the default text if not active//
         if ( ! iSearchPaneActive )
             {
-            SetSearchTextL( *iDefaultSearchText );
+            HBufC* searchProvider = HBufC::NewLC( KMaxTitleLength );
+            TPtr searchProviderPtr = searchProvider->Des();
+            iContentView->ApiProvider().Preferences().GetStringValueL( KBrowserSearchProviderTitle,
+                KMaxTitleLength , searchProviderPtr);
+            if( searchProvider->Length() == 0 )
+                {
+                 SetSearchTextL( *iDefaultSearchText );
+                }
+            else
+                {
+                SetSearchTextL( *searchProvider );
+                delete iDefaultSearchText;
+                iDefaultSearchText = NULL;
+                iDefaultSearchText = searchProvider->AllocL();
+                }
+            CleanupStack::PopAndDestroy(searchProvider);
             }
         iSearchInputFrame->ActivateL();
         }
@@ -1221,7 +1237,19 @@
         // if searchpane is empty add default text
         if ( !SearchTextLength() )
             {
-            SetSearchTextL( *iDefaultSearchText );
+            HBufC* searchProvider = HBufC::NewLC( KMaxTitleLength );
+            TPtr searchProviderPtr = searchProvider->Des();
+            iContentView->ApiProvider().Preferences().GetStringValueL( KBrowserSearchProviderTitle,
+                KMaxTitleLength , searchProviderPtr);
+            if( searchProvider->Length() == 0 )
+                {
+                SetSearchTextL( *iDefaultSearchText );
+                }
+            else
+                {
+                SetSearchTextL( *searchProvider );
+                }
+            CleanupStack::PopAndDestroy(searchProvider);
             }
 
         // if gotopane is empty add default text
--- a/browserui/browser/FavouritesSrc/BrowserAdaptiveListPopup.cpp	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserui/browser/FavouritesSrc/BrowserAdaptiveListPopup.cpp	Tue Feb 02 00:12:41 2010 +0200
@@ -120,6 +120,9 @@
 //
 void CBrowserPopupList::SetHighLight(TBool aHighLight)
     {
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF
+    iItemDrawer->SetFlags( CListItemDrawer::ESingleClickEnabled );
+#endif    
     iListBoxFlags = ( aHighLight ?  iListBoxFlags &~ CEikListBox::EDisableHighlight : iListBoxFlags | CEikListBox::EDisableHighlight );
     if ( aHighLight )
         {
@@ -220,7 +223,11 @@
     CreateWindowL();
 //-------- list ------
     iList = new(ELeave) CBrowserPopupList( iParentType );
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF
+    iList->ConstructL( this , CEikListBox::EDisableItemSpecificMenu );
+#else
     iList->ConstructL( this , CEikListBox::ELeftDownInViewRect );
+#endif
     iList->SetContainerWindowL( *this );
     if (iTouchSupported)
         {
@@ -320,6 +327,9 @@
                 }
                 break;
             case  MEikListBoxObserver::EEventItemClicked:
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF                
+            case  MEikListBoxObserver::EEventItemSingleClicked:      
+#endif                
                 HandleItemClickedL( aListBox );
                 break;
             default:
--- a/browserui/browser/FavouritesSrc/BrowserBookmarksContainer.cpp	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserui/browser/FavouritesSrc/BrowserBookmarksContainer.cpp	Tue Feb 02 00:12:41 2010 +0200
@@ -50,6 +50,7 @@
 
 /// Tab index for Bookmarks View.
 LOCAL_D const TInt KBookmarkTabIndex = 0;
+const TInt KMaxTitleLength = 512;
 
 // ================= MEMBER FUNCTIONS =======================
 
@@ -123,7 +124,22 @@
             CleanupStack::PushL( text );
             if ( !text->Length() )
                 {
-                iSearchPane->SetTextL( *iDefaultSearchText );
+                //TODO: read possible title valu from cenrep, if not found seyt the default text
+                HBufC* searchProvider = HBufC::NewLC( KMaxTitleLength );
+                TPtr searchProviderPtr = searchProvider->Des();
+        
+                View().ApiProvider().Preferences().GetStringValueL( KBrowserSearchProviderTitle,
+                    KMaxTitleLength , searchProviderPtr);
+                if( searchProvider->Length() == 0 )
+                    {
+                    iSearchPane->SetTextL( *iDefaultSearchText );
+                    }
+                else
+                    {
+                    iSearchPane->SetTextL( searchProviderPtr );
+                    }
+                CleanupStack::PopAndDestroy(searchProvider);
+                
                 }
             CleanupStack::PopAndDestroy( text );
             }
--- a/browserui/browser/FavouritesSrc/BrowserBookmarksGotoPane.cpp	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserui/browser/FavouritesSrc/BrowserBookmarksGotoPane.cpp	Tue Feb 02 00:12:41 2010 +0200
@@ -47,6 +47,7 @@
 #include "BrowserFavouritesView.h"
 #include "Preferences.h"
 #include <Featmgr.h>
+#include "BrowserUiSDKCRKeys.h"
 
 #include <eikpriv.rsg>
 #include <BARSREAD.H>
@@ -64,7 +65,7 @@
 const TInt EParentAbsolute = 0x02;
 const TInt KRightSpace = 10; //space in pixels left at the end of text editor.
 // CONSTANTS
-
+const TInt KMaxTitleLength = 512;
 _LIT(KAddressText,"http://www.");
 
 // ================= MEMBER FUNCTIONS =======================
@@ -580,7 +581,20 @@
     TBool searchFeature = iView->ApiProvider().Preferences().SearchFeature();
     if ( searchFeature )
         {
-        iDefaultSearchText = StringLoader::LoadL( R_IS_WEB_SEARCH );
+        HBufC* searchProvider = HBufC::NewLC( KMaxTitleLength );
+        TPtr searchProviderPtr = searchProvider->Des();
+
+        iView->ApiProvider().Preferences().GetStringValueL( KBrowserSearchProviderTitle,
+            KMaxTitleLength , searchProviderPtr);
+        if( searchProvider->Length() == 0 )
+            {
+            iDefaultSearchText = StringLoader::LoadL( R_IS_WEB_SEARCH );
+            }
+        else
+            {
+            iDefaultSearchText = searchProvider->AllocL();
+            }
+        CleanupStack::PopAndDestroy(searchProvider);
         }
 
     //adaptive popuplist
--- a/browserui/browser/FavouritesSrc/BrowserBookmarksView.cpp	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserui/browser/FavouritesSrc/BrowserBookmarksView.cpp	Tue Feb 02 00:12:41 2010 +0200
@@ -494,6 +494,14 @@
             {
             iSoftKeyUpdate = EFalse;
             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()->SetGotoActiveL();
             break;
             }
@@ -1158,8 +1166,15 @@
         {
         switch ( aEventType )
             {
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF
+            case MEikListBoxObserver::EEventEmptyListClicked:
+                return;
+#endif
             case MEikListBoxObserver::EEventEnterKeyPressed:
             case MEikListBoxObserver::EEventItemDoubleClicked:
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF
+            case MEikListBoxObserver::EEventItemSingleClicked:
+#endif                
                 {
                 if ( iManualItemMovingGoingOn )
                     {
@@ -1235,16 +1250,30 @@
                 {
                 aMenuPane->SetItemDimmed( EWmlCmdManageBookmarks, ETrue );
                 }
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF
+            // add bookmark
+            if ( iInAdaptiveBookmarksFolder )
+                {
+                aMenuPane->SetItemDimmed( EWmlCmdAddBookmark, ETrue );
+                }
+
+            // create folder
+            if ( iCurrentFolder != KFavouritesRootUid || iInAdaptiveBookmarksFolder )
+                {
+                aMenuPane->SetItemDimmed( EWmlCmdNewFolder, ETrue );
+                }
+#endif    
 
             if ( iInAdaptiveBookmarksFolder && aState.IsEmpty() )
                 {
                 aMenuPane->SetItemDimmed( EWmlCmdBmActions, ETrue );
                 }
-
+#ifndef BRDO_SINGLE_CLICK_ENABLED_FF
             if (!item)
                 {
                 aMenuPane->SetItemDimmed( EWmlCmdMarkUnmark, ETrue );
                 }
+#endif				
 /*
             if (BRDO_BROWSER_UPDATE_UI_FF)
                {
@@ -1327,13 +1356,13 @@
 
                 aMenuPane->SetItemDimmed( EWmlCmdSetAsHomePage, dimSaveAsHomePage );
                 }
-
+#ifndef BRDO_SINGLE_CLICK_ENABLED_FF
             // add bookmark
             if ( iInAdaptiveBookmarksFolder )
                 {
                 aMenuPane->SetItemDimmed( EWmlCmdAddBookmark, ETrue );
                 }
-
+#endif            
             // set preferred/unpreferred
             if ( !iContainer->Listbox()->CurrentItem() )
                 {
@@ -1421,13 +1450,13 @@
                 {
                 aMenuPane->SetItemDimmed( EWmlCmdMoveToFolder, ETrue );
                 }
-
+#ifndef BRDO_SINGLE_CLICK_ENABLED_FF
             // create folder
             if ( iCurrentFolder != KFavouritesRootUid || iInAdaptiveBookmarksFolder )
                 {
                 aMenuPane->SetItemDimmed( EWmlCmdNewFolder, ETrue );
                 }
-
+#endif            
 
             break;
             }
--- a/browserui/browser/FavouritesSrc/BrowserFavouritesView.cpp	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserui/browser/FavouritesSrc/BrowserFavouritesView.cpp	Tue Feb 02 00:12:41 2010 +0200
@@ -649,6 +649,9 @@
             {
             case MEikListBoxObserver::EEventEnterKeyPressed:
             case MEikListBoxObserver::EEventItemDoubleClicked:
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF                
+            case MEikListBoxObserver::EEventItemSingleClicked:    
+#endif                
                 {
                 if ( iContainer->Listbox()->CurrentItem() )
                     {
--- a/browserui/browser/FeedsSrc/FeedsFeedView.cpp	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserui/browser/FeedsSrc/FeedsFeedView.cpp	Tue Feb 02 00:12:41 2010 +0200
@@ -172,7 +172,7 @@
             break;
 
 		case EFeedsSeeFullStory:
-            iContainer->iBrowserControl->HandleCommandL(TBrCtlDefs::ECommandOpen);
+            iContainer->iBrowserControl->HandleCommandL((TBrCtlDefs::ECommandIdBase + TBrCtlDefs::ECommandOpen));
             break;
 
         default:
--- a/browserui/browser/FeedsSrc/FeedsFolderContainer.cpp	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserui/browser/FeedsSrc/FeedsFolderContainer.cpp	Tue Feb 02 00:12:41 2010 +0200
@@ -336,9 +336,19 @@
 void CFeedsFolderContainer::HandleListBoxEventL(CEikListBox* /*aListBox*/, 
         TListBoxEvent aEventType)
     {
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF    
+    if (aEventType == MEikListBoxObserver::EEventEmptyListClicked)
+        {
+            return;
+        }
+#endif    
     // An item was selected.
     if ((aEventType == MEikListBoxObserver::EEventEnterKeyPressed) ||
-        (aEventType == MEikListBoxObserver::EEventItemDoubleClicked))
+        (aEventType == MEikListBoxObserver::EEventItemDoubleClicked)
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF		
+		 || (aEventType == MEikListBoxObserver::EEventItemSingleClicked)
+#endif		 
+		 )
         {
         if ( iMoveActive )
             {
--- a/browserui/browser/FeedsSrc/FeedsFolderView.cpp	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserui/browser/FeedsSrc/FeedsFolderView.cpp	Tue Feb 02 00:12:41 2010 +0200
@@ -79,8 +79,10 @@
     {
     BaseConstructL(R_FEEDS_FOLDER_VIEW);
     
+#ifndef BRDO_SINGLE_CLICK_ENABLED_FF	
     iContainer = CFeedsFolderContainer::NewL( this, ApiProvider(), aRect );
     iContainer->MakeVisible(EFalse);
+#endif	
     
     if(iPenEnabled)
         {
@@ -347,6 +349,7 @@
         iApiProvider.FeedsClientUtilities().AddCascadeL(*aMenuPane,EFeedsOptionsGoto,
             R_FEEDS_OPTIONS_GOTO, R_FEEDS_OPTIONS_GOTO_SUBMENU);
 
+#ifndef BRDO_SINGLE_CLICK_ENABLED_FF
         iApiProvider.FeedsClientUtilities().AddCascadeL(*aMenuPane,EFeedsOptionsFeedsActions,
             R_FEEDS_OPTIONS_FEEDSACTIONS, R_FEEDS_OPTIONS_FEEDSACTIONS_SUBMENU);
 
@@ -360,11 +363,60 @@
             iApiProvider.FeedsClientUtilities().AddCascadeL(*aMenuPane,EFeedsOptionsMarkUnmark,
                 R_FEEDS_OPTIONS_MARKUNMARK, R_FEEDS_OPTIONS_MARKUNMARK_SUBMENU);
             }
-
+#else
         // ie, privacy submenu
         //iApiProvider.FeedsClientUtilities().AddCascadeL(*aMenuPane,EFeedsOptionsClear,
         //    R_FEEDS_OPTIONS_CLEAR, R_FEEDS_OPTIONS_CLEAR_SUBMENU);
         
+        iApiProvider.FeedsClientUtilities().AddItemL( *aMenuPane, EFeedsUpdateAll, R_FEEDS_UPDATE_ALL);
+        iApiProvider.FeedsClientUtilities().AddItemL( *aMenuPane, EFeedsNewFeed, R_FEEDS_NEW_FEED);
+        if(iContainer->iCurrentFolder && ( iContainer->iCurrentFolder == iRootFolder) )
+        iApiProvider.FeedsClientUtilities().AddItemL( *aMenuPane, EFeedsNewFolder, R_OPTIONS_ORG_NEW_FOLDER);
+        iApiProvider.FeedsClientUtilities().AddItemL( *aMenuPane, EFeedsImport, R_OPTIONS_IMPORT_FEEDS);
+        if( item && iContainer->iCurrentFolder )
+            {
+            if ( (item->GetType() == EFolder) )
+                {
+                iApiProvider.FeedsClientUtilities().AddItemL(*aMenuPane, EFeedsRename, R_FLDR_RENAME);
+                aMenuPane->SetItemSpecific(EFeedsRename,ETrue);
+                iApiProvider.FeedsClientUtilities().AddItemL(*aMenuPane, EFeedsMove, R_OPTIONS_ORG_MOVE);
+                aMenuPane->SetItemSpecific(EFeedsMove,ETrue);
+                iApiProvider.FeedsClientUtilities().AddItemL(*aMenuPane, EFeedsDelete, R_FEEDS_DELETE);
+                aMenuPane->SetItemSpecific(EFeedsDelete,ETrue);
+                }
+        else
+            {
+            // Update (only if feed has focus)
+            iApiProvider.FeedsClientUtilities().AddItemL(*aMenuPane, EFeedsUpdate, R_FEEDS_UPDATE);
+            aMenuPane->SetItemSpecific(EFeedsUpdate,ETrue);
+            iApiProvider.FeedsClientUtilities().AddItemL(*aMenuPane, EFeedsExport, R_OPTIONS_EXPORT_FEEDS);
+            aMenuPane->SetItemSpecific(EFeedsExport,ETrue);
+            iApiProvider.FeedsClientUtilities().AddItemL(*aMenuPane, EFeedsEdit, R_FEEDS_EDIT);
+            aMenuPane->SetItemSpecific(EFeedsEdit,ETrue);
+            iApiProvider.FeedsClientUtilities().AddItemL(*aMenuPane, EFeedsDelete, R_FEEDS_DELETE);
+            aMenuPane->SetItemSpecific(EFeedsDelete,ETrue);
+            
+            if ( iContainer &&
+                             iContainer->iCurrentFolder &&
+                         iContainer->iCurrentFolder->GetChildren().Count() >= 2 )
+                            {
+                            iApiProvider.FeedsClientUtilities().AddItemL(*aMenuPane, EFeedsMove, R_OPTIONS_ORG_MOVE);
+                            aMenuPane->SetItemSpecific(EFeedsMove,ETrue);
+                            }
+            if (!(item->GetType() == EFolder))
+               {            
+               TInt folderCount = 0;
+               iContainer->CountFolderFolders(iContainer->iRootFolder, folderCount);
+               if(iContainer && (folderCount> 0) && !iContainer->IsMarkedItemFolder())
+                   {   
+                   iApiProvider.FeedsClientUtilities().AddItemL(*aMenuPane, EFeedsMoveToFolder, R_OPTIONS_ORG_MOVE_TO_FOLDER);
+                   aMenuPane->SetItemSpecific(EFeedsMoveToFolder,ETrue); 
+                   }            
+               }
+            }
+       }
+#endif	   
+                        
         iApiProvider.FeedsClientUtilities().AddCascadeL(*aMenuPane,EFeedsOptionsClear,
             R_FEEDS_OPTIONS_CLEAR, R_CLEAR_SUBMENU);
         }
--- a/browserui/browser/FeedsSrc/FeedsTopicContainer.cpp	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserui/browser/FeedsSrc/FeedsTopicContainer.cpp	Tue Feb 02 00:12:41 2010 +0200
@@ -230,7 +230,11 @@
     {
     // An item was selected.
     if ((aEventType == MEikListBoxObserver::EEventEnterKeyPressed) ||
-        (aEventType == MEikListBoxObserver::EEventItemDoubleClicked))
+        (aEventType == MEikListBoxObserver::EEventItemDoubleClicked) 
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF        
+        || (aEventType == MEikListBoxObserver::EEventItemSingleClicked)
+#endif        
+        )
         {
         HandleOpenL();
         }
--- a/browserui/browser/FeedsSrc/FeedsTopicView.cpp	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserui/browser/FeedsSrc/FeedsTopicView.cpp	Tue Feb 02 00:12:41 2010 +0200
@@ -75,14 +75,16 @@
 void CFeedsTopicView::ConstructL(TRect& aRect)
     {
     BaseConstructL(R_FEEDS_TOPIC_VIEW);
-    
+
+#ifndef BRDO_SINGLE_CLICK_ENABLED_FF
     iContainer = CFeedsTopicContainer::NewL( this, ApiProvider(), aRect );
     iContainer->MakeVisible(EFalse);
-        
+    
     if(iPenEnabled)
         {
-        Toolbar()->SetToolbarObserver(this);;        
+        Toolbar()->SetToolbarObserver(this);       
         }
+#endif    
     }
 
 
@@ -180,6 +182,14 @@
         TUid /*aCustomMessageId*/, const TDesC8& /*aCustomMessage*/)
     {
 
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF
+    if (!iContainer)
+        {
+        iContainer = CFeedsTopicContainer::NewL( this, ApiProvider(), ClientRect() );
+        iContainer->MakeVisible(EFalse);
+        }
+    Toolbar()->SetToolbarVisibility(EFalse,EFalse);
+#endif    
     // If need be, add the container to the control stack.
     if (!iContainerOnStack)
         {
@@ -276,6 +286,10 @@
 
 void CFeedsTopicView::UpdateToolbarButtonsState()
     {
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF
+    Toolbar()->SetToolbarVisibility(EFalse,EFalse);
+    return;
+#endif    
     if (iApiProvider.IsPageLoaded())
         {
         Toolbar()->SetItemDimmed(EFeedsBackToPage, EFalse, ETrue);     
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/browserui/browser/Group/72browsericons.txt	Tue Feb 02 00:12:41 2010 +0200
@@ -0,0 +1,101 @@
+-c8,8 qgn_indi_find_goto
+-c8,1 qgn_prop_wml_bm_tab2
+-c8,1 qgn_prop_wml_pages_tab2
+-c8,1 qgn_prop_wml_home
+-c8,1 qgn_prop_wml_bm_last
+-c8,1 qgn_prop_wml_bm
+-c8,1 qgn_prop_wml_page
+-c8,1 qgn_indi_wml_csd_add
+-c8,1 qgn_indi_wml_hscsd_add
+-c8,1 qgn_indi_wml_gprs_add
+-c8,1 qgn_prop_folder
+-c8,1 qgn_prop_wml_folder_link_seamless
+-c8,1 qgn_prop_wml_folder_adap
+-c8,1 qgn_prop_wml_bm_adap
+-c8,1 qgn_prop_psln_active
+-c8,8 qgn_prop_folder_tab1
+-c8,8 qgn_menu_wml_02
+-c8,8 qgn_menu_wml_03
+-c8,8 qgn_menu_wml_04
+-c8,8 qgn_menu_wml_05
+-c8,8 qgn_menu_wml_06
+-c8,8 qgn_menu_wml_07
+-c8,8 qgn_menu_wml_08
+-c8,8 qgn_menu_wml_09
+-c8,8 qgn_menu_wml_10
+-c8,8 qgn_menu_wml_11
+-c8,8 qgn_menu_wml_12
+-c8,8 qgn_menu_wml_13
+-c8,8 qgn_menu_wml_14
+-c8,8 qgn_menu_wml_15
+-c8,8 qgn_menu_wml_16
+-c8,1 qgn_indi_wait_wml_csd_1
+-c8,1 qgn_indi_wait_wml_csd_2
+-c8,1 qgn_indi_wait_wml_csd_3
+-c8,1 qgn_indi_wait_wml_csd_4
+-c8,1 qgn_indi_wait_wml_csd_5
+-c8,1 qgn_indi_wait_wml_csd_6
+-c8,1 qgn_indi_wait_wml_csd_7
+-c8,1 qgn_indi_wait_wml_hscsd_2
+-c8,1 qgn_indi_wait_wml_hscsd_3
+-c8,1 qgn_indi_wait_wml_hscsd_4
+-c8,1 qgn_indi_wait_wml_hscsd_5
+-c8,1 qgn_indi_wait_wml_hscsd_6
+-c8,1 qgn_indi_wait_wml_gprs_2
+-c8,1 qgn_indi_wait_wml_gprs_3
+-c8,1 qgn_indi_wait_wml_gprs_4
+-c8,1 qgn_indi_wait_wml_gprs_5
+-c8,1 qgn_indi_wait_wml_gprs_6
+-c8,8 qgn_menu_wml_lst	
+-c8,1 qgn_prop_file_rss
+-c8,1 qgn_prop_file_rss_new
+-c8,1 qgn_prop_folder_rss
+-c8,1 qgn_prop_file_rss_unread
+-c8,1 qgn_prop_file_rss_read
+-c8,1 qgn_indi_button_decrease
+-c8,1 qgn_indi_browser_tb_go
+-c8,1 qgn_indi_browser_tb_home
+-c8,8 qgn_indi_browser_tb_help
+-c8,8 qgn_indi_browser_tb_switch_win
+-c8,8 qgn_indi_browser_tb_save_page
+-c8,8 qgn_indi_browser_tb_view_images
+-c8,8 qgn_indi_browser_tb_view_pages
+-c8,8 qgn_indi_browser_tb_bm
+-c8,8 qgn_indi_browser_tb_rotate
+-c8,8 qgn_indi_browser_tb_settings
+-c8,8 qgn_indi_browser_tb_zoom_out
+-c8,8 qgn_indi_browser_tb_zoom_in
+-c8,8 qgn_indi_browser_tb_find_kw
+-c8,8 qgn_indi_browser_tb_save_bm
+-c8,8 qgn_indi_browser_tb_goto
+-c8,8 qgn_indi_browser_tb_tb
+-c8,8 qgn_indi_browser_tb_key_map
+-c8,8 qgn_indi_browser_tb_page
+-c8,8 qgn_indi_browser_tb_reload
+-c8,8 qgn_indi_browser_tb_find
+-c8,8 qgn_indi_browser_tb_rss
+-c8,8 qgn_indi_browser_tb_back
+-c8,8 qgn_indi_browser_tb_forward
+-c8,8 qgn_indi_browser_feeds_tb_back_to_web
+-c8,8 qgn_indi_browser_feeds_tb_next
+-c8,8 qgn_indi_browser_feeds_tb_open_detail
+-c8,8 qgn_indi_browser_feeds_tb_open_full
+-c8,8 qgn_indi_browser_feeds_tb_open_topic
+-c8,8 qgn_indi_browser_feeds_tb_previous
+-c8,8 qgn_indi_browser_feeds_tb_update
+-c8,8 qgn_indi_browser_feeds_tb_update_all
+-c8,8 qgn_indi_browser_tb_find_kw_next
+-c8,8 qgn_indi_browser_tb_find_kw_prev
+-c8,8 qgn_indi_browser_tb_feeds
+-c8,8 qgn_indi_browser_bm_tb_new
+-c8,8 qgn_indi_browser_tb_delete
+-c8,8 qgn_indi_button_exit_fs
+-c8,8 qgn_indi_browser_tb_history_back
+-c8,8 qgn_indi_browser_tb_history_fw
+-c8,8 qgn_prop_folder_rss_error
+-c8,8 qgn_prop_file_rss_error
+-c8,8 qgn_indi_browser_tb_send_url
+-c8,8 qgn_indi_browser_tb_goto_and_search.svg
+-c8,8 qgn_prop_browser_info_small.svg
+-c8,8 qgn_indi_browser_tb_exit.svg
+
--- a/browserui/browser/Group/bld.inf	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserui/browser/Group/bld.inf	Tue Feb 02 00:12:41 2010 +0200
@@ -104,7 +104,11 @@
 START EXTENSION s60/mifconv
 OPTION TARGETFILE browser.mif
 OPTION HEADERFILE browser.mbg
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF    
+OPTION SOURCEFILE 72browsericons.txt
+#else 	
 OPTION SOURCEFILE browsericons.txt
+#endif	
 END
 START EXTENSION s60/mifconv
 OPTION TARGETFILE browserng_aif.mif
--- a/browserui/browser/Group/browsericons.txt	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserui/browser/Group/browsericons.txt	Tue Feb 02 00:12:41 2010 +0200
@@ -97,4 +97,3 @@
 -c8,8 qgn_indi_browser_tb_send_url
 -c8,8 qgn_indi_browser_tb_goto_and_search.svg
 -c8,8 qgn_prop_browser_info_small.svg
-
--- a/browserui/browser/SettingsSrc/SettingsContainer.cpp	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserui/browser/SettingsSrc/SettingsContainer.cpp	Tue Feb 02 00:12:41 2010 +0200
@@ -241,12 +241,14 @@
     iSettingIndex->AppendL( EWmlSettingsPrivacy );
 
 #ifdef __RSS_FEEDS
+    #if !defined(BRDO_OCC_ENABLED_FF)
     // Web feeds Category item
     if (!ApiProvider().IsEmbeddedModeOn())
         {
         AddCategoryListBoxItemL( R_SETTINGS_CATEGORY_WEBFEEDS, *itemArray );
         iSettingIndex->AppendL( EWmlSettingsWebFeeds );
         }
+    #endif
 #endif // __RSS_FEEDS
 
     
@@ -368,7 +370,10 @@
     // Default Access Point
     if ( !ApiProvider().Preferences().CustomAccessPointDefined() )
         {
+        #if !defined(BRDO_OCC_ENABLED_FF)
+        //Access point setting is not required if OCC is enabled
         AppendDefaultAccessPointL( itemArray, itemText );
+        #endif
         }
 
     // Home Page
@@ -3359,6 +3364,7 @@
 //
 void CSettingsContainer::HandleListBoxEventL(CEikListBox* aListBox,TListBoxEvent aEventType)
     {
+    TKeyResponse ret = EKeyWasNotConsumed;
     if (iPenEnabled)
         {
         if (iSettingListBox && aListBox == iSettingListBox)
@@ -3378,6 +3384,77 @@
                     CCoeEnv::Static()->SimulateKeyEventL( keyEvent, EEventKey );
                     }
                     break;
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF					
+                case MEikListBoxObserver::EEventItemSingleClicked:
+
+                    switch ( iSettingIndex->At( iSettingListBox->CurrentItemIndex() ) )
+                        {
+                        case EWmlSettingsGeneral:
+                        case EWmlSettingsPrivacy:
+                        case EWmlSettingsPage:
+                        case EWmlSettingsWebFeeds:
+                        case EWmlSettingsToolbar:
+                        case EWmlSettingsShortcuts:
+                        {
+                            DisplayCorrectSettingCategoryListL();
+                            break;
+                        }
+                        
+                        // Individual Settings
+                        case EWmlSettingsAccesspoint:
+                        case EWmlSettingsHomePage:
+                        case EWmlSettingsBackList:
+                        case EWmlSettingsHttpSecurityWarnings:
+                        case EWmlSettingsEcma:
+                        case EWmlSettingsScriptLog:
+                        case EWmlSettingsDownloadsOpen:
+                        case EWmlSettingsAutoLoadContent:
+                        case EWmlSettingsFullScreen:
+                        case EWmlSettingsPageOverview:
+                        case EWmlSettingsMediaVolume:
+                        case EWmlSettingsEncoding:
+                        case EWmlSettingsPopupBlocking:
+                        case EWmlSettingsAutoRefresh:
+                        case EWmlSettingsAdaptiveBookmarks:
+                        case EWmlSettingsFormDataSaving:
+        #ifdef __WIM
+                        case EWmlSettingsSaveReceipt:
+        #endif
+                        case EWmlSettingsCookies:
+                        case EWmlSettingsIMEINotification:
+                        case EWmlSettingsAutomaticUpdatingAP:
+                        case EWmlSettingsAutomaticUpdatingWhileRoaming:
+                        case EWmlSettingsUrlSuffix:
+                        case EWmlSettingsFontSize:
+                        case EWmlSettingsToolbarButton1Cmd:
+                        case EWmlSettingsToolbarButton2Cmd:
+                        case EWmlSettingsToolbarButton3Cmd:
+                        case EWmlSettingsToolbarButton4Cmd:
+                        case EWmlSettingsToolbarButton5Cmd:
+                        case EWmlSettingsToolbarButton6Cmd:
+                        case EWmlSettingsToolbarButton7Cmd:
+                        case EWmlSettingsShortCutKey1Cmd:
+                        case EWmlSettingsShortCutKey2Cmd:
+                        case EWmlSettingsShortCutKey3Cmd:
+                        case EWmlSettingsShortCutKey4Cmd:
+                        case EWmlSettingsShortCutKey5Cmd:
+                        case EWmlSettingsShortCutKey6Cmd:
+                        case EWmlSettingsShortCutKey7Cmd:
+                        case EWmlSettingsShortCutKey8Cmd:
+                        case EWmlSettingsShortCutKey9Cmd:
+                        case EWmlSettingsShortCutKey0Cmd:
+                        case EWmlSettingsShortCutKeyStarCmd:
+                        case EWmlSettingsShortCutKeyHashCmd:
+                        case EWmlSettingsSearchProvider:
+                        {
+                            ChangeItemL( ETrue );
+                            ret = EKeyWasConsumed;
+                            break;
+                        }
+                        default:
+                            break;
+                        }	
+#endif					
                 default:
                     break;
                 }
--- a/browserui/browser/SettingsSrc/SettingsView.cpp	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserui/browser/SettingsSrc/SettingsView.cpp	Tue Feb 02 00:12:41 2010 +0200
@@ -291,6 +291,7 @@
 // ---------------------------------------------------------------------------
 void CBrowserSettingsView::DynInitMenuPaneL( TInt aResourceId, CEikMenuPane* aMenuPane )
     {
+#ifndef BRDO_SINGLE_CLICK_ENABLED_FF					    	
     if ( aResourceId == R_BROWSER_SETTINGS_SETTINGS_MENU )    
         {
         // Show the appropriate menu items, depending on whether
@@ -305,7 +306,7 @@
             }
 
         }
-        
+#endif        
     }
 
 // ---------------------------------------------------------------------------
--- a/browserui/browser/SrcData/Browser.rss	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserui/browser/SrcData/Browser.rss	Tue Feb 02 00:12:41 2010 +0200
@@ -441,6 +441,7 @@
         MENU_ITEM
             {
             cascade = r_help_submenu;
+            command = EAknCmdHelp;
             txt = qtn_browser_options_help;
             },
         MENU_ITEM
--- a/browserui/browser/SrcData/BrowserBookmarks.rssi	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserui/browser/SrcData/BrowserBookmarks.rssi	Tue Feb 02 00:12:41 2010 +0200
@@ -76,24 +76,45 @@
             cascade = r_goto_submenu;
             txt = qtn_browser_options_goto;
             },
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF       
+        MENU_ITEM
+            {
+            command = EWmlCmdAddBookmark;
+            txt = text_wmlbm_option_enter_new;
+            },
+        
+        MENU_ITEM 
+            { 
+            command = EWmlCmdNewFolder; 
+            txt = qtn_options_org_new_folder; 
+            },
+#endif
         MENU_ITEM
             {
             cascade = r_bmactions_submenu;
             command = EWmlCmdBmActions;
             txt = qtn_browser_options_bmactions;
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF	    
+	    flags = EEikMenuItemSpecific;
+#endif	    
             },
         MENU_ITEM
             {
             cascade = r_bookmarks_edit_submenu;
             command = EWmlCmdManageBookmarks;
             txt = qtn_wmlbm_manage_bm;
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF	    
+	    flags = EEikMenuItemSpecific;
+#endif	    
             },
+#ifndef BRDO_SINGLE_CLICK_ENABLED_FF	   
         MENU_ITEM
             {
             cascade = r_browser_favourites_menu_pane_mark_unmark;
             command = EWmlCmdMarkUnmark;
             txt = qtn_browser_options_markunmark;
             },
+#endif            
         MENU_ITEM 
             { 
             cascade = r_clear_submenu; 
@@ -164,12 +185,15 @@
             {
             command = EWmlCmdMoveToFolder;
             txt = qtn_options_org_move_to_folder;
-            },
+            }
+#ifndef BRDO_SINGLE_CLICK_ENABLED_FF
+	,	    
         MENU_ITEM 
             { 
             command = EWmlCmdNewFolder; 
             txt = qtn_options_org_new_folder; 
             }
+#endif	    
          };
     }
 
@@ -187,7 +211,9 @@
 		MENU_ITEM { command = EWmlCmdSendAddressViaUnifiedMessage; txt=qtn_options_send_via; },
 		MENU_ITEM { command = EWmlCmdSendBookmarkViaUnifiedMessage; txt =qtn_options_send_via; },
 		MENU_ITEM { command = EWmlCmdSetAsHomePage; txt=qtn_browserbm_list_set_as_home_page_sm; },
+#ifndef BRDO_SINGLE_CLICK_ENABLED_FF		
         MENU_ITEM { command = EWmlCmdAddBookmark; txt = text_wmlbm_option_enter_new; },
+#endif	
         MENU_ITEM { command = EWmlCmdCopyToBookmarks; txt = qtn_browserbm_options_copy_to_bookmarks_sm; },
         MENU_ITEM { command = EWmlCmdSetPreferredBookmark; txt = qtn_browserbm_list_set_as_preferred; },
         MENU_ITEM { command = EWmlCmdSetUnPreferredBookmark; txt = qtn_browserbm_list_unset_from_preferred; }
--- a/browserui/browser/SrcData/BrowserSettings.rssi	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserui/browser/SrcData/BrowserSettings.rssi	Tue Feb 02 00:12:41 2010 +0200
@@ -97,8 +97,10 @@
  {
     items=
   {
+#ifndef BRDO_SINGLE_CLICK_ENABLED_FF
   MENU_ITEM { command=EWmlCmdSettingsOpen; txt=qtn_options_open; },
         MENU_ITEM { command=EWmlCmdSettingsChange; txt=qtn_wmls_local_set_opt_change; },
+#endif	
  MENU_ITEM {cascade = r_help_submenu; txt=qtn_options_help;},
         MENU_ITEM { command=EWmlCmdUserExit; txt=qtn_options_exit; }
   };
@@ -148,7 +150,11 @@
 //
 RESOURCE AVKON_SETTING_PAGE r_radio_button_setting_page
  { 
+#ifndef BRDO_SINGLE_CLICK_ENABLED_FF
  softkey_resource = R_AVKON_SOFTKEYS_OK_CANCEL__OK;
+#else
+ softkey_resource = R_AVKON_SOFTKEYS_CANCEL;
+#endif 
  type =  EAknSetListBox;
  editor_resource_id= r_setting_app_listbox;
  }
--- a/browserui/browser/SrcData/BrowserToolbar.hrh	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserui/browser/SrcData/BrowserToolbar.hrh	Tue Feb 02 00:12:41 2010 +0200
@@ -21,8 +21,9 @@
 #ifndef BROWSERTOOLBAR_HRH
 #define BROWSERTOOLBAR_HRH
 
+#include <browser_platform_variant.hrh>
+#include <AknsConstants.hrh>
 
-#include <AknsConstants.hrh>
 
 //----------------------------------------------------
 //
@@ -362,5 +363,14 @@
     bmbSkinIdMajor = EAknsMajorGeneric;
     bmbSkinIdMinor = EAknsMinorGenericQgnIndiBrowserTbGotoAndSearch;
     //skin KAknsIIDQgnIndiBrowserTbGotoAndSearch
+    }                                   
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF    
+
+RESOURCE AVKON_BUTTON_STATE_EXTENSION r_browser_ext_qgn_indi_browser_tb_exit
+    {
+    bmbSkinIdMajor = EAknsMajorGeneric;
+    bmbSkinIdMinor = EAknsMinorGenericQgnIndiBrowserTbExit;
+    //skin KAknsIIDQgnIndiBrowserTbGotoAndSearch
     }
+#endif    
 #endif // BROWSERTOOLBAR_HRH
--- a/browserui/browser/SrcData/bookmark_toolbar.rssi	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserui/browser/SrcData/bookmark_toolbar.rssi	Tue Feb 02 00:12:41 2010 +0200
@@ -104,7 +104,31 @@
                     };
                 };
             }, 
-        TBAR_CTRL
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF	    
+            TBAR_CTRL
+                        {
+                        type = EAknCtButton;
+                        id = EWmlCmdPreferences;     
+                        
+                        control = AVKON_BUTTON
+                            {
+                            flags = 0;
+                            states = 
+                                {
+                                AVKON_BUTTON_STATE
+                                    {
+                                    txt     = "";  //Icon should always be visible instead of this
+                                    helptxt = qtn_browser_setting_settings;
+                                    bmpfile = "\\Resource\\apps\\browser.mif";
+                                    bmpid   = EMbmBrowserQgn_indi_browser_tb_settings;
+                                    bmpmask = EMbmBrowserQgn_indi_browser_tb_settings_mask;
+                                    extension = r_browser_ext_qgn_indi_browser_tb_settings;
+                                    }
+                                };
+                            };
+                        }
+#else 
+	TBAR_CTRL
             {
             type = EAknCtButton;
             id = EWmlCmdDelete;     
@@ -125,7 +149,8 @@
                         }
                     };
                 };
-            }
+            }		
+ #endif           
         };
     }
 
--- a/browserui/browser/SrcData/browser_toolbar.rssi	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserui/browser/SrcData/browser_toolbar.rssi	Tue Feb 02 00:12:41 2010 +0200
@@ -43,6 +43,7 @@
                 helptxt = qtn_browser_ext_tb_tt;
                 items =
                     {
+#ifndef BRDO_SINGLE_CLICK_ENABLED_FF		    
                     TBAR_CTRL
                         {
                         type = EAknCtButton;
@@ -65,6 +66,7 @@
                                 };
                             };
                         },
+#endif
                     TBAR_CTRL
                         {
                         type = EAknCtButton;
@@ -306,8 +308,35 @@
                                     }
                                 };
                             };
-                        }
-                        
+	#ifndef BRDO_SINGLE_CLICK_ENABLED_FF
+			}
+	#else
+			},
+						
+		TBAR_CTRL
+                       {
+                       type = EAknCtButton;
+                       id = EWmlCmdCloseWindow;
+                       
+                       control = AVKON_BUTTON
+                           {
+                           flags = KAknButtonRequestExitOnButtonUpEvent;
+                           states =
+                               {
+                               AVKON_BUTTON_STATE
+                                   {
+                                   txt     = qtn_options_exit; //qtn_browser_list_close_window;
+                                   helptxt = qtn_options_exit; //qtn_browser_list_close_window;
+                                   bmpfile = "\\Resource\\apps\\browser.mif";
+                                   bmpid   = EMbmBrowserQgn_indi_browser_tb_exit;         
+                                   bmpmask = EMbmBrowserQgn_indi_browser_tb_exit_mask;
+                                   extension = r_browser_ext_qgn_indi_browser_tb_exit;
+                                   }
+                               };
+                           };
+                       }     
+	#endif
+                      
                     };
                 };
             },
@@ -464,6 +493,32 @@
                     };
                 };
             },
+	    
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF
+
+	TBAR_CTRL
+            {
+            type = EAknCtButton;
+            id = EWmlCmdFavourites;     
+            
+            control = AVKON_BUTTON
+                {
+                flags = 0;
+                states =
+                    {
+                    AVKON_BUTTON_STATE
+                        {                      
+                        txt     = "";  
+                        helptxt = qtn_browser_ext_tb_bm_tt;
+                        bmpfile = "\\Resource\\apps\\browser.mif";
+                        bmpid   = EMbmBrowserQgn_indi_browser_tb_bm;         
+                        bmpmask = EMbmBrowserQgn_indi_browser_tb_bm_mask;   
+                        extension = r_browser_ext_qgn_indi_browser_tb_bm;
+                        }
+                    };
+                };
+            }
+#else	    
         TBAR_CTRL
             {
             type = EAknCtButton;
@@ -486,6 +541,7 @@
                     };
                 };
             }
+#endif
         };
     }
 
--- a/browserui/browser/SrcData/feeds_toolbar.rssi	Mon Jan 18 20:22:00 2010 +0200
+++ b/browserui/browser/SrcData/feeds_toolbar.rssi	Tue Feb 02 00:12:41 2010 +0200
@@ -37,6 +37,76 @@
     flags = KAknToolbarFixed | KAknToolbarWithoutCba;
     items =
         {
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF
+		
+	TBAR_CTRL
+            {
+            type = EAknCtButton;
+            id = EFeedsNewFeed;     
+            
+            control = AVKON_BUTTON
+                {
+                flags = 0;
+                states =
+                    {
+                    AVKON_BUTTON_STATE
+                        {
+                        txt     = "";  //Icon should always be visible instead of this
+                        helptxt = qtn_feeds_new_feed;
+                        bmpfile = "\\Resource\\apps\\browser.mif";
+                        bmpid   = EMbmBrowserQgn_prop_file_rss_new;
+                        bmpmask = EMbmBrowserQgn_prop_file_rss_new_mask;
+                        extension = r_browser_ext_qgn_indi_browser_tb_feeds;
+                        }
+                    };
+                };
+            }, 
+        TBAR_CTRL
+            {
+            type = EAknCtButton;
+            id = EFeedsUpdateAll;     
+            
+            control = AVKON_BUTTON
+                {
+                flags = 0;
+                states = 
+                    {
+                    AVKON_BUTTON_STATE
+                        {
+                        txt     = "";  //Icon should always be visible instead of this
+                        helptxt = qtn_feeds_folder_update_all_tt;
+                        bmpfile = "\\Resource\\apps\\browser.mif";
+                        bmpid   = EMbmBrowserQgn_indi_browser_feeds_tb_update_all;
+                        bmpmask = EMbmBrowserQgn_indi_browser_feeds_tb_update_all_mask;
+                        extension = r_browser_ext_qgn_indi_browser_feeds_tb_updateall;
+                        }
+                    };
+                };
+            },
+           
+        TBAR_CTRL
+            {
+            type = EAknCtButton;
+            id = EWmlCmdPreferences;     
+            
+            control = AVKON_BUTTON
+                {
+                flags = 0;
+                states = 
+                    {
+                    AVKON_BUTTON_STATE
+                        {
+                        txt     = "";  //Icon should always be visible instead of this
+                        helptxt = qtn_browser_setting_settings;
+                        bmpfile = "\\Resource\\apps\\browser.mif";
+                        bmpid   = EMbmBrowserQgn_indi_browser_tb_settings;
+                        bmpmask = EMbmBrowserQgn_indi_browser_tb_settings_mask;
+                        extension = r_browser_ext_qgn_indi_browser_tb_settings;
+                        }
+                    };
+                };
+            }
+#else 	    		
         TBAR_CTRL
             {
             type = EAknCtButton;
@@ -104,6 +174,7 @@
                     };
                 };
             }
+#endif	    
         };
     }
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/browserui/browser/data/qgn_indi_browser_tb_exit.svg	Tue Feb 02 00:12:41 2010 +0200
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1 Tiny//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-tiny.dtd">
+<svg baseProfile="tiny" height="44px" version="1.1" viewBox="0 0 44 44" width="44px" x="0px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" y="0px">
+<rect fill="none" height="44" width="44"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_1_" x1="20.0625" x2="20.0625" y1="4.48" y2="38.2715">
+<stop offset="0" style="stop-color:#B2B2B2"/>
+<stop offset="1" style="stop-color:#000000"/>
+</linearGradient>
+<path d="M15.037,29.541c1.279,2.375,4.204,1.645,5.85,2.193c0.592,0.197,0.987,0.75,1.259,1.373l3.406-3.406  l-5.51-5.51l-1.136-1.135c-0.715,0.07-1.387,0.213-1.705,0.451C15.34,24.904,13.758,27.164,15.037,29.541z" fill="url(#SVGID_1_)"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_2_" x1="35.7461" x2="35.7461" y1="4.4795" y2="38.271">
+<stop offset="0" style="stop-color:#B2B2B2"/>
+<stop offset="1" style="stop-color:#000000"/>
+</linearGradient>
+<path d="M35.319,30.984c0.954-1.422,1.674-3.01,2.137-4.703l-3.42,3.42L35.319,30.984z" fill="url(#SVGID_2_)"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_3_" x1="28.6484" x2="28.6484" y1="4.4878" y2="38.2701">
+<stop offset="0" style="stop-color:#B2B2B2"/>
+<stop offset="1" style="stop-color:#000000"/>
+</linearGradient>
+<path d="M26.188,37.547c1.781-0.486,3.44-1.264,4.92-2.291l-1.313-1.313L26.188,37.547z" fill="url(#SVGID_3_)"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_4_" x1="21.856" x2="21.856" y1="4.478" y2="38.2716">
+<stop offset="0" style="stop-color:#B2B2B2"/>
+<stop offset="1" style="stop-color:#000000"/>
+</linearGradient>
+<path d="M20.042,35.211l0.138-0.139c-6.419-0.871-11.387-6.373-11.387-13.027  c0-2.002,0.463-3.896,1.269-5.598c2.53-0.617,8.003-2.928,9.7-4.455c1.406-1.268,0.866-2.418,0.375-2.967  c0.596-0.082,1.199-0.141,1.818-0.141c0.939,0,1.855,0.104,2.742,0.291c0.156,1.131,1.673,2.754,1.673,3.547  c0,0.914-1.358-0.068-2.925,0.549c-1.856,0.73-3.502,2.01-4.598,4.021c-0.206,0.381-0.021,1.859-0.184,2.559  c-0.146,0.627-0.914,0.549-1.097,0.732c-0.366,0.365-0.731,1.096-0.548,1.461c0.115,0.232,0.365,0.732,1.279,0.732  c0.773,0,1.159-1.299,2.032-1.701l1.127-1.127l1.414-1.414l1.414,1.414l1.377,1.377c0.19-0.051,0.403-0.072,0.679-0.012  c0.799,0.178,1.279,1.014,1.279,1.463c0,0.158-0.035,0.295-0.084,0.424l2.258,2.256l2.271-2.271  c-0.06-0.547,0.073-0.887,0.796-0.795l2.441-2.441l1.414-1.416l1.126,1.125C36.685,11.92,30.011,5.959,21.955,5.959  c-8.869,0-16.086,7.217-16.086,16.086c0,8.209,6.185,14.99,14.136,15.957l-1.376-1.377L20.042,35.211z" fill="url(#SVGID_4_)"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_5_" x1="29.7939" x2="29.7939" y1="4.3135" y2="38.106">
+<stop offset="0" style="stop-color:#B2B2B2"/>
+<stop offset="1" style="stop-color:#000000"/>
+</linearGradient>
+<polygon fill="url(#SVGID_5_)" points="38.132,22.777 36.717,21.363 29.794,28.287 22.871,21.363 21.456,22.777 28.38,29.701   21.456,36.625 22.87,38.039 29.794,31.115 36.718,38.039 38.132,36.625 31.208,29.701 "/>
+</svg>
--- a/pushmtm/MtmUiSrc/PushSettingsDialog.cpp	Mon Jan 18 20:22:00 2010 +0200
+++ b/pushmtm/MtmUiSrc/PushSettingsDialog.cpp	Tue Feb 02 00:12:41 2010 +0200
@@ -18,7 +18,7 @@
 
 
 //  INCLUDES
-
+#include "browser_platform_variant.hrh"
 #include "PushSettingsDialog.h"
 #include "PushMtmUiDef.h"
 #include "PushMtmUiPanic.h"
@@ -678,7 +678,11 @@
 	// Generate change command only if double tapped/center key is pressed. 
 	//Removed single tap check from here
 	if ( aEventType == EEventEnterKeyPressed || 
-         aEventType == EEventItemDoubleClicked )
+         aEventType == EEventItemDoubleClicked 
+#ifdef BRDO_SINGLE_CLICK_ENABLED_FF         
+         || aEventType == EEventItemSingleClicked 
+#endif         
+         )
         {
         ProcessCommandL( EPushSettingsDialogCmdChangeWithoutSettingPage );
         }