webengine/osswebengine/WebKit/s60/webview/BrCtl.cpp
branchRCL_3
changeset 36 c711bdda59f4
parent 35 1f3c3f2f5b0a
child 37 ac77f89b1d9e
--- a/webengine/osswebengine/WebKit/s60/webview/BrCtl.cpp	Mon Mar 15 12:44:50 2010 +0200
+++ b/webengine/osswebengine/WebKit/s60/webview/BrCtl.cpp	Wed Mar 31 23:16:40 2010 +0300
@@ -502,8 +502,6 @@
     // Set the rect for BrowserControl (a CCoeControl).
     SetRect(aRect);
     CCoeEnv::Static()->DisableExitChecks(true);
-    Window().AllocPointerMoveBuffer(256, 0);
-    Window().DisablePointerMoveBuffer();
     Window().PointerFilter(EPointerFilterMove | EPointerFilterDrag | EPointerFilterEnterExit, 0);
     ActivateL();
 }
@@ -962,6 +960,48 @@
              break;
             }
 
+#ifdef BRDO_OCC_ENABLED_FF
+       case TBrCtlDefs::ECommandSetRetryConnectivityFlag:
+            {
+            StaticObjectsContainer::instance()->resourceLoaderDelegate()->httpSessionManager()->setRetryConnectivityFlag();
+            break;
+            }
+       case TBrCtlDefs::ECommandUnSetRetryConnectivityFlag:
+            {
+            StaticObjectsContainer::instance()->resourceLoaderDelegate()->httpSessionManager()->unSetRetryConnectivityFlag();
+            break;
+            }
+       case TBrCtlDefs::ECommandRetryTransactions:
+            {
+             StaticObjectsContainer::instance()->resourceLoaderDelegate()->httpSessionManager()->retryTransactions();
+             m_webView->reCreatePlugins(); 
+             break;
+            }
+       case TBrCtlDefs::ECommandClearQuedTransactions:
+           {
+           StaticObjectsContainer::instance()->resourceLoaderDelegate()->httpSessionManager()->handleError(KErrCancel);
+           break;
+           }
+       case TBrCtlDefs::ECommandConnToDownloadManager:
+           {
+           TInt connectionPtr = 0;
+           TInt sockSvrHandle = 0;
+           TBool newConn = ETrue;
+           TApBearerType bearerType;
+           TInt error = KErrNone;
+           
+           TRAP(error, m_brCtlSpecialLoadObserver->NetworkConnectionNeededL(&connectionPtr, &sockSvrHandle, &newConn, &bearerType));
+           if( error == KErrNone && connectionPtr ) 
+               {
+               RConnection* connPtr = REINTERPRET_CAST( RConnection*, connectionPtr );
+               TName name;
+               connPtr->Name( name );
+               StaticObjectsContainer::instance()->resourceLoaderDelegate()->httpSessionManager()->httpDownload()->connect(name);
+               }
+           break;
+           }
+#endif           
+
       default:
             {
             if ( m_wmlEngineInterface &&
@@ -1169,7 +1209,9 @@
     }
 
     int after = aAfter == -1 ? aAfter :0;
-    TBrCtlDefs::TBrCtlElementType focusedElementType = FocusedElementType();
+    TBrCtlDefs::TBrCtlElementType focusedElementType;
+    if(m_webView)
+       focusedElementType = FocusedElementType();
 
     int count = sizeof(commandsArray) / sizeof(TCommandsArray);
     bool found = false;
@@ -1803,7 +1845,7 @@
         m_webView->checkForZoomChange();
     }
 
-    if( m_webView->pageFullScreenHandler() && m_webView->pageFullScreenHandler()->isFullScreenMode() ) {
+    if(m_webView && m_webView->pageFullScreenHandler() && m_webView->pageFullScreenHandler()->isFullScreenMode() ) {
         if (visible)
             m_webView->pageFullScreenHandler()->showEscBtnL();
         else
@@ -2100,6 +2142,7 @@
          if(StaticObjectsContainer::instance()->isPluginFullscreen())
          {
             PluginSkin* plugin=m_webView->mainFrame()->focusedPlugin();
+            if(plugin)
             plugin->deActivate();
          }
          newBrctl = m_brCtlWindowObserver->OpenWindowL(emptyUrl, &windowName, userGesture, 0);