<table><tr><td style="">broulik created this revision.<br />broulik added reviewers: Plasma, fvogt.<br />Herald added a project: Plasma.<br />Herald added a subscriber: plasma-devel.<br />broulik requested review of this revision.
</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/D25803">View Revision</a></tr></table><br /><div><strong>REVISION SUMMARY</strong><div><p>When the <tt style="background: #ebebeb; font-size: 13px;">QMenu</tt> is closed or the Purpose job finishes, we make sure to send a reply out and reset the pending reply serial.<br />
However, when we determined on the host side that we cannot share the contents, we send a reply but don't reset the pending reply serial, having every subsequent purpose request fail until reloading the extension or restarting the browser.</p></div></div><br /><div><strong>TEST PLAN</strong><div><p>5.17</p>

<p>(patched out the "isTrusted" check for testing)</p>

<ul class="remarkup-list">
<li class="remarkup-list-item">called <tt style="background: #ebebeb; font-size: 13px;">navigator.share({title: "test"})</tt></li>
<li class="remarkup-list-item">then called <tt style="background: #ebebeb; font-size: 13px;">navigator.share({url: "test})</tt></li>
</ul>

<p>Previously, the <tt style="background: #ebebeb; font-size: 13px;">url</tt> request would fail as the <tt style="background: #ebebeb; font-size: 13px;">title</tt> request (which is valid as far as <tt style="background: #ebebeb; font-size: 13px;">canShare</tt> is concerned in the extension but not for Purpose on the host side) got rejected but not properly reset.<br />
With this patch the <tt style="background: #ebebeb; font-size: 13px;">url</tt> request opens purpose menu as expected</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>R856 Plasma Browser Integration</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D25803">https://phabricator.kde.org/D25803</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>host/purposeplugin.cpp</div></div></div><br /><div><strong>To: </strong>broulik, Plasma, fvogt<br /><strong>Cc: </strong>plasma-devel, LeGast00n, The-Feren-OS-Dev, jraleigh, fbampaloukas, GB_2, ragreen, ZrenBot, ngraham, alexeymin, himcesjf, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, ahiemstra, mart<br /></div>