<table><tr><td style="">hein 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/D4575" rel="noreferrer">View Revision</a></tr></table><br /><div><div><p>In the review comment you write that users of the API can use the MIME data to decide whether to call setApplicationActions, but in <a href="https://phabricator.kde.org/D4576" style="background-color: #e7e7e7;
          border-color: #e7e7e7;
          border-radius: 3px;
          padding: 0 4px;
          font-weight: bold;
          color: black;text-decoration: none;" rel="noreferrer">D4576</a> you end up manipulating the provided QMenu instance directly, including code written in awareness of KIO implementation details like the "Determining MIME type" phase ... this expands the API contract from the signal to kind of include the UI design of the popup, which means KIO can never visualize this differently or drop QMenu for DropJob.</p>

<p>Humm.</p>

<p>I understand it's because async, but can we instead somehow teach the DropJob API to accept actions later, and instead of passing a QMenu around work with the DropJob and QActions to keep it UI-agnostic and the API contract documentable?</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>R241 KIO</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D4575" rel="noreferrer">https://phabricator.kde.org/D4575</a></div></div><br /><div><strong>EMAIL PREFERENCES</strong><div><a href="https://phabricator.kde.org/settings/panel/emailpreferences/" rel="noreferrer">https://phabricator.kde.org/settings/panel/emailpreferences/</a></div></div><br /><div><strong>To: </strong>mart, Plasma<br /><strong>Cc: </strong>hein, plasma-devel, Frameworks, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol<br /></div>