Review Request 125293: Fix drag'n'drop extraction of CLI plugins
Elvis Angelaccio
elvis.angelaccio at kdemail.net
Mon Sep 21 17:27:00 UTC 2015
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/125293/#review85720
-----------------------------------------------------------
kerfuffle/cliinterface.cpp (line 241)
<https://git.reviewboard.kde.org/r/125293/#comment59243>
I don't understand the need for this boolean. Why do you fallback to the old behavior if the list of files is empty?
- Elvis Angelaccio
On Sept. 18, 2015, 7:11 a.m., Ragnar Thomsen wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/125293/
> -----------------------------------------------------------
>
> (Updated Sept. 18, 2015, 7:11 a.m.)
>
>
> Review request for KDE Utils, Elvis Angelaccio and Raphael Kubo da Costa.
>
>
> Bugs: 208384
> http://bugs.kde.org/show_bug.cgi?id=208384
>
>
> Repository: ark
>
>
> Description
> -------
>
> This fixes drag'n'drop extraction of selected entries from Ark to e.g. Dolphin. Previously, the entries would be extracted with full path, which is not what the user expects and not how libarchive handles tar-based archives. This was due to the CLI plugins not supporting root nodes (i.e. removing a part of the path). This is now circumvented by extracting to a QTemporaryDir, removing the root node from the path, and finally moving the files to their final destination. The moving to final destination is done in a new member function in CliInterface (moveToFinalDest). This function checks if the destination file exists and prompts the user for action if that is the case.
>
> The emit finished() call, which signals that the extract/list/delete/add-job has ended, was previously done in CliInterface::processFinished(). The call had to be moved to CliInterface::copyFiles()/list()/deleteFiles()/addFiles(), respectively. Otherwise the jobs would be completed after extracting to the temporary dir and before moving them to their final destination. This was also necessary for the emit userQuery() call in moveToFinalDest().
>
> Things to consider:
> QTemporaryDir creates a directory in /tmp. What happens/should happen if this partition fills up?
>
>
> Diffs
> -----
>
> kerfuffle/cliinterface.h 052851a
> kerfuffle/cliinterface.cpp 1e936a6
>
> Diff: https://git.reviewboard.kde.org/r/125293/diff/
>
>
> Testing
> -------
>
> Extracting files from zip, 7z and rar archives by selecting and dragging them to Dolphin.
>
>
> Thanks,
>
> Ragnar Thomsen
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-utils-devel/attachments/20150921/af8a6731/attachment.html>
More information about the Kde-utils-devel
mailing list