[server] Properly handle the case that a PlasmaWindow is unmapped before client bound it
ClosedPublic

Authored by graesslin on Jun 1 2016, 1:43 PM.

Details

Summary

So far we directly destroyed the resource on the server side. But this
causes a wayland error when the client tries to cleanup. This results in
the client being destroyed. A problem which brings down plasmashell
regularly when short living windows are shown. This happens e.g. in
Dolphin with the adress auto complete.

This change addresses the problem by creating a temporary
PlasmaWindowInterface for the already unmapped window. It doesn't get
added to the list of known windows and it's only purpose is to properly
handle the unmap and the destroy of the just created resource.

Diff Detail

Repository
R127 KWayland
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.
graesslin updated this revision to Diff 4132.Jun 1 2016, 1:43 PM
graesslin retitled this revision from to [server] Properly handle the case that a PlasmaWindow is unmapped before client bound it.
graesslin updated this object.
graesslin edited the test plan for this revision. (Show Details)
graesslin added a reviewer: Plasma.
Restricted Application added a project: Plasma. · View Herald TranscriptJun 1 2016, 1:43 PM
Restricted Application added a subscriber: plasma-devel. · View Herald Transcript
sebas accepted this revision.Jun 1 2016, 2:02 PM
sebas added a reviewer: sebas.
This revision is now accepted and ready to land.Jun 1 2016, 2:02 PM
This revision was automatically updated to reflect the committed changes.