diff --git a/NEWS b/NEWS
index a9b2829..501de3a 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,5 @@
Latest version:
- 18 Sep 2019, V0.3.0
+ 24 Oct 2019, V0.3.0
See "ChangeLog" for changes.
diff --git a/data/translations/arqiver.ts b/data/translations/arqiver.ts
index 3497118..da44ae7 100644
--- a/data/translations/arqiver.ts
+++ b/data/translations/arqiver.ts
@@ -249,8 +249,8 @@ Clear text with the Escape key.
-
-
+
+
@@ -372,138 +372,138 @@ Clear text with the Escape key.
-
+
-
-
+
+
-
+
-
+
-
+
-
-
+
+
-
-
-
-
+
+
+
+
-
+
-
-
-
-
-
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
diff --git a/data/translations/arqiver_eo.ts b/data/translations/arqiver_eo.ts
index 236303d..d963e18 100644
--- a/data/translations/arqiver_eo.ts
+++ b/data/translations/arqiver_eo.ts
@@ -251,8 +251,8 @@ Viŝu la tekston per la eskapa klavo.
-
-
+
+
Malfermadi Arkivon...
@@ -374,101 +374,101 @@ Viŝu la tekston per la eskapa klavo.
Montri Ĉiujn Dosierojn (*)
-
+
Estigi Arkivon
-
-
+
+
Demando
-
+
La jana arkivo jam ekzistas:
-
+
Ĉu vi volas anstataŭigi ĝin?
-
+
Malfermi Arkivon
-
-
+
+
Aldoni al Arkivon
-
-
-
-
+
+
+
+
Aldoni Erojn...
-
+
Forviŝi Erojn...
-
-
-
-
-
+
+
+
+
+
Ekstrakti...
-
+
Vidi Ĉi Tiun Eron
-
+
Enmetu Pasvorton
-
+
Rezigni
-
+
Bone
-
+
Ĉifri la dosierliston
-
+
Ĉi tio efektiviĝos post kiam dosieroj/dosierujoj estas aldonitaj.
-
-
+
+
Ekstrakto en Dosierujon
-
+
@@ -477,38 +477,38 @@ Do you want to continue?
-
+
Ligilo Al %1
-
+
Simpla Qt-Arkivilo
-
+
bazita sur libarchive, gzip kaj 7z
-
+
Verkinto
-
+
akk.
-
-
+
+
Pri Arqiver
-
+
Tradukintoj
diff --git a/data/translations/arqiver_nl.ts b/data/translations/arqiver_nl.ts
index 1e3a3cb..99d6b53 100644
--- a/data/translations/arqiver_nl.ts
+++ b/data/translations/arqiver_nl.ts
@@ -250,8 +250,8 @@ Clear text with the Escape key.
-
-
+
+
Bezig met openen van archief...
@@ -373,139 +373,139 @@ Clear text with the Escape key.
Alle bestanden tonen (*)
-
+
Archief creëren
-
-
+
+
Vraag
-
+
Het volgende archief bestaat al:
-
+
Wil je dit vervangen?
-
+
Archief openen
-
-
+
+
Toevoegen aan archief
-
-
-
-
+
+
+
+
Bezig met toevoegen van items...
-
+
Bezig met verwijderen van items...
-
-
-
-
-
+
+
+
+
+
Bezig met uitpakken...
-
+
Huidig item tonen
-
+
Voer wachtwoord in
-
+
Annuleren
-
+
Oké
-
+
Bestandslijst versleutelen
-
+
Dit wordt toegepast na het toevoegen van bestanden/mappen.
-
-
+
+
Uitpakken naar map
-
+
-
+
Link naar: %1
-
+
Een eenvoudige Qt-archiefbeheerder
-
+
gebaseerd op libarchive, gzip en 7z
-
+
Maker
-
+
ook bekend als
-
-
+
+
Over Arqiver
-
+
Vertalers
diff --git a/data/translations/arqiver_pl.ts b/data/translations/arqiver_pl.ts
index 58417a5..a711573 100644
--- a/data/translations/arqiver_pl.ts
+++ b/data/translations/arqiver_pl.ts
@@ -250,8 +250,8 @@ Clear text with the Escape key.
-
-
+
+
Otwieranie archiwum…
@@ -373,139 +373,139 @@ Clear text with the Escape key.
Pokaż wszystkie pliki (*)
-
+
Utwórz archiwum
-
-
+
+
Pytanie
-
+
Następujące archiwum już istnieje:
-
+
Czy chcesz je zamienić?
-
+
Otwórz archiwum
-
-
+
+
Dodaj do archiwum
-
-
-
-
+
+
+
+
Dodawanie elementów…
-
+
Usuwanie elementów…
-
-
-
-
-
+
+
+
+
+
Rozpakowywanie…
-
+
Pokaż obecny element
-
+
Wprowadź hasło
-
+
Anuluj
-
+
OK
-
+
Szyfruj listę plików
-
+
Efekt będzie widoczny po dodaniu nowych plików/katalogów.
-
-
+
+
Rozpakuj do katalogu
-
+
-
+
Odnośnik do: %1
-
+
Prosty menedżer archiwum Qt
-
+
oparty o libarchive, gzip i 7z
-
+
Autor
-
+
aka.
-
-
+
+
O Arqiver
-
+
Tłumacze
diff --git a/data/translations/arqiver_pt_BR.ts b/data/translations/arqiver_pt_BR.ts
index c3c56b4..021276b 100644
--- a/data/translations/arqiver_pt_BR.ts
+++ b/data/translations/arqiver_pt_BR.ts
@@ -250,8 +250,8 @@ Clear text with the Escape key.
-
-
+
+
Abrindo Arquivo...
@@ -373,100 +373,100 @@ Clear text with the Escape key.
Exibir Todos os Arquivos (*)
-
+
Criar Arquivo
-
-
+
+
Questão
-
+
O seguinte arquivo já existe:
-
+
Deseja substituir esse arquivo?
-
+
Abrir Arquivo
-
-
+
+
Adicionar ao Arquivo
-
-
-
-
+
+
+
+
Adicionando Itens...
-
+
Removendo Itens...
-
-
-
-
-
+
+
+
+
+
Extraindo...
-
+
Exibir Item Atual
-
+
Digite a Senha
-
+
Cancelar
-
+
Ok
-
+
Criptografar a lista de arquivos
-
+
Isso entrará em vigor depois que os arquivos/pastas forem adicionados.
-
-
+
+
Extrair no Diretório
-
+
@@ -474,38 +474,38 @@ Do you want to continue?
Deseja continuar?
-
+
Link Para: %1
-
+
Um simples gerenciador de arquivos Qt
-
+
baseado em libarchive, gzip e 7z
-
+
Autor
-
+
aka.
-
-
+
+
Sobre Arqiver
-
+
Tradutores
diff --git a/mainWin.cpp b/mainWin.cpp
index 1b228c3..b9cfb6c 100644
--- a/mainWin.cpp
+++ b/mainWin.cpp
@@ -509,6 +509,7 @@ void mainWin::newArchive() {
QString file;
QString path;
+ QString ext = (lastFilter_.isEmpty() ? ".tar.gz" : filterToExtension(lastFilter_));
if (!saFileList_.isEmpty()) {
path = QFile::exists(saFileList_.at(0)) && QFileInfo(saFileList_.at(0)).isDir()
? saFileList_.at(0) + (lastFilter_.isEmpty()
@@ -522,8 +523,10 @@ void mainWin::newArchive() {
/* KDE's buggy file dialog needs a directory path here */
path.isEmpty() ? lastPath_ : path.section("/", 0, -2),
archivingTypes());
- if (!path.isEmpty())
+ if (!path.isEmpty()) { // add an appropriate extension
+ path += ext;
dlg.selectFile(path);
+ }
dlg.setAcceptMode(QFileDialog::AcceptSave);
dlg.setFileMode(QFileDialog::AnyFile);
dlg.selectNameFilter(lastFilter_);
@@ -536,12 +539,11 @@ void mainWin::newArchive() {
else return; // with auto-archiving, the application will exit because its main window isn't shown
if (file.isEmpty()) return;
QRegularExpressionMatch match;
- int indx = file.indexOf(archivingExt, 0, &match);
+ int indx = file.lastIndexOf(archivingExt, -1, &match);
if (indx > 0 && indx + match.capturedLength() == file.length())
retry = false; // the input had an acceptable extension
else {
- file += (lastFilter_.isEmpty() ? ".tar.gz" : filterToExtension(lastFilter_));
- if (QFile::exists(file)) {
+ if (QFile::exists(file + ext)) {
QMessageBox::StandardButton btn = QMessageBox::question(this,
tr("Question"),
tr("The following archive already exists:")
@@ -549,9 +551,15 @@ void mainWin::newArchive() {
+ tr("Do you want to replace it?\n"));
if (btn == QMessageBox::No)
path = file;
- else retry = false;
+ else {
+ file += ext;
+ retry = false;
+ }
+ }
+ else {
+ file += ext;
+ retry = false;
}
- else retry = false;
}
}