summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/widgets/Api/qwebenginehistory.cpp13
-rw-r--r--lib/widgets/Api/qwebenginehistory.h2
-rw-r--r--lib/widgets/Api/qwebenginehistory_p.h9
-rw-r--r--lib/widgets/Api/qwebenginepage.cpp3
4 files changed, 11 insertions, 16 deletions
diff --git a/lib/widgets/Api/qwebenginehistory.cpp b/lib/widgets/Api/qwebenginehistory.cpp
index a6afe62f1..ca8d3a8d1 100644
--- a/lib/widgets/Api/qwebenginehistory.cpp
+++ b/lib/widgets/Api/qwebenginehistory.cpp
@@ -45,15 +45,14 @@
#include "qwebenginepage_p.h"
#include "web_contents_adapter.h"
-QWebEngineHistoryPrivate::QWebEngineHistoryPrivate()
- : pagePrivate(0)
+QWebEngineHistoryPrivate::QWebEngineHistoryPrivate(WebContentsAdapter *adapter)
+ : adapter(adapter)
{
}
-QWebEngineHistory::QWebEngineHistory()
- : d_ptr(new QWebEngineHistoryPrivate)
+QWebEngineHistory::QWebEngineHistory(QWebEngineHistoryPrivate *d)
+ : d_ptr(d)
{
- d_ptr->q_ptr=this;
}
QWebEngineHistory::~QWebEngineHistory()
@@ -63,11 +62,11 @@ QWebEngineHistory::~QWebEngineHistory()
bool QWebEngineHistory::canGoBack() const
{
Q_D(const QWebEngineHistory);
- return d->pagePrivate->adapter->canGoBack();
+ return d->adapter->canGoBack();
}
bool QWebEngineHistory::canGoForward() const
{
Q_D(const QWebEngineHistory);
- return d->pagePrivate->adapter->canGoForward();
+ return d->adapter->canGoForward();
}
diff --git a/lib/widgets/Api/qwebenginehistory.h b/lib/widgets/Api/qwebenginehistory.h
index 8a7f9a7c6..fb98bb94d 100644
--- a/lib/widgets/Api/qwebenginehistory.h
+++ b/lib/widgets/Api/qwebenginehistory.h
@@ -81,7 +81,7 @@ public:
void setMaximumItemCount(int count);
private:
- QWebEngineHistory();
+ QWebEngineHistory(QWebEngineHistoryPrivate *d);
~QWebEngineHistory();
Q_DISABLE_COPY(QWebEngineHistory)
diff --git a/lib/widgets/Api/qwebenginehistory_p.h b/lib/widgets/Api/qwebenginehistory_p.h
index 7f94cf659..1a6d7e17e 100644
--- a/lib/widgets/Api/qwebenginehistory_p.h
+++ b/lib/widgets/Api/qwebenginehistory_p.h
@@ -42,17 +42,14 @@
#ifndef QWEBENGINEHISTORY_P_H
#define QWEBENGINEHISTORY_P_H
-class QWebEngineHistoryPrivate;
-class QWebEnginePagePrivate;
+class WebContentsAdapter;
class QWebEngineHistoryPrivate
{
- QWebEngineHistory *q_ptr;
public:
- Q_DECLARE_PUBLIC(QWebEngineHistory)
+ QWebEngineHistoryPrivate(WebContentsAdapter *adapter);
- QWebEngineHistoryPrivate();
- QWebEnginePagePrivate *pagePrivate;
+ WebContentsAdapter *adapter;
};
#endif // QWEBENGINEHISTORY_P_H
diff --git a/lib/widgets/Api/qwebenginepage.cpp b/lib/widgets/Api/qwebenginepage.cpp
index 6367ddecd..037d05aee 100644
--- a/lib/widgets/Api/qwebenginepage.cpp
+++ b/lib/widgets/Api/qwebenginepage.cpp
@@ -37,11 +37,10 @@
QWebEnginePagePrivate::QWebEnginePagePrivate()
: QObjectPrivate(QObjectPrivateVersion)
, adapter(new WebContentsAdapter(this))
- , history(new QWebEngineHistory)
+ , history(new QWebEngineHistory(new QWebEngineHistoryPrivate(adapter.data())))
, view(0)
, m_isLoading(false)
{
- history->d_func()->pagePrivate = this;
memset(actions, 0, sizeof(actions));
}