The method is basically the same as commit
41926e08d73ea6c4bbfc87a1dd52d2cdbc435c27 from QtDeclarative but applied to our
composition architecture
in a nutshell
- the offscreen QQuickWindow must not report the child interfaces
- the render QWindow must report the child interfaces
- The child interfaces must report the render window as the parent
We implement QAccessibleObject for both window implementing theses policies.
Focus events are forwarded to the right window (from qml to the render
window and vice-versa).
We also need to fake the visibility of the offscreen window to make it behave as
visible without creating an actual window
They are necessary in the acrylic header (with 8.1 API's) and uisurface (win7)
so they don't need to be included with the wrong version in compositor_dcomp.hpp
some compositor requires to set Qt Attributes before Qt application
is started such as selecting the right graphical backend (ie: dcomp needs to set
OpenGLES). And some compositor needs know wich QPA is in use (ie: x11 vs
wayland), this can only be known after QApp is started.
Co-authored-by: Guillaume Nicolussi Castellan <nullgemm@videolabs.io>