<table><tr><td style="">hein created this revision.<br />hein added reviewers: davidedmundson, Zren.<br />Restricted Application added a project: Plasma.<br />hein 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/D13274">View Revision</a></tr></table><br /><div><strong>REVISION SUMMARY</strong><div><p>The Task Manager applet previously set a task's launcher URL as<br />
generic URL MIME data of drags initiated from it. This made<br />
everything that's willing to handle an URL drop a drop target<br />
for drags from the Task Manager, which resulted e.g. in users<br />
accidentally dropping .desktop files into chat apps that would<br />
immediately send them as a message.</p>
<p>In truth, the utility of drags initiated from the Task Manager<br />
is mostly confined to the shell: Adding apps to the desktop, to<br />
the panel, to launcher menus (we don't have this currently but<br />
should add it), and so on. It's therefore appropriate to use a<br />
special internal MIME type for this payload instead of one as<br />
generic as text/url. We already use special internal MIME types<br />
to shuttle around window ids (for drops onto pagers, to assign<br />
tasks to different virtual desktops or activities) and filter<br />
out drops onto the Task Manager applet itself.</p>
<p>This patch makes the necessary changes in the Task Manager and<br />
in the Folder View containment, which needs special care due to<br />
its complex drop handling. A seperate patch will augment<br />
ContainmentInterface::processMimeData to take care of the Desktop<br />
and Panel containments (while compatible with the Folder View<br />
change).</p>
<p>This is an implementation of an idea by David Edmundson posted<br />
in <a href="https://phabricator.kde.org/D13162" style="background-color: #e7e7e7;
border-color: #e7e7e7;
border-radius: 3px;
padding: 0 4px;
font-weight: bold;
color: black;text-decoration: line-through;">D13162</a>.</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>R119 Plasma Desktop</div></div></div><br /><div><strong>BRANCH</strong><div><div>master</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D13274">https://phabricator.kde.org/D13274</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>applets/taskmanager/plugin/draghelper.cpp<br />
containments/desktop/package/contents/ui/code/FolderTools.js<br />
containments/desktop/plugins/folder/foldermodel.cpp</div></div></div><br /><div><strong>To: </strong>hein, davidedmundson, Zren<br /><strong>Cc: </strong>plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart<br /></div>