1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 04:07:44 +00:00

FileManager+FileOperation: Implement (and use) 'Move' command

`FileOperation Move ...` is now used for cut-and-paste in the
FileManager.
This commit is contained in:
Sam Atkins 2021-06-17 17:51:40 +01:00 committed by Andreas Kling
parent a1b4ec1507
commit 0a62d517fd
2 changed files with 152 additions and 32 deletions

View file

@ -71,7 +71,7 @@ void delete_paths(Vector<String> const& paths, bool should_confirm, GUI::Window*
}
}
void run_file_operation([[maybe_unused]] FileOperation operation, Vector<String> const& sources, String const& destination, GUI::Window* parent_window)
void run_file_operation(FileOperation operation, Vector<String> const& sources, String const& destination, GUI::Window* parent_window)
{
int pipe_fds[2];
if (pipe(pipe_fds) < 0) {
@ -97,7 +97,17 @@ void run_file_operation([[maybe_unused]] FileOperation operation, Vector<String>
Vector<char const*> file_operation_args;
file_operation_args.append("/bin/FileOperation");
file_operation_args.append("Copy");
switch (operation) {
case FileOperation::Copy:
file_operation_args.append("Copy");
break;
case FileOperation::Cut:
file_operation_args.append("Move");
break;
default:
VERIFY_NOT_REACHED();
}
for (auto& source : sources)
file_operation_args.append(source.characters());