XDGPopupPositioner is awesome. Right now both we and Qt treat it like a static boring QPoint.
Proposed plan:
- 0: Fix all existing bugs with popups
- 1: Expose positioner in Qt possibly via QNativePlatformInterface
- 2: Write a KWindowSystem plugin to move a window with the same API as positioner. On non-wayland platforms it's all done in-process on show() using the screen geometry On wayland we use this Qt API above. (and screw WLShell)
- 3: KWin needs to gain support to position things correctly
- 4: We use it in apps via KWindowSystem
- 5: Plasma gets Dialog2 (with a better name obv) which has a similar API to the XDGPositioner and forwards all to that KWindowSystem class - but also handling frames and whatever.