Set pid on the ClientConnection backing the PlasmaWindow surface.
ClosedPublic

Authored by hein on May 8 2017, 12:48 AM.

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.
hein created this revision.May 8 2017, 12:48 AM
Restricted Application added a project: KWin. · View Herald TranscriptMay 8 2017, 12:48 AM
Restricted Application added subscribers: KWin, kwin. · View Herald Transcript
graesslin requested changes to this revision.May 8 2017, 4:23 AM
graesslin added inline comments.
abstract_client.cpp
706–707

Why is setSkipTaskbar removed?

707

What is this line supposed to do?

This revision now requires changes to proceed.May 8 2017, 4:23 AM

This has commit embargo till 5.10 is branched.

Please note that the code you wrote will give you an incorrect PID for all XWayland windows. Instead of going through the ClientConnection I suggest to use KWin::Toplevel::pid(). That one returns the correct pid for all X windows. But it would crash for Wayland windows currently. So make this method virtual and override it in ShellClient and add the code for getting the pid from the surface in ShellClient.

hein added a comment.May 8 2017, 9:35 AM

Sorry, I was sleep-walking while coding on this, see the timestamp :) I'll un-fuck this ...

hein updated this revision to Diff 14268.May 8 2017, 9:58 AM
hein edited edge metadata.

Put code working with the client connection into ShellClient.

Fix commit subject.

Restricted Application edited projects, added Plasma; removed KWin. · View Herald TranscriptMay 8 2017, 9:58 AM
graesslin accepted this revision.May 8 2017, 10:23 AM
This revision is now accepted and ready to land.May 8 2017, 10:23 AM

Why was this change pushed although it had a "This has commit embargo till 5.10 is branched." comment? Yes I accepted it, but obviously the embargo still holds. Even more the commit builds up on changes in KWayland which are not pushed.

May I ask why it takes 4 h without anybody noticing that the commit broke the build? Does it have to be the maintainer who cleans up after an incorrect push?

hein added a comment.May 8 2017, 10:54 PM

We rescheduled the frameworks release to match Plasma and have almost a week until 5.10 freezes, so why are you holding this back? I'd at least like some explanation for the embargo.

hein added a comment.May 8 2017, 10:58 PM

Nevermind, I got the scheduling wrong.

It's been a pretty crazy 36 hours.

This revision was automatically updated to reflect the committed changes.

Please note that I'm going to revert all changes which are built up on a broken API change in KWayland. We need to take quality serious, so if the KWayland regression doesn't get fixed asap I will have to revert everything.

hein added a comment.May 16 2017, 5:07 AM

What was the regression? (I'm aware of a failing unit test, but since the unit test itself was new, it was obviously not a regression.)

In D5756#109957, @hein wrote:

What was the regression? (I'm aware of a failing unit test, but since the unit test itself was new, it was obviously not a regression.)

The regression is the fact that kwayland was green and now is yellow on CI. To me this is a regression.