What's wrong with my demo? Does PlasmaShellSurface only support QQuickView but not QWidget?

You don’t need show. You can also call winId() to create the QWindow (pattern we use in KDE) or if you are implementing a class that inherits from QWidget you can call create (which is protected)

2 Likes