browsercore/core/wrtbrowsercontainer.cpp
changeset 6 1c3b8676e58c
parent 5 0f2326c2a325
child 15 73c48011b8c7
equal deleted inserted replaced
5:0f2326c2a325 6:1c3b8676e58c
    57 WrtBrowserContainerPrivate::WrtBrowserContainerPrivate(QObject* parent,
    57 WrtBrowserContainerPrivate::WrtBrowserContainerPrivate(QObject* parent,
    58 		WrtBrowserContainer* page/*never NULL*/) : m_schemeHandler(new SchemeHandler())
    58 		WrtBrowserContainer* page/*never NULL*/) : m_schemeHandler(new SchemeHandler())
    59 ,   m_pageFactory(0)
    59 ,   m_pageFactory(0)
    60 ,   m_widget(0)
    60 ,   m_widget(0)
    61 ,   m_fileChooser(0)
    61 ,   m_fileChooser(0)
       
    62 ,   m_needUpdateThumbnail(false)
    62 {
    63 {
    63     m_page = page;
    64     m_page = page;
    64 
    65 
    65     m_secureController = new WRT::SecureUIController(parent);
    66     m_secureController = new WRT::SecureUIController(parent);
    66     m_loadController = new  WRT::LoadController();
    67     m_loadController = new  WRT::LoadController();
   109     
   110     
   110   settings()->setAttribute(QWebSettings::PluginsEnabled, true);
   111   settings()->setAttribute(QWebSettings::PluginsEnabled, true);
   111   settings()->setAttribute(QWebSettings::JavascriptCanOpenWindows, !BEDROCK_PROVISIONING::BedrockProvisioning::createBedrockProvisioning()->value("PopupBlocking").toInt());
   112   settings()->setAttribute(QWebSettings::JavascriptCanOpenWindows, !BEDROCK_PROVISIONING::BedrockProvisioning::createBedrockProvisioning()->value("PopupBlocking").toInt());
   112 	// Download related enable "forwardUnsupportedContent" to redirect unsupported content to download manager
   113 	// Download related enable "forwardUnsupportedContent" to redirect unsupported content to download manager
   113 	setForwardUnsupportedContent(true);
   114 	setForwardUnsupportedContent(true);
       
   115 #ifdef BEDROCK_TILED_BACKING_STORE
       
   116     settings()->setAttribute(QWebSettings::TiledBackingStoreEnabled, true);
       
   117     settings()->setAttribute(QWebSettings::ZoomTextOnly, false);
       
   118     settings()->setAttribute(QWebSettings::FrameFlatteningEnabled, true);
       
   119 
       
   120     //Configure tiling properties
       
   121     //This would set tile size to (256, 256) and add 25ms delay between constructing
       
   122     //individual tiles. The settings would try to cache an area 1.5x width and 1.5x height
       
   123     //of the current viewport (centered to the viewport) with tiles and would drop tiles
       
   124     //after they are outside an area 2x the width and 2.5x the height of the viewport.
       
   125     //Refer https://bugs.webkit.org/show_bug.cgi?id=39874
       
   126 
       
   127     setProperty("_q_TiledBackingStoreTileSize", QSize(256, 256));
       
   128     setProperty("_q_TiledBackingStoreTileCreationDelay", 25);
       
   129     setProperty("_q_TiledBackingStoreCoverAreaMultiplier", QSizeF(1.5, 1.5));
       
   130     setProperty("_q_TiledBackingStoreKeepAreaMultiplier", QSizeF(2., 2.5));
       
   131 #endif
   114 
   132 
   115 #ifndef NO_NETWORK_ACCESS_MANAGER	
   133 #ifndef NO_NETWORK_ACCESS_MANAGER	
   116 	setNetworkAccessManager(new WebNetworkAccessManager(this,this));
   134 	setNetworkAccessManager(new WebNetworkAccessManager(this,this));
   117 #endif
   135 #endif
   118 	
   136 	
   368     }
   386     }
   369 
   387 
   370     return QWebPage::chooseFile(parentFrame, suggestedFile);
   388     return QWebPage::chooseFile(parentFrame, suggestedFile);
   371 }
   389 }
   372 
   390 
       
   391 QString WrtBrowserContainer::userAgentForUrl(const QUrl& url) const
       
   392 {
       
   393     QString uaString = BEDROCK_PROVISIONING::BedrockProvisioning::createBedrockProvisioning()->valueAsString("UserAgentString");
       
   394    
       
   395     if (uaString.isEmpty())
       
   396    	{
       
   397    	    QUrl url;
       
   398         return QWebPage::userAgentForUrl(url); 
       
   399    	}
       
   400    	else
       
   401         return uaString;
       
   402 }
       
   403 	
   373 WRT::WrtBrowserContainer* WrtBrowserContainer::createWindow(
   404 WRT::WrtBrowserContainer* WrtBrowserContainer::createWindow(
   374     QWebPage::WebWindowType webWindowType)
   405     QWebPage::WebWindowType webWindowType)
   375 {
   406 {
   376 
   407 
   377     /* When WrtPage is created, QWebSettings::JavascriptCanOpenWindows is initialized
   408     /* When WrtPage is created, QWebSettings::JavascriptCanOpenWindows is initialized