mirror of
https://invent.kde.org/plasma/layer-shell-qt.git
synced 2026-03-27 06:59:46 -04:00
Fix spectacle crash
focusWindow may have no platform window.
(cherry picked from commit aac600107a)
Co-authored-by: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
This commit is contained in:
@ -204,7 +204,7 @@ bool QWaylandLayerSurface::requestActivate()
|
|||||||
return true;
|
return true;
|
||||||
} else {
|
} else {
|
||||||
const auto focusWindow = QGuiApplication::focusWindow();
|
const auto focusWindow = QGuiApplication::focusWindow();
|
||||||
const auto wlWindow = focusWindow ? static_cast<QtWaylandClient::QWaylandWindow *>(focusWindow->handle()) : window();
|
const auto wlWindow = focusWindow && focusWindow->handle() ? static_cast<QtWaylandClient::QWaylandWindow *>(focusWindow->handle()) : window();
|
||||||
if (const auto seat = wlWindow->display()->lastInputDevice()) {
|
if (const auto seat = wlWindow->display()->lastInputDevice()) {
|
||||||
const auto tokenProvider = activation->requestXdgActivationToken(wlWindow->display(), wlWindow->wlSurface(), seat->serial(), QString());
|
const auto tokenProvider = activation->requestXdgActivationToken(wlWindow->display(), wlWindow->wlSurface(), seat->serial(), QString());
|
||||||
connect(tokenProvider, &QWaylandXdgActivationTokenV1::done, this, [this](const QString &token) {
|
connect(tokenProvider, &QWaylandXdgActivationTokenV1::done, this, [this](const QString &token) {
|
||||||
|
|||||||
Reference in New Issue
Block a user