[effects/logout] Animate ksmserver-logout-greeter
ClosedPublic

Authored by zzag on Aug 14 2018, 4:56 PM.

Details

Summary

On Wayland session, the logout screen has "ksmserver-logout-greeter
ksmserver-logout-greet" window class, so let's animate it too.

Test Plan
  • Started Wayland session;
  • Pressed Ctrl+Alt+Del;
  • (the logout screen smoothly faded in);
  • Clicked the Cancel button;
  • (the logout screen smoothly faded out)
  • Started X11 session;
  • Pressed Ctrl+Alt+Del;
  • (the logout screen smoothly faded in);
  • Clicked the Cancel button;
  • (the logout screen smoothly faded out)

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.
zzag created this revision.Aug 14 2018, 4:56 PM
Restricted Application added a project: KWin. · View Herald TranscriptAug 14 2018, 4:56 PM
Restricted Application added a subscriber: kwin. · View Herald Transcript
zzag requested review of this revision.Aug 14 2018, 4:56 PM
zzag added a comment.Aug 14 2018, 4:57 PM
  • Started Wayland session;

...

  • (the logout screen smoothly faded out) ... and then the whole thing crashed :-)
zzag edited the test plan for this revision. (Show Details)Aug 14 2018, 5:10 PM
abetts added a subscriber: abetts.Aug 14 2018, 10:39 PM

What does this look like now?

zzag added a comment.Aug 15 2018, 7:25 AM

What does this look like now?

Right now(without this patch), the logout screen is not animated by the logout effect on Wayland. I.e., how the logout screen appears on X11 != how the logout screen appears on Wayland.

davidedmundson accepted this revision.Aug 15 2018, 7:37 AM
davidedmundson added a subscriber: davidedmundson.

It seems:

  • the WMClass is injected at a low level in the logout greeter because it has X11BypassWindowManager
  • when it got moved to a separate process, WMClass stayed working because it was done at a low level, and not done by the Qt
  • because it's at a low level that doesn't work with the appId in wayland shell protocol.

Maybe put that in the commit message for future readers.

Normally, I'd say we shouldn't work round other bits of Plasma, but in a sense using the ksmserver-logout-greeter is more correct.

This revision is now accepted and ready to land.Aug 15 2018, 7:37 AM
zzag added a comment.Aug 15 2018, 8:23 AM

Normally, I'd say we shouldn't work round other bits of Plasma, but in a sense using the ksmserver-logout-greeter is more correct.

Shouldn't we then go the right way and check appId("ksmserver org.kde.ksmserver", I guess)? Shouldn't we fix ksmserver instead? Please bear in mind that I have no idea how ksmserver works under hood.

This revision was automatically updated to reflect the committed changes.