https://bugs.kde.org/show_bug.cgi?id=356548

Eike Hein <h...@kde.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|CONFIRMED                   |RESOLVED
         Resolution|---                         |FIXED
      Latest Commit|                            |http://commits.kde.org/plas
                   |                            |ma-workspace/7a54ad3dafc5cb
                   |                            |689168b6d3dc00477e30f32d9b

--- Comment #9 from Eike Hein <h...@kde.org> ---
Git commit 7a54ad3dafc5cb689168b6d3dc00477e30f32d9b by Eike Hein.
Committed on 09/03/2016 at 18:01.
Pushed by hein into branch 'master'.

Handle KIO URLs which proxy for local URLs in Icon applet.

Dragging an app link .desktop file from Folder View showing desktop:/
from Folder View (but not Dolphin) to desktop/panel, spawning an Icon,
was broken because:
- KDirModel::metaData adds the UDS_LOCAL_PATH (local file) url as
  text/uri-list to the drag MIME data, but also the original desktop:/
  URL as a second special MIME format for KDE URLs, using KUrlMimeData
- Dolphin only does the first part, using a partial code copy from
  KDirModel
- ContainmentInterface::processMimeData uses KUrlMimeData with default
  options to decode the drag MIME data - the default option is
  PreferKdeURLs, so it retrieves the desktop:/ URL from the FV drag
  but not the Dolphin drag (since it lacks it)
- Thus the Icon applet is handed a desktop:/ URL in the FV case, which
  the code - not using KIO - isn't written to handle

This patch adds an async KIO::StatJob to the Icon code when
QURL::isLocalFile is fast to try and resolve an URL to a more local
one the rest of the code can handle.

Rewriting more of the Icon code to use KIO /would/ have been nice,
however it ultimately ends up using KDesktopFile which can't handle
non-local files, so at some point resolving to the proxied-for path
would happen anyway.

M  +18   -0    applets/icon/plugin/icon_p.cpp
M  +2    -0    applets/icon/plugin/icon_p.h

http://commits.kde.org/plasma-workspace/7a54ad3dafc5cb689168b6d3dc00477e30f32d9b

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to