@@ -46,7 +46,9 @@ MirSurfaceItem *SurfaceManager::createSurface(const QString& name,
4646 state,
4747 screenshot);
4848 registerSurface(surface);
49− connect(surface, &MirSurfaceItem::aboutToBeDestroyed, this, &SurfaceManager::onSurfaceAboutToBeDestroyed);
49+ connect(surface, &MirSurfaceItem::aboutToBeDestroyed, this, [&] {
50+ Q_EMIT surfaceDestroyed(qobject_cast<MirSurfaceItem*>(sender()));
51+ });
5052 Q_EMIT surfaceCreated(surface);
5153 return surface;
5254}
@@ -59,11 +61,6 @@ void SurfaceManager::registerSurface(MirSurfaceItem *surface)
5961 this, &SurfaceManager::hideInputMethod);
6062}
6163
62−void SurfaceManager::onSurfaceAboutToBeDestroyed()
63−{
64− Q_EMIT surfaceDestroyed(qobject_cast<MirSurfaceItem*>(sender()));
65−}
66−
6764void SurfaceManager::showInputMethod()
6865{
6966 inputMethodSurface()->setState(MirSurfaceItem::Restored);