summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/plugins/platforms/eglfs/api/qeglfswindow.cpp6
-rw-r--r--src/plugins/platforms/eglfs/api/qeglfswindow_p.h2
-rw-r--r--src/plugins/platforms/wasm/qwasmwindow.cpp8
-rw-r--r--src/plugins/platforms/wasm/qwasmwindow.h2
4 files changed, 15 insertions, 3 deletions
diff --git a/src/plugins/platforms/eglfs/api/qeglfswindow.cpp b/src/plugins/platforms/eglfs/api/qeglfswindow.cpp
index 1a31f97d7b..6210ef16a8 100644
--- a/src/plugins/platforms/eglfs/api/qeglfswindow.cpp
+++ b/src/plugins/platforms/eglfs/api/qeglfswindow.cpp
@@ -108,8 +108,12 @@ void QEglFSWindow::create()
#endif
}
-void QEglFSWindow::setBackingStore(QOpenGLCompositorBackingStore *backingStore)
+void QEglFSWindow::setBackingStore(QPlatformBackingStore *store)
{
+ Q_ASSERT(store);
+ Q_ASSERT_X(dynamic_cast<QOpenGLCompositorBackingStore *>(store), __FUNCTION__,
+ "Argument is not a QOpenGLCompositorBackingStore.");
+ auto *backingStore = static_cast<QOpenGLCompositorBackingStore *>(store);
#ifndef QT_NO_OPENGL
if (!m_rasterCompositingContext) {
m_rasterCompositingContext = new QOpenGLContext;
diff --git a/src/plugins/platforms/eglfs/api/qeglfswindow_p.h b/src/plugins/platforms/eglfs/api/qeglfswindow_p.h
index d111042040..d8e0a4a735 100644
--- a/src/plugins/platforms/eglfs/api/qeglfswindow_p.h
+++ b/src/plugins/platforms/eglfs/api/qeglfswindow_p.h
@@ -71,7 +71,7 @@ public:
#ifndef QT_NO_OPENGL
QOpenGLCompositorBackingStore *backingStore() { return m_backingStore; }
- void setBackingStore(QOpenGLCompositorBackingStore *backingStore);
+ void setBackingStore(QPlatformBackingStore *backingStore) override;
QWindow *sourceWindow() const override;
const QPlatformTextureList *textures() const override;
void endCompositing() override;
diff --git a/src/plugins/platforms/wasm/qwasmwindow.cpp b/src/plugins/platforms/wasm/qwasmwindow.cpp
index 775f71b3ad..20458bcfe6 100644
--- a/src/plugins/platforms/wasm/qwasmwindow.cpp
+++ b/src/plugins/platforms/wasm/qwasmwindow.cpp
@@ -236,6 +236,14 @@ QWasmScreen *QWasmWindow::platformScreen() const
return static_cast<QWasmScreen *>(window()->screen()->handle());
}
+void QWasmWindow::setBackingStore(QPlatformBackingStore *store)
+{
+ Q_ASSERT(store);
+ Q_ASSERT_X(dynamic_cast<QWasmBackingStore *>(store), __FUNCTION__,
+ "Argument is not a QWasmBackingStore.");
+ m_backingStore = static_cast<QWasmBackingStore *>(store);
+}
+
void QWasmWindow::paint()
{
if (!m_backingStore || !isVisible() || m_context2d.isUndefined())
diff --git a/src/plugins/platforms/wasm/qwasmwindow.h b/src/plugins/platforms/wasm/qwasmwindow.h
index 37e186d700..9fd40eba7f 100644
--- a/src/plugins/platforms/wasm/qwasmwindow.h
+++ b/src/plugins/platforms/wasm/qwasmwindow.h
@@ -89,7 +89,7 @@ public:
void setParent(const QPlatformWindow *window) final;
QWasmScreen *platformScreen() const;
- void setBackingStore(QWasmBackingStore *store) { m_backingStore = store; }
+ void setBackingStore(QPlatformBackingStore *store) override;
QWasmBackingStore *backingStore() const { return m_backingStore; }
QWindow *window() const { return m_window; }