<table><tr><td style="">broulik retitled this revision from "WIP: [Icon Widget] Bring back properties dialog" to "[Icon Widget] Bring back properties dialog".<br />broulik updated the test plan for this revision. <a href="https://phabricator.kde.org/transactions/detail/PHID-XACT-DREV-xaepwh4xlcpclcl/" rel="noreferrer">(Show Details)</a><br />broulik updated this revision to Diff 8967.<br />broulik 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/D2687" rel="noreferrer">View Revision</a></tr></table><br /><div><div><ul class="remarkup-list">
<li class="remarkup-list-item">Ensure Link desktop file is actually .desktop so the properties dialog offers to change the URL</li>
<li class="remarkup-list-item">Emit jump list actions changed when they do (fixes jump list actions not working when applet is created for the first time)</li>
<li class="remarkup-list-item">Call sync() on the KDesktopFile we created for the file Links so the applet works when it is created for the first time for a file</li>
<li class="remarkup-list-item">KIO::suggestName always appends suffix, so check whether the file exists before</li>
<li class="remarkup-list-item">use new KRun to run the apps and QProcess::startDetached as suggested by David F</li>
<li class="remarkup-list-item">Cleanup a bit, at least try to ;)</li>
</ul></div></div><br /><div><strong>EDIT DETAILS</strong><div><div style="white-space: pre-wrap; color: #74777D;"><span style="padding: 0 2px; color: #802b2b; background: rgba(251, 175, 175, .7);">It's pretty broken right now.</span><span style="padding: 0 2px; color: #3e6d35; background: rgba(151, 234, 151, .6);">Basically it makes sure we always have a desktop file which we can edit (either copying the one of the app or making a Link one in case of files). (the plasma 4 applet did some mental stuff with creating a desktop file only if you edited it and it wasnt writable etc etc).<br />
<br />
{F277906}<br />
<br />
* Launching apps and files works<br />
* Dropping files on apps (launches app with as arg) and folders works (offers copy/move/link here)<br />
* Jump list actions work<br />
* Creating multiple icons for the same app works and they can be edited separately</span><br />
<span style="padding: 0 2px; color: #802b2b; background: rgba(251, 175, 175, .7);">Basically it makes sure we always have a desktop file which we can edit (either copying the one of the app or making a Link one in case of files). (the plasma 4 applet did some mental stuff with creating a desktp file only if you edited it and it wasnt writable etc etc). I made sure though that existing applets (plasma 5.7) will be gracefully migrated by creating a desktop file on first launch.</span><span style="padding: 0 2px; color: #3e6d35; background: rgba(151, 234, 151, .6);">* The desktop files do not screw up existing apps or krunner/kickoff results (they're not in ~/.local/share/applications)</span><br />
<span style="padding: 0 2px; color: #802b2b; background: rgba(251, 175, 175, .7);">Due to some kio bug the editing of desktop file doesnt actually work.</span><span style="padding: 0 2px; color: #3e6d35; background: rgba(151, 234, 151, .6);">* Editing app info (e.g. icon, name,</span> <span style="padding: 0 2px; color: #802b2b; background: rgba(251, 175, 175, .7);">Also suggest file name always</span><span style="padding: 0 2px; color: #3e6d35; background: rgba(151, 234, 151, .6);">"run in terminal" setting) works and the</span> app<span style="padding: 0 2px; color: #802b2b; background: rgba(251, 175, 175, .7);">ends a (1) for some reason.</span><span style="padding: 0 2px; color: #3e6d35; background: rgba(151, 234, 151, .6);">let reflects the change immediately</span><br />
<span style="padding: 0 2px; color: #802b2b; background: rgba(251, 175, 175, .7);">Also launching it is broken as a I cant figure out a KRun call that actually work with both desktop files (app or Link){F277906}</span><span style="padding: 0 2px; color: #3e6d35; background: rgba(151, 234, 151, .6);">* Removing the applet deletes the backing file in ~/.local/share/plasma_icons (and vice-versa, if you start plasmashell and the file is missing, it will be recreated)<br />
<br />
Only issue I found after I fixed all of them™ was that when you have a link to two files of the same name (ie. one will have (1) suffix) and you edit some property (e.g. the icon) the name of the icon widget suddenly changes to reflect the actual file name with (1) suffix, ie. KIO updates the Name in the desktop file to contain the file name of the desktop file, but whatever.<br />
<br />
Didn't test the migration path for existing icons again, so please add some various icon widgets to your desktop (e.g. some files, some apps, also an app multiple times) and see how it goes :) It should™ work, though.</span></div></div></div><br /><div><strong>REPOSITORY</strong><div><div>R120 Plasma Workspace</div></div></div><br /><div><strong>CHANGES SINCE LAST UPDATE</strong><div><a href="https://phabricator.kde.org/D2687?vs=6501&id=8967" rel="noreferrer">https://phabricator.kde.org/D2687?vs=6501&id=8967</a></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D2687" rel="noreferrer">https://phabricator.kde.org/D2687</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>applets/icon/CMakeLists.txt<br />
applets/icon/iconapplet.cpp<br />
applets/icon/iconapplet.h<br />
applets/icon/package/contents/config/main.xml<br />
applets/icon/package/contents/ui/main.qml</div></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>broulik, Plasma, dfaure<br /><strong>Cc: </strong>mart, plasma-devel, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas<br /></div>