diff --git a/CHANGELOG.md b/CHANGELOG.md index fd08943f..5b52cf23 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] ### Fixed - Fixed the modification of the original timestamp when decompressing folders ([#190]) +- Fixed the Files tab not refreshing after decompressing a ZIP archive from the file preview screen ([#194]) ## [1.6.1] - 2026-02-14 ### Changed @@ -130,6 +131,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 [#149]: https://github.com/FossifyOrg/File-Manager/issues/149 [#150]: https://github.com/FossifyOrg/File-Manager/issues/150 [#176]: https://github.com/FossifyOrg/File-Manager/issues/176 +[#194]: https://github.com/FossifyOrg/File-Manager/issues/194 [#217]: https://github.com/FossifyOrg/File-Manager/issues/217 [#224]: https://github.com/FossifyOrg/File-Manager/issues/224 [#250]: https://github.com/FossifyOrg/File-Manager/issues/250 diff --git a/app/src/main/kotlin/org/fossify/filemanager/activities/DecompressActivity.kt b/app/src/main/kotlin/org/fossify/filemanager/activities/DecompressActivity.kt index 350c9c5b..eb7ce847 100644 --- a/app/src/main/kotlin/org/fossify/filemanager/activities/DecompressActivity.kt +++ b/app/src/main/kotlin/org/fossify/filemanager/activities/DecompressActivity.kt @@ -34,6 +34,9 @@ import java.io.File class DecompressActivity : SimpleActivity() { companion object { private const val PASSWORD = "password" + + // set on successful extraction so MainActivity can open the extracted folder on resume + var extractedFolderPath: String? = null } private val binding by viewBinding(ActivityDecompressBinding::inflate) @@ -202,8 +205,12 @@ class DecompressActivity : SimpleActivity() { for ((outputFile, entry) in foldersTimestamp.asReversed()) { outputFile.setLastModified(entry) } - toast(R.string.decompression_successful) - finish() + val extractedFolder = "$destination/${filename.substringBeforeLast(".")}" + runOnUiThread { + toast(R.string.decompression_successful) + extractedFolderPath = extractedFolder + finish() + } } } catch (e: Exception) { showErrorToast(e) diff --git a/app/src/main/kotlin/org/fossify/filemanager/activities/MainActivity.kt b/app/src/main/kotlin/org/fossify/filemanager/activities/MainActivity.kt index 4a6e4be7..86eeb05c 100644 --- a/app/src/main/kotlin/org/fossify/filemanager/activities/MainActivity.kt +++ b/app/src/main/kotlin/org/fossify/filemanager/activities/MainActivity.kt @@ -153,6 +153,11 @@ class MainActivity : SimpleActivity() { if (binding.mainViewPager.adapter == null) { initFragments() } + + DecompressActivity.extractedFolderPath?.let { path -> + DecompressActivity.extractedFolderPath = null + openPath(path, true) + } } override fun onPause() {