Fix placement of KSplash
ClosedPublic

Authored by graesslin on Oct 12 2017, 6:52 PM.

Details

Summary

In a bug report there was a reference that on multi-screen KSplash is
not placed correctly. I investigated and noticed that it is an OSD which
sets an own position. In KWin the events were processed correctly but
the position was off.

The problem is that KWin has code to correct the position of an OSD when
it's size changes. This happens also on first damage and then the window
gets incorrectly placed when the position is set. So honor that the
position is set.

Test Plan

Restarted the session, ksplash positioned correctly now.

Diff Detail

Repository
R108 KWin
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.
graesslin created this revision.Oct 12 2017, 6:52 PM
Restricted Application added a project: KWin. · View Herald TranscriptOct 12 2017, 6:52 PM
Restricted Application added subscribers: kwin, plasma-devel. · View Herald Transcript

This needs additional testing for "normal" OSD windows. I'm not sure whether it affects them. It shouldn't or better said: if they are it's a bug somewhere else.

This needs additional testing for "normal" OSD windows. I'm not sure whether it affects them. It shouldn't or better said: if they are it's a bug somewhere else.

So tried this again: it does break normal OSD windows. But this also means that the OSD windows position themselves, which is not required and works against the general positioning of OSD windows.

And yes, that's a bug in Plasma:

[1117495.024]  -> org_kde_plasma_surface@210.set_position(0, 0)
[1117495.036]  -> org_kde_kwin_slide_manager@105.unset(wl_surface@88)
[1117495.041]  -> wl_surface@88.commit()
[1117495.051]  -> org_kde_plasma_surface@210.set_role(3)

Addressed the other problem in D8304. As that is only master I would retarget this change here for master as well instead of 5.11.

davidedmundson accepted this revision.Oct 15 2017, 8:44 AM
This revision is now accepted and ready to land.Oct 15 2017, 8:44 AM
This revision was automatically updated to reflect the committed changes.