Created attachment 127121 [details] See the red arrow and the red box. Non empty folders without folders in it (folders with only files in it) can't be expanded in the tree view mode of the "Filesystem Browser", the arrow next to the folder name is not displayed. This happens to folders containing only files or symlinks to folders. STEPS TO REPRODUCE 1. open kate 2. open "Filesystem Browser" 3. select TreeView 4. expand a folder with a sub-folder in it, which has no sub-folder/folders 6. find you self with a non empty folder that can't be expanded OBSERVED RESULT Folders without sub folders cant be expanded. EXPECTED RESULT I would have expected all non empty folder in the TreeView mode to be expandable. SOFTWARE/OS VERSIONS Linux/KDE Plasma: Linux subplex 5.5.13-arch1-1 #1 SMP PREEMPT Wed, 25 Mar 2020 16:04:40 +0000 x86_64 GNU/Linux KDE Plasma Version: 5.18.3 KDE Frameworks Version: 5.68.0 Qt Version: Qt 5.14.1 (built against 5.14.1) ADDITIONAL INFORMATION The xcb windowing system
I have the same problem. I found a workaround on one of my computers though. I installed Kate via Flatpak, and it's running version 19.12.3. The KDE frameworks is 5.67.0. The Qt is 5.14.1 (built against 5.14.1).
Downgrade kf5-kio solved this problem.
*** Bug 420020 has been marked as a duplicate of this bug. ***
Created attachment 128272 [details] fix fix
Could you please submit the patch for review? There might be issues developers want to discuss. https://community.kde.org/Get_Involved/development#Submit_a_patch
I believe https://phabricator.kde.org/D27731 caused the issue. ebe7714300af53ba6f4b5cacddb53a2fd52c7d5a
*** Bug 422084 has been marked as a duplicate of this bug. ***
Oops. I'll fix it. I think KDirModel can just query the dirlister for the mode. But I'll write a unittest first.
Git commit fe87d93250d2f9b302e0498cc99a2b7d9fab7583 by David Faure. Committed on 30/05/2020 at 00:56. Pushed by dfaure into branch '2020_05_hasChildren_fix'. KDirModel: fix hasChildren() regression for trees with files shown The logic I introduced in commit ebe7714300af53ba6f4b5cacddb53a2fd52c7d5a assumed that only subdirs were shown in the tree (konqueror sidebar use case). However KDirOperator can also show files, so this introduced bug 419434. Now implemented correctly for both use cases, with unittest. FIXED-IN: 5.71 M +46 -0 autotests/kdirmodeltest.cpp M +2 -0 autotests/kdirmodeltest.h M +5 -1 src/widgets/kdirmodel.cpp https://invent.kde.org/frameworks/kio/commit/fe87d93250d2f9b302e0498cc99a2b7d9fab7583
*** Bug 422205 has been marked as a duplicate of this bug. ***
Hi David, I have found cases where your patch does not work. I have a directory with only a sym-link in it, this results in the same bug: the directory is not expendable. This also applies to named pipes and character devices. I assume this also happens with block devices but I can not find a test case for it. Mario
Note: This also applies to hidden files (.file).
Proposed patch: https://invent.kde.org/frameworks/kio/-/merge_requests/60
Git commit e15ab3807944f3d371ce1beb004c4a8474989626 by Mario Aichinger. Committed on 29/06/2020 at 19:47. Pushed by dfaure into branch 'master'. KDirModel: fix hasChildren() regression for trees with hidden files, symlinks, pipes and character devices This is a follow up to commit fe87d932 which fixed hasChildren() for directories with regular files in them. With this commit not only directories with regular files in them are considered as non empty but also directories containing hidden files, symlinks, pipes and character devices. FIXED-IN: 5.72 M +64 -10 autotests/kdirmodeltest.cpp M +27 -7 autotests/kiotesthelper.h M +11 -3 src/widgets/kdirmodel.cpp https://invent.kde.org/frameworks/kio/commit/e15ab3807944f3d371ce1beb004c4a8474989626