Isn’t this supposed to be a job for the window manager?
For example, my virtualbox install has some mouse pointer bugs on wayland, and I can’t run waydroid on X. These things are weird to me. Shouldn’t window managers abstract all that for the software we run?
I thought that wms worked as full abstraction layers. It helped to reduce my confusion, thanks.
That is how portals work in Wayland.
For X there was only one protocol, so they all wrote for x.
This also allowed some hacky things to be done that are questionable from a security standpoint afaik.
Typically the abstraction to draw elemnts inside a app window is in the application framework, like GTK, Qt, Electron (chromium), etc.
This is also why apps built with the same framework typically have the same problem on wayland (looking at you, electron).
The abstractions you are thinking of is not in the window manager, which only controls things outside of the main app window, like tiling, border, window top bar, etc.