summaryrefslogtreecommitdiffstats
path: root/src/webengine/api/qquickwebengineview.cpp
diff options
context:
space:
mode:
authorJocelyn Turcotte <jocelyn.turcotte@digia.com>2014-07-07 18:12:15 +0200
committerJocelyn Turcotte <jocelyn.turcotte@digia.com>2014-08-04 08:45:25 +0200
commit1c2a4da1c73bfc2456c59146ce615b7e2122e90e (patch)
tree7690eee799b00b177dc03e1e64706a108bb99abd /src/webengine/api/qquickwebengineview.cpp
parentddd8ab311271b59514ce0748301e634ca988b62b (diff)
Don't inherit from Qt private types
Do the d_ptr magic ourselves to avoid having to include private headers from qtcore, qtgui and qtdeclarative. It is hackish to hide QObject's d_ptr member to have the macros working in a public class, but if anything goes wrong we just need to replace the private macro convenience while maintaining the binary compatibility of the stored extra opaque pointer. Change-Id: Idb92f4f902826bef9068a5c2ef6ea31fc3fa15b2 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
Diffstat (limited to 'src/webengine/api/qquickwebengineview.cpp')
-rw-r--r--src/webengine/api/qquickwebengineview.cpp8
1 files changed, 5 insertions, 3 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);