Only create window handles for actual windows
winId() creates a platform window for the given widget. This makes sense for the topmost widget in a tree, we can't assume the parent widget is the topmost widget.
Doing this on XCB is confusing and wrong, but apparently harmless. Doing this on wayland causes issues as we promote the parent window to a subsurface but never show that window leaving things in a corrupt state that leads to content not updating.
BUG: 445196