diff --git a/src/main/java/cz/kamma/kfmanager/service/FileOperations.java b/src/main/java/cz/kamma/kfmanager/service/FileOperations.java index 6b52a26..adf2380 100644 --- a/src/main/java/cz/kamma/kfmanager/service/FileOperations.java +++ b/src/main/java/cz/kamma/kfmanager/service/FileOperations.java @@ -939,6 +939,13 @@ public class FileOperations { return false; } + // Known archive extensions should always be considered openable. + // Some encrypted archives cannot be probed with lightweight readers + // but are still supported by the real extraction path. + if (isArchiveFile(file)) { + return true; + } + // Always try to detect format by actually reading the file content // This works for any file regardless of extension return tryDetectArchiveFormat(file); diff --git a/src/main/java/cz/kamma/kfmanager/ui/FilePanelTab.java b/src/main/java/cz/kamma/kfmanager/ui/FilePanelTab.java index 13c4eb5..a06d87b 100644 --- a/src/main/java/cz/kamma/kfmanager/ui/FilePanelTab.java +++ b/src/main/java/cz/kamma/kfmanager/ui/FilePanelTab.java @@ -4928,7 +4928,7 @@ public class FilePanelTab extends JPanel { @Override public boolean isCancelled() { - return progressDialog == null || !progressDialog.isVisible(); + return progressDialog == null || progressDialog.isCancelled(); } @Override