summaryrefslogtreecommitdiffstats
path: root/examples/webenginewidgets/browser/tabwidget.cpp
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@theqtcompany.com>2015-05-08 12:58:28 +0200
committerAllan Sandfeld Jensen <allan.jensen@theqtcompany.com>2015-05-11 11:54:28 +0000
commit4db8c2c92ae8bc722de70e4bd317dce17dea2f74 (patch)
tree3462ae22be4a7cb107e46f2b050649a8cddbf73f /examples/webenginewidgets/browser/tabwidget.cpp
parent76a990cfa3409214530e77d132cdefd9e96685f9 (diff)
Reintroduce private browsing mode for example browser
Uses QWebEngineProfile to support private browsing mode. Change-Id: I78fa712d2425eb2df519594ee3fa5639bbcbebf6 Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
Diffstat (limited to 'examples/webenginewidgets/browser/tabwidget.cpp')
-rw-r--r--examples/webenginewidgets/browser/tabwidget.cpp21
1 files changed, 16 insertions, 5 deletions
diff --git a/examples/webenginewidgets/browser/tabwidget.cpp b/examples/webenginewidgets/browser/tabwidget.cpp
index 06ff59ac3..3df1628e0 100644
--- a/examples/webenginewidgets/browser/tabwidget.cpp
+++ b/examples/webenginewidgets/browser/tabwidget.cpp
@@ -217,6 +217,7 @@ TabWidget::TabWidget(QWidget *parent)
, m_lineEditCompleter(0)
, m_lineEdits(0)
, m_tabBar(new TabBar(this))
+ , m_profile(QWebEngineProfile::defaultProfile())
{
setElideMode(Qt::ElideRight);
@@ -456,6 +457,7 @@ WebView *TabWidget::newTab(bool makeCurrent)
// webview
WebView *webView = new WebView;
+ webView->setPage(new WebPage(m_profile, webView));
urlLineEdit->setWebView(webView);
connect(webView, SIGNAL(loadStarted()),
this, SLOT(webViewLoadStarted()));
@@ -581,11 +583,7 @@ void TabWidget::closeTab(int index)
#endif
hasFocus = tab->hasFocus();
-#if defined(QTWEBENGINE_PRIVATEBROWSING)
- QWebEngineSettings *globalSettings = QWebEngineSettings::globalSettings();
- if (!globalSettings->testAttribute(QWebEngineSettings::PrivateBrowsingEnabled))
-#endif
- {
+ if (m_profile == QWebEngineProfile::defaultProfile()) {
m_recentlyClosedTabsAction->setEnabled(true);
m_recentlyClosedTabs.prepend(tab->url());
if (m_recentlyClosedTabs.size() >= TabWidget::m_recentlyClosedTabsSize)
@@ -605,6 +603,19 @@ void TabWidget::closeTab(int index)
emit lastTabClosed();
}
+void TabWidget::setProfile(QWebEngineProfile *profile)
+{
+ m_profile = profile;
+ for (int i = 0; i < count(); ++i) {
+ QWidget *tabWidget = widget(i);
+ if (WebView *tab = qobject_cast<WebView*>(tabWidget)) {
+ WebPage* webPage = new WebPage(m_profile, tab);
+ webPage->load(tab->page()->url());
+ tab->setPage(webPage);
+ }
+ }
+}
+
void TabWidget::webViewLoadStarted()
{
WebView *webView = qobject_cast<WebView*>(sender());