FileManager: Disable delete action if user can't write in current path

Before this the delete action would be enabled in whenever was the case
in which the user had some selection made. This patch forces a check
to access() with the current folder path to see if the user actually can
delete nodes in it.
This commit is contained in:
Andres Vieira 2020-04-27 18:24:19 +02:00 committed by Andreas Kling
commit 1d874c03af
Notes: sideshowbarker 2024-07-19 07:14:17 +09:00

View file

@ -702,8 +702,10 @@ int run_in_windowed_mode(RefPtr<Core::ConfigFile> config, String initial_locatio
directory_view.on_selection_change = [&](GUI::AbstractView& view) {
// FIXME: Figure out how we can enable/disable the paste action, based on clipboard contents.
copy_action->set_enabled(!view.selection().is_empty());
delete_action->set_enabled(!view.selection().is_empty());
auto selection = view.selection();
delete_action->set_enabled(!selection.is_empty() && access(directory_view.path().characters(), W_OK) == 0);
copy_action->set_enabled(!selection.is_empty());
};
auto open_in_text_editor_action = GUI::Action::create("Open in TextEditor...", Gfx::Bitmap::load_from_file("/res/icons/TextEditor16.png"), [&](auto&) {