[wayland] Handle sizes in ShellClient::transientPlacement
Summary:
placeIn did not handle the case for a popup not having had the size
already set and only being available via
m_xdgShellPopup->initialSize(). This is needed if we want to call placeIn
at the correct time, before the window is mapped.
There was also a logic bug when sliding popups. We called the
confusingly named setX thinking it would be move the popup keeping the
width the same. In practice it moves the left edge keeping the right
position the same. This wasn't an issue as the size was
discarded.
Handling the resize constraint is not yet done, but it should now be
even more trivial.
Reviewers: KWin, zzag
Reviewed By: KWin, zzag
Subscribers: zzag, kwin
Tags: KWin
Differential Revision: https://phabricator.kde.org/D18956