Bug 504394 - Showing Properties of a folder in open/save dialogs closes it immediately
Summary: Showing Properties of a folder in open/save dialogs closes it immediately
Status: CONFIRMED
Alias: None
Product: frameworks-kio
Classification: Frameworks and Libraries
Component: Open/save dialogs (other bugs)
Version First Reported In: 6.14.0
Platform: Arch Linux Linux
: NOR normal
Target Milestone: ---
Assignee: KIO Bugs
URL:
Keywords:
: 508421 (view as bug list)
Depends on:
Blocks:
 
Reported: 2025-05-17 09:42 UTC by Patrick Silva
Modified: 2025-08-28 13:45 UTC (History)
5 users (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Patrick Silva 2025-05-17 09:42:37 UTC
STEPS TO REPRODUCE
1. open Kate
2. press ctrl+o
3. right-click on a folder and choose "Properties"

OBSERVED RESULT
the file open dialog closes and the Properties of the folder does not open

EXPECTED RESULT
the Properties of the folder opens

SOFTWARE/OS VERSIONS
Operating System: Arch Linux 
KDE Plasma Version: 6.3.90
KDE Frameworks Version: 6.14.0
Qt Version: 6.9.0
Graphics Platform: Wayland
Comment 1 Nate Graham 2025-05-19 15:43:42 UTC
Hmm, this works for me with those exact steps, also on Wayland.
Comment 2 Patrick Silva 2025-05-19 16:25:10 UTC
Testing again I have noticed that the bug does not occur consistently. It occurs often when the right-clicked folder is located in my Home, but it's harder to reproduce with folders located in other partitions/devices. I can also reproduce on X11.
Comment 3 Nate Graham 2025-05-19 20:57:18 UTC
Ok, I think I found the pattern. It was a result of me mis-reading the bug report! I can reproduce this 100% of the time when getting the properties of a *folder*, but not at all when getting the properties of a *file*.

Before the dialog closes, there's what appears to be a graphical glitch, which is typically not seen in QtWidgets' UIs. So I wonder if this has something to do with needing to spin up a QML engine to load the code for the Sharing tab.

Not sure if it's useful, but here's a debug log from the journal while I reproduce the issue in KWrite:

kf.service.services: query for mimeType "inode/directory" returning 5 offers
kf.coreaddons: Checking for plugins in QList("/home/nate/kde/usr/bin/kf6/propertiesdialog", "/usr/lib64/qt6/plugins/kiconthemes6/kf6/propertiesdialog", "/home/nate/kde/usr/lib64/plugins/kiconthemes6/kf6/propertiesdialog", "/home/nate/kde/usr/lib64/plugins/kf6/propertiesdialog", "/usr/lib64/qt6/plugins/kf6/propertiesdialog")
kf.kio.core: We got some errors while running testparm "Weak crypto is allowed by GnuTLS (e.g. NTLM as a compatibility fallback)"
kf.kirigami.platform: Loading style plugin from "/home/nate/kde/usr/lib64/plugins/kf6/kirigami/platform/org.kde.desktop.so"
kf.baloo: Folder cache: std::vector("/home/nate/Documents/Software/git-repos/": excluded, "/home/nate/VirtualBox VMs/": excluded, "/home/nate/many/": excluded, "/home/nate/kde/": excluded, "/home/nate/": included)
kf.kio.workers.gdrive: Starting Google Drive properties tab
kf.kio.workers.gdrive: Can't show Google Drive properties for non Google Drive entries
kf.kio.core.dirlister: ~KCoreDirLister KCoreDirLister(0x150c4eb0)
kf.kio.core.dirlister: lister: KCoreDirLister(0x150c4eb0) silent= false
kf.kio.core.dirlister: KCoreDirLister(0x150c4eb0)  url= QUrl("file:///home/nate/kde/src/bluedevil")
kf.kio.core.dirlister: KCoreDirLister(0x150c4eb0)
kf.kio.core.dirlister: Iterating over dirs QList(QUrl("file:///home/nate/kde/src/bluedevil"))
kf.kio.core.dirlister: KCoreDirLister(0x150c4eb0)  _url:  QUrl("file:///home/nate/kde/src/bluedevil")
kf.kio.core.dirlister: KCoreDirLister(0x150c4eb0) item moved into cache: QUrl("file:///home/nate/kde/src/bluedevil")
kf.kio.core.dirlister: ~KCoreDirLister KCoreDirLister(0x14fcbfc0)
kf.kio.core.dirlister: lister: KCoreDirLister(0x14fcbfc0) silent= false
kf.kio.core.dirlister: KCoreDirLister(0x14fcbfc0)  url= QUrl("tags:/")
kf.kio.core.dirlister: KCoreDirLister(0x14fcbfc0)
kf.kio.core.dirlister: Iterating over dirs QList(QUrl("tags:/"))
kf.kio.core.dirlister: KCoreDirLister(0x14fcbfc0)  _url:  QUrl("tags:/")
kf.kio.core.dirlister: KCoreDirLister(0x14fcbfc0) item moved into cache: QUrl("tags:/")
org.kde.baloo.widgets: "/home/nate/kde/src/bluedevil/doc"   properties: QMultiMap()
kf.kio.core.connection: KIO::ConnectionBackend(0x7f9f4c001700) Got 105 bytes
kf.kio.core.connection: KIO::ConnectionBackend(0x7f9f4c001700) Beginning of command 80 of size 42
kf.kio.core.connection: QLocalSocket(0x7f9f4c002570) Want to read 42 bytes; appending to already existing bytes 0
kf.kio.core.connection: emitting task 80 42
kf.kio.core.connection: KIO::ConnectionBackend(0x7f9f4c001700) Got 53 bytes
kf.kio.core.connection: KIO::ConnectionBackend(0x7f9f4c001700) Beginning of command 95 of size 43
kf.kio.core.connection: QLocalSocket(0x7f9f4c002570) Want to read 43 bytes; appending to already existing bytes 0
kf.kio.core.connection: emitting task 95 43
kf.kio.core.connection: KIO::ConnectionBackend(0x15353f00) Got 106 bytes
kf.kio.core.connection: KIO::ConnectionBackend(0x15353f00) Beginning of command 27 of size 96
kf.kio.core.connection: KIO::ConnectionBackend(0x7f9f50001700) Got 105 bytes
kf.kio.core.connection: QLocalSocket(0x15287a40) Want to read 96 bytes; appending to already existing bytes 0
kf.kio.core.connection: KIO::ConnectionBackend(0x7f9f50001700) Beginning of command 80 of size 42
kf.kio.core.connection: emitting task 27 96
kf.kio.core.connection: QLocalSocket(0x7f9f50002570) Want to read 42 bytes; appending to already existing bytes 0
kf.kio.core.connection: emitting task 80 42
kf.kio.core.connection: KIO::ConnectionBackend(0x15353f00) Got 10 bytes
kf.kio.core.connection: KIO::ConnectionBackend(0x15353f00) Beginning of command 104 of size 0
kf.kio.core.connection: KIO::ConnectionBackend(0x7f9f50001700) Got 53 bytes
kf.kio.core.connection: KIO::ConnectionBackend(0x7f9f50001700) Beginning of command 95 of size 43
kf.kio.core.connection: QLocalSocket(0x7f9f50002570) Want to read 43 bytes; appending to already existing bytes 0
kf.kio.core.connection: emitting task 95 43
kf.kio.core.connection: QLocalSocket(0x15287a40) Want to read 0 bytes; appending to already existing bytes 0
kf.kio.core.connection: emitting task 104 0
kf.kio.core.connection: KIO::ConnectionBackend(0x154a9d60) Got 106 bytes
kf.kio.core.connection: KIO::ConnectionBackend(0x154a9d60) Beginning of command 27 of size 96
kf.kio.core.connection: QLocalSocket(0x15370a20) Want to read 96 bytes; appending to already existing bytes 0
kf.kio.core.connection: emitting task 27 96
kf.kio.core.connection: KIO::ConnectionBackend(0x154a9d60) Got 10 bytes
kf.kio.core.connection: KIO::ConnectionBackend(0x154a9d60) Beginning of command 104 of size 0
kf.kio.core.connection: QLocalSocket(0x15370a20) Want to read 0 bytes; appending to already existing bytes 0
kf.kio.core.connection: emitting task 104 0
kf.texteditor: 
kf.texteditor: 
kf.sonnet.core: deleting 0x14d9a2c8 for ""
kf.coreaddons.kdirwatch: path= "/home/nate/.cache/ksycoca6_en_n4I7_W5_wzFf7xR7iRDN6o1OU0A=" sub_entry: 0x0
kf.kio.core.dirlister: 
kf.coreaddons.kdirwatch: path= "/home/nate/kde/src/bluedevil" sub_entry: 0x0
kf.kio.core: killing worker process pid 39726 ( "thumbnail://" )
kf.kio.core: killing worker process pid 39719 ( "tags://" )
kf.kio.core: aborting worker thread for  "file://"
kf.kio.core: aborting worker thread for  "file://"
kf.kio.core: aborting worker thread for  "file://"
kf.sonnet.core: Removing loader:  Sonnet::Loader(0x7f9fced49e30)
Comment 4 Patrick Silva 2025-05-19 21:16:34 UTC
a possibly related bug was fixed in the past, see bug 497684
Comment 5 Nate Graham 2025-05-20 19:01:14 UTC
Yes indeed, I suspect some kind of relationship there.
Comment 6 Patrick Silva 2025-08-19 03:10:47 UTC
*** Bug 508421 has been marked as a duplicate of this bug. ***
Comment 7 Akseli Lahtinen 2025-08-28 13:45:25 UTC
Ah I remember this bug happening with Dolphin: https://invent.kde.org/network/kdenetwork-filesharing/-/merge_requests/63

Do we have other properties plugins that cause this and need similar treatment?