<table><tr><td style="">rthomsen created this revision.<br />rthomsen added a reviewer: elvisangelaccio.<br />Restricted Application added a subscriber: kde-utils-devel.<br />Restricted Application added a project: Ark.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D3303" rel="noreferrer">View Revision</a></tr></table><br /><div><strong>REVISION SUMMARY</strong><div><p>Needed infrastructure changes were done in ArchiveFormat, CliProperties and<br />
other classes. A combobox was added to CreateDialog which enables setting the<br />
encryption method.</p>

<p>Currently, only the Zip format when using cli7z supports multiple encryption<br />
methods. For other formats that support only one encryption method, the method<br />
is shown in the combobox.</p>

<p>This diff also enables detection of encryption method when opening archives<br />
which is then shown in PropertiesDialog. To this end a new signal was added to<br />
ReadOnlyArchiveInterface (encryptionMethodFound). The similar<br />
compressionMethodFound signal was modified to only take one string instead of<br />
QStringList.</p></div></div><br /><div><strong>TEST PLAN</strong><div><p>Create pasword-protected Zip archive with cli7z and choose different encryption<br />
methods. Verify that the selected method is used.<br />
Check that correct encryption method is shown in PropertiesDialog when opening<br />
various encrypted archives.</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>rARK Ark</div></div></div><br /><div><strong>BRANCH</strong><div><div>encmethod (branched from master)</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D3303" rel="noreferrer">https://phabricator.kde.org/D3303</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>app/mainwindow.cpp<br />
autotests/plugins/cli7zplugin/cli7ztest.cpp<br />
autotests/plugins/cli7zplugin/data/archive-zip-AES256-1602.txt<br />
autotests/plugins/clirarplugin/clirartest.cpp<br />
autotests/plugins/clizipplugin/cliziptest.cpp<br />
kerfuffle/archive_kerfuffle.cpp<br />
kerfuffle/archive_kerfuffle.h<br />
kerfuffle/archiveformat.cpp<br />
kerfuffle/archiveformat.h<br />
kerfuffle/archiveinterface.h<br />
kerfuffle/cliinterface.cpp<br />
kerfuffle/cliproperties.cpp<br />
kerfuffle/cliproperties.h<br />
kerfuffle/compressionoptionswidget.cpp<br />
kerfuffle/compressionoptionswidget.h<br />
kerfuffle/compressionoptionswidget.ui<br />
kerfuffle/createdialog.cpp<br />
kerfuffle/createdialog.h<br />
kerfuffle/options.cpp<br />
kerfuffle/options.h<br />
kerfuffle/propertiesdialog.cpp<br />
part/part.cpp<br />
plugins/cli7zplugin/cliplugin.cpp<br />
plugins/cli7zplugin/cliplugin.h<br />
plugins/cli7zplugin/kerfuffle_cli7z.json.cmake<br />
plugins/clirarplugin/cliplugin.cpp<br />
plugins/clirarplugin/cliplugin.h<br />
plugins/clirarplugin/kerfuffle_clirar.json.cmake<br />
plugins/cliunarchiverplugin/cliplugin.cpp<br />
plugins/clizipplugin/cliplugin.cpp<br />
plugins/clizipplugin/cliplugin.h<br />
plugins/clizipplugin/kerfuffle_clizip.json.cmake<br />
plugins/libarchive/libarchiveplugin.cpp</div></div></div><br /><div><strong>EMAIL PREFERENCES</strong><div><a href="https://phabricator.kde.org/settings/panel/emailpreferences/" rel="noreferrer">https://phabricator.kde.org/settings/panel/emailpreferences/</a></div></div><br /><div><strong>To: </strong>rthomsen, elvisangelaccio<br /><strong>Cc: </strong>kde-utils-devel, tctara<br /></div>