<table><tr><td style="">esjeon added a comment.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D26338">View Revision</a></tr></table><br /><div><div><blockquote style="border-left: 3px solid #8C98B8;
          color: #6B748C;
          font-style: italic;
          margin: 4px 0 12px 0;
          padding: 8px 12px;
          background-color: #F8F9FC;">
<div style="font-style: normal;
          padding-bottom: 4px;">In <a href="https://phabricator.kde.org/D26338#588960" style="background-color: #e7e7e7;
          border-color: #e7e7e7;
          border-radius: 3px;
          padding: 0 4px;
          font-weight: bold;
          color: black;text-decoration: none;">D26338#588960</a>, <a href="https://phabricator.kde.org/p/davidedmundson/" style="
              border-color: #f1f7ff;
              color: #19558d;
              background-color: #f1f7ff;
                border: 1px solid transparent;
                border-radius: 3px;
                font-weight: bold;
                padding: 0 4px;">@davidedmundson</a> wrote:</div>
<div style="margin: 0;
          padding: 0;
          border: 0;
          color: rgb(107, 116, 140);"><p>On the conceptual level, does it make more sense for the relevant client (konsole) to monitor for compositing changed itself. It's something that could change at runtime regardless, so it needs to react to it anyway?<br />
 If it does need that code anyway, there's no point doing fixes in startkde</p></div>
</blockquote>

<p>Technically, yes, apps can do that. But this will force changes to any apps that embed Konsole (i.e. dolphin, kate) or depend on desktop effects. Also, this issue will arise whenever an app implements such features. We can just solve this here and forget about it forever.</p>

<p>Also, the problem only occurs during session restoration, so it's clear that one change here can fix for all applications.</p>

<blockquote style="border-left: 3px solid #a7b5bf; color: #464c5c; font-style: italic; margin: 4px 0 12px 0; padding: 4px 12px; background-color: #f8f9fc;"><p>Code wise, this gives a timeout for anyone who doesn't run kwin composited, which would be a problem as is.</p></blockquote>

<p>Welp, I agree, but there's just no way to figure out if user wants compositor or just WM. A possible solution is to make this toggleable through configuration or env, which isn't exactly beautiful.</p>

<p>Still, the impact can be minimized by moving <tt style="background: #ebebeb; font-size: 13px;">wmjob</tt> to right before session restoration instead of stage0.</p>

<blockquote style="border-left: 3px solid #a7b5bf; color: #464c5c; font-style: italic; margin: 4px 0 12px 0; padding: 4px 12px; background-color: #f8f9fc;"><p>also I don't like the split that ksmserver is waiting for kwin to register on ICE, and startkde is waiting on kwin through a combo of both DBus and X atoms in KWindowSystem::compositingActive(). That's 3 different paths all used at once.</p>

<p>I've been wanting to move the kwin startup from ksmserver into startkde anyway, doing those things together would make the most sense.</p></blockquote>

<p>I agree. Things will be much cleaner if WM is handled in startkde. WM isn't really a part of session, and ksmserver already treats WM as a special case anyway.</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>R120 Plasma Workspace</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D26338">https://phabricator.kde.org/D26338</a></div></div><br /><div><strong>To: </strong>esjeon, Plasma, davidedmundson<br /><strong>Cc: </strong>asturmlechner, plasma-devel, LeGast00n, The-Feren-OS-Dev, jraleigh, zachus, fbampaloukas, GB_2, ragreen, ZrenBot, ngraham, alexeymin, himcesjf, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, ahiemstra, mart<br /></div>