summaryrefslogtreecommitdiffstats
path: root/src/webengine
diff options
context:
space:
mode:
Diffstat (limited to 'src/webengine')
-rw-r--r--src/webengine/api/qquickwebengineview.cpp8
-rw-r--r--src/webengine/api/qquickwebengineview_p.h2
-rw-r--r--src/webengine/api/qquickwebengineview_p_p.h4
-rw-r--r--src/webengine/render_widget_host_view_qt_delegate_quick.cpp1
4 files changed, 10 insertions, 5 deletions
diff --git a/src/webengine/api/qquickwebengineview.cpp b/src/webengine/api/qquickwebengineview.cpp
index cbd45842d..ad57f24ba 100644
--- a/src/webengine/api/qquickwebengineview.cpp
+++ b/src/webengine/api/qquickwebengineview.cpp
@@ -384,8 +384,9 @@ QObject *QQuickWebEngineViewPrivate::accessibilityParentObject()
void QQuickWebEngineViewPrivate::setDevicePixelRatio(qreal devicePixelRatio)
{
+ Q_Q(QQuickWebEngineView);
this->devicePixelRatio = devicePixelRatio;
- QScreen *screen = window ? window->screen() : QGuiApplication::primaryScreen();
+ QScreen *screen = q->window() ? q->window()->screen() : QGuiApplication::primaryScreen();
m_dpiScale = devicePixelRatio / screen->devicePixelRatio();
}
@@ -463,10 +464,11 @@ void QQuickWebEngineViewPrivate::adoptWebContents(WebContentsAdapter *webContent
}
QQuickWebEngineView::QQuickWebEngineView(QQuickItem *parent)
- : QQuickItem(*(new QQuickWebEngineViewPrivate), parent)
+ : QQuickItem(parent)
+ , d_ptr(new QQuickWebEngineViewPrivate)
{
Q_D(QQuickWebEngineView);
- d->e->q_ptr = this;
+ d->e->q_ptr = d->q_ptr = this;
d->adapter->initialize(d);
this->setActiveFocusOnTab(true);
this->setFlag(QQuickItem::ItemIsFocusScope);
diff --git a/src/webengine/api/qquickwebengineview_p.h b/src/webengine/api/qquickwebengineview_p.h
index c03f1ec59..12b9ee163 100644
--- a/src/webengine/api/qquickwebengineview_p.h
+++ b/src/webengine/api/qquickwebengineview_p.h
@@ -132,6 +132,8 @@ protected:
private:
Q_DECLARE_PRIVATE(QQuickWebEngineView)
+ QScopedPointer<QQuickWebEngineViewPrivate> d_ptr;
+
friend class QQuickWebEngineViewExperimental;
friend class QQuickWebEngineViewExperimentalExtension;
friend class QQuickWebEngineNewViewRequest;
diff --git a/src/webengine/api/qquickwebengineview_p_p.h b/src/webengine/api/qquickwebengineview_p_p.h
index e4a315d1a..25b20a0e8 100644
--- a/src/webengine/api/qquickwebengineview_p_p.h
+++ b/src/webengine/api/qquickwebengineview_p_p.h
@@ -49,7 +49,6 @@
#include <QSharedData>
#include <QString>
#include <QtCore/qcompilerdetection.h>
-#include <QtQuick/private/qquickitem_p.h>
#include <QtGui/qaccessibleobject.h>
class WebContentsAdapter;
@@ -128,10 +127,11 @@ private:
Q_DECLARE_PUBLIC(QQuickWebEngineView)
};
-class Q_WEBENGINE_PRIVATE_EXPORT QQuickWebEngineViewPrivate : public QQuickItemPrivate, public WebContentsAdapterClient
+class Q_WEBENGINE_PRIVATE_EXPORT QQuickWebEngineViewPrivate : public WebContentsAdapterClient
{
public:
Q_DECLARE_PUBLIC(QQuickWebEngineView)
+ QQuickWebEngineView *q_ptr;
QQuickWebEngineViewPrivate();
~QQuickWebEngineViewPrivate();
diff --git a/src/webengine/render_widget_host_view_qt_delegate_quick.cpp b/src/webengine/render_widget_host_view_qt_delegate_quick.cpp
index 26afda08f..e968f450b 100644
--- a/src/webengine/render_widget_host_view_qt_delegate_quick.cpp
+++ b/src/webengine/render_widget_host_view_qt_delegate_quick.cpp
@@ -48,6 +48,7 @@
#include <QQuickWindow>
#include <QVariant>
#include <QWindow>
+#include <QtQuick/private/qquickwindow_p.h>
RenderWidgetHostViewQtDelegateQuick::RenderWidgetHostViewQtDelegateQuick(RenderWidgetHostViewQtDelegateClient *client, bool isPopup)
: m_client(client)