[wayland] Handle sizes in ShellClient::transientPlacement
ClosedPublic

Authored by davidedmundson on Feb 12 2019, 12:21 PM.

Details

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.

Diff Detail

Repository
R108 KWin
Branch
master
Lint
Lint OK
Unit
No Unit Test Coverage
Build Status
Buildable 8244
Build 8262: arc lint + arc unit
Restricted Application added a project: KWin. · View Herald TranscriptFeb 12 2019, 12:21 PM
Restricted Application added a subscriber: kwin. · View Herald Transcript
davidedmundson requested review of this revision.Feb 12 2019, 12:21 PM
davidedmundson retitled this revision from Handle sizes in ShellClient::transientPlacement to [wayland] Handle sizes in ShellClient::transientPlacement.Feb 12 2019, 12:23 PM
zzag added a subscriber: zzag.Feb 12 2019, 1:40 PM
zzag added inline comments.
placement.cpp
503–505

popupGeometry would be a better name. Also, we probably don't need this variable at all.

davidedmundson marked an inline comment as done.Feb 13 2019, 12:28 PM
zzag added a comment.Feb 13 2019, 1:26 PM

Is it WIP? (I'm asking because Reviewers field is not set)

remove an irrelevant change

Ready for a review I think.

zzag accepted this revision.Feb 13 2019, 1:48 PM
This revision is now accepted and ready to land.Feb 13 2019, 1:48 PM
This revision was automatically updated to reflect the committed changes.