From 798154fbbca019a90a8b26b61cda4e6328511aad Mon Sep 17 00:00:00 2001 From: Karol Kosek Date: Sat, 9 Oct 2021 17:55:55 +0200 Subject: [PATCH] FileManager: Calculate file action permissions for subsequent columns Previously, the permission for the action was always calculated according to the first column. --- Userland/Applications/FileManager/DirectoryView.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/Userland/Applications/FileManager/DirectoryView.cpp b/Userland/Applications/FileManager/DirectoryView.cpp index 4dd5682f17..d9f571bebf 100644 --- a/Userland/Applications/FileManager/DirectoryView.cpp +++ b/Userland/Applications/FileManager/DirectoryView.cpp @@ -551,7 +551,13 @@ void DirectoryView::do_delete(bool should_confirm) bool DirectoryView::can_modify_current_selection() { - return !current_view().selection().is_empty() && access(path().characters(), W_OK) == 0; + auto selections = current_view().selection().indices(); + // FIXME: remove once Clang formats this properly. + // clang-format off + return selections.first_matching([&](auto& index) { + return !Core::System::access(node(index.parent()).full_path(), W_OK).is_error(); + }).has_value(); + // clang-format on } void DirectoryView::handle_selection_change()