1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-28 13:55:06 +00:00

HackStudio: Disable Delete action on insufficient permissions

Hack Studio will now disable the action when any parent
of selected files do not have write permission.
This commit is contained in:
Karol Kosek 2021-07-16 17:09:45 +02:00 committed by Gunnar Beutner
parent 85c2ad94d5
commit 6e51fe146c

View file

@ -796,7 +796,13 @@ void HackStudioWidget::configure_project_tree_view()
m_project_tree_view->on_selection_change = [this] {
m_open_selected_action->set_enabled(!m_project_tree_view->selection().is_empty());
m_delete_action->set_enabled(!m_project_tree_view->selection().is_empty());
auto selections = m_project_tree_view->selection().indices();
auto it = selections.find_if([&](auto selected_file) {
return access(m_project->model().full_path(selected_file.parent()).characters(), W_OK) == 0;
});
bool has_permissions = it != selections.end();
m_delete_action->set_enabled(!m_project_tree_view->selection().is_empty() && has_permissions);
};
m_project_tree_view->on_activation = [this](auto& index) {