From fc7ab5e835bb67cde8926de0f5f38fe7a9ace60d Mon Sep 17 00:00:00 2001 From: Andrea Diamantini Date: Wed, 12 Jun 2013 11:20:15 +0200 Subject: Let private popus open in private mode BUG: 320218 --- src/webtab/webpage.cpp | 7 +++++-- src/webtab/webpage.h | 2 +- src/webtab/webview.cpp | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) (limited to 'src/webtab') diff --git a/src/webtab/webpage.cpp b/src/webtab/webpage.cpp index 7a6a9002..9ed7b8c8 100644 --- a/src/webtab/webpage.cpp +++ b/src/webtab/webpage.cpp @@ -127,7 +127,7 @@ static void extractMimeType(const QNetworkReply* reply, QString& mimeType) // --------------------------------------------------------------------------------- -WebPage::WebPage(QWidget *parent, bool isPrivateBrowsing) +WebPage::WebPage(bool isPrivateBrowsing, QWidget *parent) : KWebPage(parent, KWalletIntegration) , _networkAnalyzer(false) , _isOnRekonqPage(false) @@ -331,7 +331,10 @@ WebPage *WebPage::createWindow(QWebPage::WebWindowType type) if (type == QWebPage::WebModalDialog) kDebug() << "Modal Dialog"; - WebPage* p = new WebPage; + bool isPrivateBrowsing = settings()->testAttribute(QWebSettings::PrivateBrowsingEnabled); + + // private page links open private pages. See BUG: 320218 + WebPage* p = new WebPage(isPrivateBrowsing); emit pageCreated(p); return p; } diff --git a/src/webtab/webpage.h b/src/webtab/webpage.h index c9bd4c69..a141d38c 100644 --- a/src/webtab/webpage.h +++ b/src/webtab/webpage.h @@ -49,7 +49,7 @@ class REKONQ_TESTS_EXPORT WebPage : public KWebPage Q_OBJECT public: - explicit WebPage(QWidget *parent = 0, bool isPrivateBrowsing = false); + explicit WebPage(bool isPrivateBrowsing = false, QWidget *parent = 0); ~WebPage(); void setWindow(QWidget *); diff --git a/src/webtab/webview.cpp b/src/webtab/webview.cpp index 56ac1e7a..ce3f5a9f 100644 --- a/src/webtab/webview.cpp +++ b/src/webtab/webview.cpp @@ -176,7 +176,7 @@ WebPage *WebView::page() WebPage *p = qobject_cast(KWebView::page()); if (!p) { - p = new WebPage(this, m_isPrivateBrowsing); + p = new WebPage(m_isPrivateBrowsing, this); setPage(p); } return p; -- cgit v1.2.1