summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMorten Sørvig <[email protected]>2025-02-25 16:03:13 +0100
committerMorten Sørvig <[email protected]>2025-03-13 12:57:10 +0100
commit83b61391491341c67f7e6b6ed3b337f6034a2eec (patch)
treec23673823f56e4b9c44bf64f3755d330fedf4fa8
parentbdc96654946f909d5b1864ff582041a70ba41569 (diff)
wasm: use QWasmWindow::fromWindow()
Make it test for null QWindow and handle(), use it instead of C-style casting handle(). Change-Id: I7ffb1ef5d3d3c09c8ae44ec0141e93530a04abe6 Reviewed-by: Even Oscar Andersen <[email protected]> Reviewed-by: Piotr Wierciński <[email protected]>
-rw-r--r--src/plugins/platforms/wasm/qwasminputcontext.cpp4
-rw-r--r--src/plugins/platforms/wasm/qwasmwindow.cpp4
-rw-r--r--src/plugins/platforms/wasm/qwasmwindow.h2
3 files changed, 6 insertions, 4 deletions
diff --git a/src/plugins/platforms/wasm/qwasminputcontext.cpp b/src/plugins/platforms/wasm/qwasminputcontext.cpp
index 76328aa6db8..a5e54d9c7b8 100644
--- a/src/plugins/platforms/wasm/qwasminputcontext.cpp
+++ b/src/plugins/platforms/wasm/qwasminputcontext.cpp
@@ -327,8 +327,8 @@ void QWasmInputContext::updateInputElement()
m_inputElement.set("value", "");
m_inputElement.call<void>("blur");
- if (focusWindow && focusWindow->handle())
- ((QWasmWindow *)(focusWindow->handle()))->focus();
+ if (QWasmWindow *wasmwindow = QWasmWindow::fromWindow(focusWindow))
+ wasmwindow->focus();
return;
}
diff --git a/src/plugins/platforms/wasm/qwasmwindow.cpp b/src/plugins/platforms/wasm/qwasmwindow.cpp
index 1bfcd75e3f4..83a4689fc1b 100644
--- a/src/plugins/platforms/wasm/qwasmwindow.cpp
+++ b/src/plugins/platforms/wasm/qwasmwindow.cpp
@@ -211,8 +211,10 @@ QSurfaceFormat QWasmWindow::format() const
return window()->requestedFormat();
}
-QWasmWindow *QWasmWindow::fromWindow(QWindow *window)
+QWasmWindow *QWasmWindow::fromWindow(const QWindow *window)
{
+ if (!window ||!window->handle())
+ return nullptr;
return static_cast<QWasmWindow *>(window->handle());
}
diff --git a/src/plugins/platforms/wasm/qwasmwindow.h b/src/plugins/platforms/wasm/qwasmwindow.h
index 3dcf8bd894c..be424753d3f 100644
--- a/src/plugins/platforms/wasm/qwasmwindow.h
+++ b/src/plugins/platforms/wasm/qwasmwindow.h
@@ -45,7 +45,7 @@ public:
QWasmBackingStore *backingStore, WId nativeHandle);
~QWasmWindow() final;
- static QWasmWindow *fromWindow(QWindow *window);
+ static QWasmWindow *fromWindow(const QWindow *window);
QSurfaceFormat format() const override;
void registerEventHandlers();