https://bugs.kde.org/show_bug.cgi?id=523252
Bug ID: 523252
Summary: remote:/ (Network) discards a Type=Link entry's icon
and shows a generic folder for filesystem-type targets
Classification: Applications
Product: dolphin
Version First unspecified
Reported In:
Platform: Arch Linux
OS: Linux
Status: REPORTED
Severity: minor
Priority: NOR
Component: view-engine: icons mode
Assignee: [email protected]
Reporter: [email protected]
CC: [email protected]
Target Milestone: ---
Created attachment 194442
--> https://bugs.kde.org/attachment.cgi?id=194442&action=edit
Record Dolphin Bug
DESCRIPTION
In the remote:/ (Network) view, an entry whose target is a browsable/listable
KIO worker (output=filesystem) shows its configured Icon= for about one frame
and is then replaced by the generic folder icon (mimetype inode/directory). The
custom icon is correct in every other context (icon picker, and the
breadcrumb/root when actually entering the target), so this is specific to how
the Network view resolves the entry's icon. The shipped MTP Devices entry
reproduces it too.
STEPS TO REPRODUCE
1. Open remote:/ in Dolphin (the "Network" view).
2. Look at the MTP Devices entry (shipped by default, Icon=multimedia-player).
Optionally add a custom remoteview .desktop with Type=Link, URL=<proto>:/,
Icon=<any-existing-theme-icon>, where <proto> is a KIO worker declaring
output=filesystem.
3. Watch the entry's icon as the view finishes loading.
OBSERVED RESULT
The configured icon appears briefly and is then replaced by the generic folder
icon. Reproducible with the default MTP entry; it does not keep
multimedia-player.
EXPECTED RESULT
The entry keeps the icon declared in its .desktop Icon= (or, failing that,
KProtocolInfo::icon(scheme) / the icon returned by stat of the target root),
the same way Shared Folders (SMB) and Bluetooth keep theirs.
SOFTWARE/OS VERSIONS
Operating System: Arch Linux (kernel 7.1.3-arch2-2)
KDE Plasma Version: 6.7.3
KDE Frameworks Version: 6.28.0
Qt Version: 6.11.1
ADDITIONAL INFORMATION
- Dolphin version: 26.04.3.
- Entries whose target is not resolved as a directory keep their icon fine:
Shared Folders (SMB) → network-workgroup, Bluetooth →
preferences-system-bluetooth. The issue is specific to filesystem-type targets
(MTP, and any third-party listable protocol such as a custom rclone:/ worker).
- In the third-party case the icon is declared consistently in all three places
available to the app — the .desktop Icon=, the protocol metadata
(KProtocolInfo::icon), and the worker's root UDS_ICON_NAME — all the same icon
name, and it still reverts.
- Possibly relevant while investigating: src/kioworkers/remote/remoteimpl.cpp
createEntry() sets UDS_ICON_NAME = desktop.readIcon() correctly, so the
override appears to happen later, in the view's asynchronous icon/target
resolution rather than in the remote worker itself. KIO::iconNameForUrl()
returns the protocol icon for a protocol root (path length ≤ 1), so the
discarded icon does not seem to originate from that path.
- A screen recording showing the ~1-frame flash-then-revert is attached.
--
You are receiving this mail because:
You are watching all bug changes.