58 Commits
Author SHA1 Message Date
fossifybot[bot] 67d77b3431 chore(release): v1.5.0 (11) (#343)
Co-authored-by: fossifybot[bot] <212866877+fossifybot[bot]@users.noreply.github.com>
2025-12-16 06:43:13 +05:30
fossifybot[bot] d9ef0f78b3 chore(deps): bump org.fossify.commons from 5.11.0 to 5.12.0 (#346)
Co-authored-by: fossifybot[bot] <212866877+fossifybot[bot]@users.noreply.github.com>
2025-12-16 06:37:02 +05:30
Naveen Singh f57e492c16 feat(l10n): remove Valencian translations
Translations for Valencian have been removed from Fossify/File-Manager.

Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/ca@valencia/
Via: Weblate
2025-12-16 06:11:02 +05:30
fran secs 5f7b12e736 chore(l10n): update Catalan translations
Currently translated at 100.0% (44 of 44 strings)

Translation: Fossify/File-Manager
Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/ca/
Via: Weblate
2025-12-16 06:11:02 +05:30
Josep M. Ferrer 40091ff02b chore(l10n): update Catalan translations
Currently translated at 100.0% (2 of 2 strings)

Translation: Fossify/File-Manager metadata
Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager-metadata/ca/
Via: Weblate
2025-12-16 06:11:02 +05:30
fran secs 8231505848 chore(l10n): update Valencian translations
Currently translated at 100.0% (44 of 44 strings)

Translation: Fossify/File-Manager
Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/ca@valencia/
Via: Weblate
2025-12-16 06:11:02 +05:30
fran secs 3b8eb29e28 chore(l10n): update Catalan translations
Currently translated at 100.0% (44 of 44 strings)

Translation: Fossify/File-Manager
Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/ca/
Via: Weblate
2025-12-16 06:11:02 +05:30
fran secs baaf7ffa80 chore(l10n): update Valencian translations
Currently translated at 20.4% (9 of 44 strings)

Translation: Fossify/File-Manager
Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/ca@valencia/
Via: Weblate
2025-12-16 06:11:02 +05:30
fran secs 046c2c1bc0 feat(l10n): add Valencian translations
Translation: Fossify/File-Manager
Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/ca@valencia/
Via: Weblate
2025-12-16 06:11:02 +05:30
Naveen Singh 2237f84971 feat(l10n): remove Valencian translations
Translations for Valencian have been removed from Fossify/File-Manager.

Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/ca@valencia/
Via: Weblate
2025-12-16 06:11:02 +05:30
fran secs 4cc0ce941c feat(l10n): add Valencian translations
Translation: Fossify/File-Manager
Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/ca@valencia/
Via: Weblate
2025-12-16 06:11:02 +05:30
Vasilis K. ff35055f8f chore(l10n): update Greek translations
Currently translated at 100.0% (44 of 44 strings)

Translation: Fossify/File-Manager
Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/el/
Via: Weblate
2025-12-16 06:11:02 +05:30
Naveen Singh 8eea02c2aa docs: move incorrectly placed changelog entry (#342) 2025-12-12 19:00:21 +05:30
Jan c0d7f64551 fix: save as new file when file already exists (#332)
Refs: #131
2025-12-12 18:54:52 +05:30
fossifybot[bot] 749c398aa6 chore: update lint baselines (#339)
Co-authored-by: fossifybot[bot] <212866877+fossifybot[bot]@users.noreply.github.com>
2025-12-10 23:56:32 +05:30
fossifybot[bot] 8812e0ba58 chore(deps): bump org.fossify.commons from 5.10.0 to 5.11.0 (#338)
Co-authored-by: fossifybot[bot] <212866877+fossifybot[bot]@users.noreply.github.com>
2025-12-10 23:23:55 +05:30
Naveen Singh 6a30697c16 ci: add workflow to update commons lib (#337) 2025-12-10 23:07:46 +05:30
dependabot[bot] 146ad3b129 chore(deps): bump androidx.swiperefreshlayout:swiperefreshlayout (#334)
Bumps androidx.swiperefreshlayout:swiperefreshlayout from 1.1.0 to 1.2.0.

---
updated-dependencies:
- dependency-name: androidx.swiperefreshlayout:swiperefreshlayout
  dependency-version: 1.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-08 18:58:08 +05:30
dependabot[bot] b3fc8c7e6f chore(deps): bump org.fossify:commons from 5.7.3 to 5.10.0 (#333)
Bumps [org.fossify:commons](https://github.com/FossifyOrg/commons) from 5.7.3 to 5.10.0.
- [Commits](https://github.com/FossifyOrg/commons/compare/5.7.3...5.10.0)

---
updated-dependencies:
- dependency-name: org.fossify:commons
  dependency-version: 5.10.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-08 18:56:15 +05:30
dependabot[bot] 599b2cad0b chore(deps): bump fastlane from 2.229.0 to 2.229.1 (#335)
Bumps [fastlane](https://github.com/fastlane/fastlane) from 2.229.0 to 2.229.1.
- [Release notes](https://github.com/fastlane/fastlane/releases)
- [Changelog](https://github.com/fastlane/fastlane/blob/master/CHANGELOG.latest.md)
- [Commits](https://github.com/fastlane/fastlane/compare/fastlane/2.229.0...fastlane/2.229.1)

---
updated-dependencies:
- dependency-name: fastlane
  dependency-version: 2.229.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-08 18:56:06 +05:30
Naveen Singh f0631e274a ci: pass secrets to testing build workflow (#331) 2025-12-01 18:02:45 +05:30
fossifybot[bot] 90741e28ea chore: update lint baselines (#329)
Co-authored-by: fossifybot[bot] <212866877+fossifybot[bot]@users.noreply.github.com>
2025-12-01 08:04:04 +05:30
Amadɣas d1ed44688e chore(l10n): update Kabyle translations
Currently translated at 100.0% (44 of 44 strings)

Translation: Fossify/File-Manager
Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/kab/
Via: Weblate
2025-12-01 02:21:46 +05:30
ButterflyOfFire eb75e8bafc chore(l10n): update Kabyle translations
Currently translated at 72.7% (32 of 44 strings)

Translation: Fossify/File-Manager
Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/kab/
Via: Weblate
2025-12-01 02:21:46 +05:30
Amadɣas 8c723eb004 chore(l10n): update Kabyle translations
Currently translated at 72.7% (32 of 44 strings)

Translation: Fossify/File-Manager
Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/kab/
Via: Weblate
2025-12-01 02:21:46 +05:30
Amadɣas 4ed2868456 chore(l10n): update Kabyle translations
Currently translated at 59.0% (26 of 44 strings)

Translation: Fossify/File-Manager
Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/kab/
Via: Weblate
2025-12-01 02:21:46 +05:30
Amadɣas 547bf5421e chore(l10n): update Kabyle translations
Currently translated at 56.8% (25 of 44 strings)

Translation: Fossify/File-Manager
Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/kab/
Via: Weblate
2025-12-01 02:21:46 +05:30
Amadɣas c97940a3d9 chore(l10n): update Kabyle translations
Currently translated at 50.0% (22 of 44 strings)

Translation: Fossify/File-Manager
Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/kab/
Via: Weblate
2025-12-01 02:21:46 +05:30
ButterflyOfFire 2889538bf7 chore(l10n): update Kabyle translations
Currently translated at 50.0% (22 of 44 strings)

Translation: Fossify/File-Manager
Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/kab/
Via: Weblate
2025-12-01 02:21:46 +05:30
ButterflyOfFire d911299f2f feat(l10n): add Kabyle translations
Translation: Fossify/File-Manager
Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/kab/
Via: Weblate
2025-12-01 02:21:46 +05:30
dependabot[bot] e8ca000dce chore(deps): bump io.nlopez.compose.rules:detekt from 0.4.27 to 0.4.28 (#326)
Bumps [io.nlopez.compose.rules:detekt](https://github.com/mrmans0n/compose-rules) from 0.4.27 to 0.4.28.
- [Release notes](https://github.com/mrmans0n/compose-rules/releases)
- [Commits](https://github.com/mrmans0n/compose-rules/compare/v0.4.27...v0.4.28)

---
updated-dependencies:
- dependency-name: io.nlopez.compose.rules:detekt
  dependency-version: 0.4.28
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-24 21:47:36 +05:30
dependabot[bot] b098f3dc99 chore(deps): bump fastlane from 2.228.0 to 2.229.0 (#325)
Bumps [fastlane](https://github.com/fastlane/fastlane) from 2.228.0 to 2.229.0.
- [Release notes](https://github.com/fastlane/fastlane/releases)
- [Changelog](https://github.com/fastlane/fastlane/blob/master/CHANGELOG.latest.md)
- [Commits](https://github.com/fastlane/fastlane/compare/fastlane/2.228.0...fastlane/2.229.0)

---
updated-dependencies:
- dependency-name: fastlane
  dependency-version: 2.229.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-24 19:35:10 +05:30
dependabot[bot] f820b6e617 chore(deps): bump org.fossify:commons from 5.7.2 to 5.7.3 (#316)
Bumps [org.fossify:commons](https://github.com/FossifyOrg/commons) from 5.7.2 to 5.7.3.
- [Commits](https://github.com/FossifyOrg/commons/compare/5.7.2...5.7.3)

---
updated-dependencies:
- dependency-name: org.fossify:commons
  dependency-version: 5.7.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-10 15:40:16 +00:00
dependabot[bot] a0bbc177d7 chore(deps): bump org.fossify:commons from 5.7.1 to 5.7.2 (#314)
Bumps [org.fossify:commons](https://github.com/FossifyOrg/commons) from 5.7.1 to 5.7.2.
- [Commits](https://github.com/FossifyOrg/commons/compare/5.7.1...5.7.2)

---
updated-dependencies:
- dependency-name: org.fossify:commons
  dependency-version: 5.7.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-03 13:34:49 +00:00
fossifybot[bot] 0a0590cab6 chore: update lint baselines (#313)
Co-authored-by: fossifybot[bot] <212866877+fossifybot[bot]@users.noreply.github.com>
2025-11-01 12:30:14 +05:30
fossifybot[bot] 7a4adb8783 chore(release): v1.4.0 (10) (#297)
Co-authored-by: fossifybot[bot] <212866877+fossifybot[bot]@users.noreply.github.com>
2025-10-30 00:27:07 +05:30
Naveen Singh 044ac49a9c fix: pad IME insets in MIME types activity (#304) 2025-10-29 23:23:36 +05:30
Naveen Singh 5921c27328 chore(deps): bump org.fossify.commons to 5.7.1 (#303) 2025-10-29 20:17:49 +05:30
Naveen Singh c12d1d7631 fix: clear files list before populating them again (#301)
Refs: https://github.com/FossifyOrg/File-Manager/issues/76
2025-10-28 14:06:03 +05:30
dependabot[bot] 0c9892a9e5 chore(deps): bump org.jetbrains.kotlin.android from 2.2.20 to 2.2.21 (#300)
Bumps [org.jetbrains.kotlin.android](https://github.com/JetBrains/kotlin) from 2.2.20 to 2.2.21.
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/compare/v2.2.20...v2.2.21)

---
updated-dependencies:
- dependency-name: org.jetbrains.kotlin.android
  dependency-version: 2.2.21
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-27 20:23:30 +05:30
Naveen Singh 57fbcea742 feat: bump org.fossify.commons to 5.7.0 (#298)
* feat: bump org.fossify.commons to 5.6.0

* feat: bump org.fossify.commons to 5.7.0
2025-10-27 20:18:52 +05:30
hosêyň abāspanā 7ae71a5d22 chore(l10n): update Luri (Bakhtiari) translations
Currently translated at 43.1% (19 of 44 strings)

Translation: Fossify/File-Manager
Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/bqi/
Via: Weblate
2025-10-26 23:17:10 +05:30
hosêyň abāspanā 00b21b8b0f chore(l10n): update Luri (Bakhtiari) translations
Currently translated at 40.9% (18 of 44 strings)

Translation: Fossify/File-Manager
Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/bqi/
Via: Weblate
2025-10-26 23:17:10 +05:30
hosêyň abāspanā 18ae5f3229 chore(l10n): update Luri (Bakhtiari) translations
Currently translated at 36.3% (16 of 44 strings)

Translation: Fossify/File-Manager
Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/bqi/
Via: Weblate
2025-10-26 23:17:10 +05:30
hosêyň abāspanā b1b1599cc5 chore(l10n): update Luri (Bakhtiari) translations
Currently translated at 11.3% (5 of 44 strings)

Translation: Fossify/File-Manager
Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/bqi/
Via: Weblate
2025-10-26 23:17:10 +05:30
hosêyň abāspanā 97791feaed chore(l10n): update Luri (Bakhtiari) translations
Currently translated at 9.0% (4 of 44 strings)

Translation: Fossify/File-Manager
Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/bqi/
Via: Weblate
2025-10-26 23:17:10 +05:30
Naveen Singh a4c8da6c31 chore: bump target SDK version to 35 (#241)
* chore: bump target SDK version to 35

* fix: address nullability issues

* chore: bump target SDK version to 36

* refactor: update edge-to-edge implementation

* refactor: update edge-to-edge implementation

* refactor: update edge-to-edge implementation

* refactor: migrate away from deprecated onBackPressed()

* chore(deps): update org.fossify.commons to 5.5.0

* docs: update changelog

* build: bump detekt return count limit

* chore: update lint baselines
2025-10-26 22:58:02 +05:30
Naveen Singh e6c465d9d0 revert: remove ACTION_OPEN_DOCUMENT handling (#291)
* Revert "feat: handle `ACTION_OPEN_DOCUMENT` intent (#229)"

This reverts commit 986d7d5215.

* style: shorten line

* style: shorten line
2025-10-21 00:51:33 +05:30
dependabot[bot] ee20fa406f chore(deps): bump org.fossify:commons from 5.3.0 to 5.4.0 (#292)
Bumps [org.fossify:commons](https://github.com/FossifyOrg/commons) from 5.3.0 to 5.4.0.
- [Commits](https://github.com/FossifyOrg/commons/compare/5.3.0...5.4.0)

---
updated-dependencies:
- dependency-name: org.fossify:commons
  dependency-version: 5.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-20 14:15:21 +00:00
fossifybot[bot] c55d685022 chore(release): v1.3.1 (9) (#284)
Co-authored-by: fossifybot[bot] <212866877+fossifybot[bot]@users.noreply.github.com>
2025-10-09 22:05:39 +05:30
Naveen Singh 1e2e304f70 chore(deps): bump org.fossify.commons to 5.3.0 (#288) 2025-10-09 21:29:59 +05:30
cat e0b1e884ce chore(l10n): update Danish translations
Currently translated at 100.0% (44 of 44 strings)

Translation: Fossify/File-Manager
Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/da/
Via: Weblate
2025-10-09 21:26:14 +05:30
hosêyň abāspanā dfd73bddd0 chore(l10n): update Luri (Bakhtiari) translations
Currently translated at 6.8% (3 of 44 strings)

Translation: Fossify/File-Manager
Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/bqi/
Via: Weblate
2025-10-09 21:26:14 +05:30
cat a88355c9ad chore(l10n): update Danish translations
Currently translated at 100.0% (44 of 44 strings)

Translation: Fossify/File-Manager
Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/da/
Via: Weblate
2025-10-09 21:26:14 +05:30
Dan e6593a5c6b chore(l10n): update Ukrainian translations
Currently translated at 100.0% (44 of 44 strings)

Translation: Fossify/File-Manager
Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/uk/
Via: Weblate
2025-10-09 21:26:14 +05:30
hosêyň abāspanā 880f383e76 feat(l10n): add Luri (Bakhtiari) translations
Translation: Fossify/File-Manager
Translate-URL: https://hosted.weblate.org/projects/fossify/file-manager/bqi/
Via: Weblate
2025-10-09 21:26:14 +05:30
Naveen Singh ab31c828a1 fix: filter out files from hidden folders in storage (#283)
Refs: https://github.com/FossifyOrg/File-Manager/issues/217, https://github.com/FossifyOrg/File-Manager/issues/33
2025-10-02 12:10:47 +05:30
fossifybot[bot] f71a4b7f55 chore: update lint baselines (#282)
Co-authored-by: fossifybot[bot] <212866877+fossifybot[bot]@users.noreply.github.com>
2025-10-01 09:13:51 +05:30
44 changed files with 457 additions and 257 deletions

No files matched your search

+1 -1
View File
@@ -1,2 +1,2 @@
# Auto-generated file. DO NOT EDIT.
1.3.0
1.5.0
+3 -2
View File
@@ -2,9 +2,10 @@ name: Testing build (on PR)
on:
pull_request:
branches: [ main ]
types: [ labeled, opened, synchronize, reopened ]
branches: [main]
types: [labeled, opened, synchronize, reopened]
jobs:
call-testing-build-workflow:
uses: FossifyOrg/.github/.github/workflows/testing-build.yml@main
secrets: inherit
+13
View File
@@ -0,0 +1,13 @@
name: Update Fossify Commons
on:
repository_dispatch:
types: [update-commons]
workflow_dispatch:
schedule:
- cron: "0 6 * * 0"
jobs:
update-commons:
uses: FossifyOrg/.github/.github/workflows/update-commons.yml@main
secrets: inherit
@@ -1,6 +1,8 @@
name: Update lint baselines
on:
repository_dispatch:
types: [update-lint-baselines]
workflow_dispatch:
schedule:
- cron: "0 0 1 * *"
+29 -1
View File
@@ -6,6 +6,29 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [Unreleased]
## [1.5.0] - 2025-12-16
### Changed
- Updated translations
### Fixed
- Fixed an issue where existing files were overwritten when saving new files ([#131])
## [1.4.0] - 2025-10-29
### Changed
- Compatibility updates for Android 15 & 16
- Updated translations
### Fixed
- Fixed duplicated entries when viewing protected ZIP files ([#76])
## [1.3.1] - 2025-10-02
### Changed
- Updated translations
### Fixed
- Fixed files from hidden folders showing up in storage tab browser ([#217])
- Fixed an issue where existing files were overwritten when saving new files ([#131])
## [1.3.0] - 2025-09-30
### Added
- Added a separate "Save as" option in the text editor ([#224])
@@ -78,6 +101,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
[#27]: https://github.com/FossifyOrg/File-Manager/issues/27
[#37]: https://github.com/FossifyOrg/File-Manager/issues/37
[#76]: https://github.com/FossifyOrg/File-Manager/issues/76
[#80]: https://github.com/FossifyOrg/File-Manager/issues/80
[#85]: https://github.com/FossifyOrg/File-Manager/issues/85
[#95]: https://github.com/FossifyOrg/File-Manager/issues/95
@@ -85,6 +109,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
[#105]: https://github.com/FossifyOrg/File-Manager/issues/105
[#106]: https://github.com/FossifyOrg/File-Manager/issues/106
[#120]: https://github.com/FossifyOrg/File-Manager/issues/120
[#131]: https://github.com/FossifyOrg/File-Manager/issues/131
[#136]: https://github.com/FossifyOrg/File-Manager/issues/136
[#149]: https://github.com/FossifyOrg/File-Manager/issues/149
[#150]: https://github.com/FossifyOrg/File-Manager/issues/150
@@ -95,7 +120,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
[#251]: https://github.com/FossifyOrg/File-Manager/issues/251
[#267]: https://github.com/FossifyOrg/File-Manager/issues/267
[Unreleased]: https://github.com/FossifyOrg/File-Manager/compare/1.3.0...HEAD
[Unreleased]: https://github.com/FossifyOrg/File-Manager/compare/1.5.0...HEAD
[1.5.0]: https://github.com/FossifyOrg/File-Manager/compare/1.4.0...1.5.0
[1.4.0]: https://github.com/FossifyOrg/File-Manager/compare/1.3.1...1.4.0
[1.3.1]: https://github.com/FossifyOrg/File-Manager/compare/1.3.0...1.3.1
[1.3.0]: https://github.com/FossifyOrg/File-Manager/compare/1.2.3...1.3.0
[1.2.3]: https://github.com/FossifyOrg/File-Manager/compare/1.2.2...1.2.3
[1.2.2]: https://github.com/FossifyOrg/File-Manager/compare/1.2.0...1.2.2
+32 -27
View File
@@ -1,40 +1,40 @@
GEM
remote: https://rubygems.org/
specs:
CFPropertyList (3.0.7)
base64
nkf
rexml
CFPropertyList (3.0.8)
abbrev (0.1.2)
addressable (2.8.7)
public_suffix (>= 2.0.2, < 7.0)
addressable (2.8.8)
public_suffix (>= 2.0.2, < 8.0)
artifactory (3.0.17)
atomos (0.1.3)
aws-eventstream (1.4.0)
aws-partitions (1.1116.0)
aws-sdk-core (3.225.2)
aws-partitions (1.1190.0)
aws-sdk-core (3.239.2)
aws-eventstream (~> 1, >= 1.3.0)
aws-partitions (~> 1, >= 1.992.0)
aws-sigv4 (~> 1.9)
base64
bigdecimal
jmespath (~> 1, >= 1.6.1)
logger
aws-sdk-kms (1.105.0)
aws-sdk-core (~> 3, >= 3.225.0)
aws-sdk-kms (1.118.0)
aws-sdk-core (~> 3, >= 3.239.1)
aws-sigv4 (~> 1.5)
aws-sdk-s3 (1.189.1)
aws-sdk-core (~> 3, >= 3.225.0)
aws-sdk-s3 (1.206.0)
aws-sdk-core (~> 3, >= 3.234.0)
aws-sdk-kms (~> 1)
aws-sigv4 (~> 1.5)
aws-sigv4 (1.12.1)
aws-eventstream (~> 1, >= 1.0.2)
babosa (1.0.4)
base64 (0.3.0)
base64 (0.2.0)
bigdecimal (3.3.1)
claide (1.1.0)
colored (1.2)
colored2 (3.1.2)
commander (4.6.0)
highline (~> 2.0.0)
csv (3.3.5)
declarative (0.0.20)
digest-crc (0.7.0)
rake (>= 12.0.0, < 14.0.0)
@@ -54,14 +54,14 @@ GEM
faraday-rack (~> 1.0)
faraday-retry (~> 1.0)
ruby2_keywords (>= 0.0.4)
faraday-cookie_jar (0.0.7)
faraday-cookie_jar (0.0.8)
faraday (>= 0.8.0)
http-cookie (~> 1.0.0)
http-cookie (>= 1.0.0)
faraday-em_http (1.0.0)
faraday-em_synchrony (1.0.0)
faraday-em_synchrony (1.0.1)
faraday-excon (1.1.0)
faraday-httpclient (1.0.1)
faraday-multipart (1.1.0)
faraday-multipart (1.1.1)
multipart-post (~> 2.0)
faraday-net_http (1.0.2)
faraday-net_http_persistent (1.2.0)
@@ -71,15 +71,18 @@ GEM
faraday_middleware (1.2.1)
faraday (~> 1.0)
fastimage (2.4.0)
fastlane (2.228.0)
fastlane (2.229.1)
CFPropertyList (>= 2.3, < 4.0.0)
abbrev (~> 0.1.2)
addressable (>= 2.8, < 3.0.0)
artifactory (~> 3.0)
aws-sdk-s3 (~> 1.0)
babosa (>= 1.0.3, < 2.0.0)
base64 (~> 0.2.0)
bundler (>= 1.12.0, < 3.0.0)
colored (~> 1.2)
commander (~> 4.6)
csv (~> 3.3)
dotenv (>= 2.1.1, < 3.0.0)
emoji_regex (>= 0.1, < 4.0)
excon (>= 0.71.0, < 1.0.0)
@@ -99,7 +102,9 @@ GEM
jwt (>= 2.1.0, < 3)
mini_magick (>= 4.9.4, < 5.0.0)
multipart-post (>= 2.0.0, < 3.0.0)
mutex_m (~> 0.3.0)
naturally (~> 2.2)
nkf (~> 0.2.0)
optparse (>= 0.1.1, < 1.0.0)
plist (>= 3.1.0, < 4.0.0)
rubyzip (>= 2.0.0, < 3.0.0)
@@ -160,37 +165,37 @@ GEM
httpclient (2.9.0)
mutex_m
jmespath (1.6.2)
json (2.12.2)
jwt (2.10.1)
json (2.17.1)
jwt (2.10.2)
base64
logger (1.7.0)
mini_magick (4.13.2)
mini_mime (1.1.5)
multi_json (1.15.0)
multi_json (1.18.0)
multipart-post (2.4.1)
mutex_m (0.3.0)
nanaimo (0.4.0)
naturally (2.3.0)
nkf (0.2.0)
optparse (0.6.0)
optparse (0.8.0)
os (1.1.4)
plist (3.7.2)
public_suffix (6.0.2)
rake (13.3.0)
public_suffix (7.0.0)
rake (13.3.1)
representable (3.2.0)
declarative (< 0.1.0)
trailblazer-option (>= 0.1.1, < 0.2.0)
uber (< 0.2.0)
retriable (3.1.2)
rexml (3.4.2)
rexml (3.4.4)
rouge (3.28.0)
ruby2_keywords (0.0.5)
rubyzip (2.4.1)
security (0.1.5)
signet (0.20.0)
signet (0.21.0)
addressable (~> 2.8)
faraday (>= 0.17.5, < 3.a)
jwt (>= 1.5, < 3.0)
jwt (>= 1.5, < 4.0)
multi_json (~> 1.10)
simctl (1.6.10)
CFPropertyList
+1 -10
View File
@@ -52,12 +52,10 @@
<ID>MaxLineLength:CompressAsDialog.kt$CompressAsDialog$val indexOfDot = if (filename.contains('.') &amp;&amp; !activity.getIsPathDirectory(path)) filename.lastIndexOf(".") else filename.length</ID>
<ID>MaxLineLength:Config.kt$Config$set(wasStorageAnalysisTabAdded) = prefs.edit().putBoolean(WAS_STORAGE_ANALYSIS_TAB_ADDED, wasStorageAnalysisTabAdded).apply()</ID>
<ID>MaxLineLength:Context.kt$fun Context.isPathOnRoot(path: String)</ID>
<ID>MaxLineLength:DecompressActivity.kt$DecompressActivity$updateMaterialActivityViews(decompressCoordinator, decompressList, useTransparentNavigation = true, useTopSearchMenu = false)</ID>
<ID>MaxLineLength:DecompressItemsAdapter.kt$DecompressItemsAdapter$class</ID>
<ID>MaxLineLength:DecompressItemsAdapter.kt$DecompressItemsAdapter$val drawable = fileDrawables.getOrElse(fileName.substringAfterLast(".").lowercase(Locale.getDefault()), { fileDrawable })</ID>
<ID>MaxLineLength:FavoritesActivity.kt$FavoritesActivity$FilePickerDialog</ID>
<ID>MaxLineLength:FavoritesActivity.kt$FavoritesActivity$ManageFavoritesAdapter(this@FavoritesActivity, favorites, this@FavoritesActivity, manageFavoritesList) { }</ID>
<ID>MaxLineLength:FavoritesActivity.kt$FavoritesActivity$updateMaterialActivityViews(manageFavoritesCoordinator, manageFavoritesList, useTransparentNavigation = true, useTopSearchMenu = false)</ID>
<ID>MaxLineLength:ItemsAdapter.kt$ItemsAdapter$}</ID>
<ID>MaxLineLength:ItemsFragment.kt$ItemsFragment$ItemsAdapter</ID>
<ID>MaxLineLength:ItemsFragment.kt$ItemsFragment$class</ID>
@@ -81,33 +79,27 @@
<ID>MaxLineLength:MainActivity.kt$MainActivity$if</ID>
<ID>MaxLineLength:MainActivity.kt$MainActivity$private fun getInactiveTabIndexes(activeIndex: Int)</ID>
<ID>MaxLineLength:MainActivity.kt$MainActivity$resultIntent.flags = Intent.FLAG_GRANT_READ_URI_PERMISSION or Intent.FLAG_GRANT_WRITE_URI_PERMISSION or Intent.FLAG_GRANT_PERSISTABLE_URI_PERMISSION</ID>
<ID>MaxLineLength:MainActivity.kt$MainActivity$updateMaterialActivityViews(binding.mainCoordinator, null, useTransparentNavigation = false, useTopSearchMenu = true)</ID>
<ID>MaxLineLength:MainActivity.kt$MainActivity$val licenses = LICENSE_GLIDE or LICENSE_PATTERN or LICENSE_REPRINT or LICENSE_GESTURE_VIEWS or LICENSE_AUTOFITTEXTVIEW or LICENSE_ZIP4J</ID>
<ID>MaxLineLength:MimeTypesActivity.kt$MimeTypesActivity$!extraAudioMimeTypes.contains(fullMimetype)</ID>
<ID>MaxLineLength:MimeTypesActivity.kt$MimeTypesActivity$if</ID>
<ID>MaxLineLength:MimeTypesActivity.kt$MimeTypesActivity$updateMaterialActivityViews(mimetypesCoordinator, mimetypesList, useTransparentNavigation = true, useTopSearchMenu = false)</ID>
<ID>MaxLineLength:MimeTypesActivity.kt$MimeTypesActivity$val fullMimetype = cursor.getStringValue(MediaStore.Files.FileColumns.MIME_TYPE)?.lowercase(Locale.getDefault()) ?: return@queryCursor</ID>
<ID>MaxLineLength:MyViewPagerFragment.kt$MyViewPagerFragment$abstract</ID>
<ID>MaxLineLength:MyViewPagerFragment.kt$MyViewPagerFragment$val fabIcon = context.resources.getColoredDrawableWithColor(iconId, context.getProperPrimaryColor().getContrastColor())</ID>
<ID>MaxLineLength:ReadTextActivity.kt$ReadTextActivity$if</ID>
<ID>MaxLineLength:ReadTextActivity.kt$ReadTextActivity$private</ID>
<ID>MaxLineLength:ReadTextActivity.kt$ReadTextActivity$updateMaterialActivityViews(readTextCoordinator, readTextView, useTransparentNavigation = true, useTopSearchMenu = false)</ID>
<ID>MaxLineLength:RecentsFragment.kt$RecentsFragment$ItemsAdapter</ID>
<ID>MaxLineLength:RecentsFragment.kt$RecentsFragment$binding.recentsSwipeRefresh.isEnabled = lastSearchedText.isEmpty() &amp;&amp; activity?.config?.enablePullToRefresh != false</ID>
<ID>MaxLineLength:RecentsFragment.kt$RecentsFragment$class</ID>
<ID>MaxLineLength:RecentsFragment.kt$RecentsFragment$if</ID>
<ID>MaxLineLength:RecentsFragment.kt$RecentsFragment$val filtered = filesIgnoringSearch.filter { it.mName.contains(text, true) }.toMutableList() as ArrayList&lt;ListItem&gt;</ID>
<ID>MaxLineLength:RootHelpers.kt$RootHelpers$fun</ID>
<ID>MaxLineLength:RootHelpers.kt$RootHelpers$private</ID>
<ID>MaxLineLength:SaveAsActivity.kt$SaveAsActivity$FilePickerDialog</ID>
<ID>MaxLineLength:SaveAsDialog.kt$SaveAsDialog$val title = String.format(activity.getString(R.string.file_already_exists_overwrite), newFilename)</ID>
<ID>MaxLineLength:SettingsActivity.kt$SettingsActivity$settingsUseEnglishHolder.beVisibleIf((config.wasUseEnglishToggled || Locale.getDefault().language != "en") &amp;&amp; !isTiramisuPlus())</ID>
<ID>MaxLineLength:SettingsActivity.kt$SettingsActivity$updateMaterialActivityViews(settingsCoordinator, settingsHolder, useTransparentNavigation = true, useTopSearchMenu = false)</ID>
<ID>MaxLineLength:StorageFragment.kt$StorageFragment$class</ID>
<ID>MaxLineLength:StorageFragment.kt$StorageFragment$mainStorageUsageProgressbar</ID>
<ID>MaxLineLength:StorageFragment.kt$StorageFragment$mainStorageUsageProgressbar.progress = ((totalStorageSpace - freeStorageSpace) / SIZE_DIVIDER).toInt()</ID>
<ID>MaxLineLength:StorageFragment.kt$StorageFragment$totalSpace.text = String.format(context.getString(R.string.total_storage), totalStorageSpace.formatSizeThousand())</ID>
<ID>MaxLineLength:StorageFragment.kt$StorageFragment$val filtered = allDeviceListItems.filter { it.mName.contains(text, true) }.toMutableList() as ArrayList&lt;ListItem&gt;</ID>
<ID>MaxLineLength:StorageFragment.kt$StorageFragment$val mimeType = cursor.getStringValue(MediaStore.Files.FileColumns.MIME_TYPE)?.lowercase(Locale.getDefault())</ID>
<ID>MaxLineLength:StorageFragment.kt$StorageFragment$val storageStatsManager = context.getSystemService(AppCompatActivity.STORAGE_STATS_SERVICE) as StorageStatsManager</ID>
<ID>NestedBlockDepth:DecompressActivity.kt$DecompressActivity$private fun decompressTo(destination: String)</ID>
@@ -120,14 +112,13 @@
<ID>NestedBlockDepth:RecentsFragment.kt$RecentsFragment$private fun getRecents(callback: (recents: ArrayList&lt;ListItem&gt;) -&gt; Unit)</ID>
<ID>NestedBlockDepth:StorageFragment.kt$StorageFragment$override fun setupFragment(activity: SimpleActivity)</ID>
<ID>NestedBlockDepth:StorageFragment.kt$StorageFragment$private fun getAllFiles(volumeName: String): ArrayList&lt;FileDirItem&gt;</ID>
<ID>ReturnCount:ItemsAdapter.kt$ItemsAdapter$@SuppressLint("NewApi") private fun compressPaths( sourcePaths: List&lt;String&gt;, targetPath: String, password: String? = null ): Boolean</ID>
<ID>ReturnCount:MainActivity.kt$MainActivity$override fun onBackPressedCompat(): Boolean</ID>
<ID>SwallowedException:ItemsAdapter.kt$ItemsAdapter$e: Exception</ID>
<ID>SwallowedException:MimeTypesActivity.kt$MimeTypesActivity$e: Exception</ID>
<ID>SwallowedException:StorageFragment.kt$StorageFragment$e: Exception</ID>
<ID>TooGenericExceptionCaught:DecompressActivity.kt$DecompressActivity$e: Exception</ID>
<ID>TooGenericExceptionCaught:ItemsAdapter.kt$ItemsAdapter$e: Exception</ID>
<ID>TooGenericExceptionCaught:ItemsAdapter.kt$ItemsAdapter$exception: Exception</ID>
<ID>TooGenericExceptionCaught:MainActivity.kt$MainActivity$e: Exception</ID>
<ID>TooGenericExceptionCaught:MimeTypesActivity.kt$MimeTypesActivity$e: Exception</ID>
<ID>TooGenericExceptionCaught:ReadTextActivity.kt$ReadTextActivity$e: Exception</ID>
<ID>TooGenericExceptionCaught:RecentsFragment.kt$RecentsFragment$e: Exception</ID>
+39 -50
View File
@@ -19,21 +19,10 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/kotlin/org/fossify/filemanager/activities/SettingsActivity.kt"
line="92"
line="91"
column="17"/>
</issue>
<issue
id="OldTargetApi"
message="Not targeting the latest versions of Android; compatibility modes apply. Consider testing and updating this version. Consult the `android.os.Build.VERSION_CODES` javadoc for details."
errorLine1="app-build-targetSDK = &quot;34&quot;"
errorLine2=" ~~~~">
<location
file="$HOME/work/File-Manager/File-Manager/gradle/libs.versions.toml"
line="22"
column="23"/>
</issue>
<issue
id="CustomSplashScreen"
message="The application should not provide its own launch screen"
@@ -58,7 +47,7 @@
<issue
id="AndroidGradlePluginVersion"
message="A newer version of com.android.application than 8.11.1 is available: 8.12.2"
message="A newer version of com.android.application than 8.11.1 is available: 8.13.1. (There is also a newer version of 8.11.𝑥 available, if upgrading to 8.13.1 is difficult: 8.11.2)"
errorLine1="gradlePlugins-agp = &quot;8.11.1&quot;"
errorLine2=" ~~~~~~~~">
<location
@@ -68,14 +57,14 @@
</issue>
<issue
id="GradleDependency"
message="A newer version of `compileSdkVersion` than 34 is available: 36"
errorLine1="app-build-compileSDKVersion = &quot;34&quot;"
errorLine2=" ~~~~">
id="NewerVersionAvailable"
message="A newer version of io.nlopez.compose.rules:detekt than 0.4.28 is available: 0.5.1"
errorLine1="detektCompose = &quot;0.4.28&quot;"
errorLine2=" ~~~~~~~~">
<location
file="$HOME/work/File-Manager/File-Manager/gradle/libs.versions.toml"
line="21"
column="31"/>
line="6"
column="17"/>
</issue>
<issue
@@ -223,7 +212,7 @@
<issue
id="MissingTranslation"
message="&quot;rooted_device_only&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;ckb&quot;"
message="&quot;rooted_device_only&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;bqi&quot;, &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;rooted_device_only&quot;>This operation works only on rooted devices&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
@@ -256,7 +245,7 @@
<issue
id="MissingTranslation"
message="&quot;invert_colors&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;nb&quot; (Norwegian Bokmål), &quot;ne&quot; (Nepali), &quot;az&quot; (Azerbaijani), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;ta&quot; (Tamil), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;cy&quot; (Welsh), &quot;ckb&quot;"
message="&quot;invert_colors&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;az&quot; (Azerbaijani), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;ta&quot; (Tamil), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;cy&quot; (Welsh), &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;invert_colors&quot;>Invert colors&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
<location
@@ -333,7 +322,7 @@
<issue
id="MissingTranslation"
message="&quot;compress&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;ckb&quot;"
message="&quot;compress&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;bqi&quot;, &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;compress&quot;>Compress&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~~~">
<location
@@ -344,7 +333,7 @@
<issue
id="MissingTranslation"
message="&quot;decompress&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;ckb&quot;"
message="&quot;decompress&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;bqi&quot;, &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;decompress&quot;>Decompress&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~~~~~">
<location
@@ -355,7 +344,7 @@
<issue
id="MissingTranslation"
message="&quot;compress_as&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;ckb&quot;"
message="&quot;compress_as&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;bqi&quot;, &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;compress_as&quot;>Compress as&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~">
<location
@@ -366,7 +355,7 @@
<issue
id="MissingTranslation"
message="&quot;compressing&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;ckb&quot;"
message="&quot;compressing&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;bqi&quot;, &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;compressing&quot;>Compressing…&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~">
<location
@@ -377,7 +366,7 @@
<issue
id="MissingTranslation"
message="&quot;decompressing&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;ckb&quot;"
message="&quot;decompressing&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;bqi&quot;, &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;decompressing&quot;>Decompressing…&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
<location
@@ -388,7 +377,7 @@
<issue
id="MissingTranslation"
message="&quot;compression_successful&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;ckb&quot;"
message="&quot;compression_successful&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;bqi&quot;, &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;compression_successful&quot;>Compression successful&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
@@ -399,7 +388,7 @@
<issue
id="MissingTranslation"
message="&quot;decompression_successful&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;ckb&quot;"
message="&quot;decompression_successful&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;bqi&quot;, &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;decompression_successful&quot;>Decompression successful&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
@@ -410,7 +399,7 @@
<issue
id="MissingTranslation"
message="&quot;compressing_failed&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;ckb&quot;"
message="&quot;compressing_failed&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;bqi&quot;, &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;compressing_failed&quot;>Compressing failed&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
@@ -421,7 +410,7 @@
<issue
id="MissingTranslation"
message="&quot;decompressing_failed&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;ckb&quot;"
message="&quot;decompressing_failed&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;bqi&quot;, &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;decompressing_failed&quot;>Decompressing failed&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
@@ -432,7 +421,7 @@
<issue
id="MissingTranslation"
message="&quot;manage_favorites&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;ckb&quot;"
message="&quot;manage_favorites&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;bqi&quot;, &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;manage_favorites&quot;>Manage favorites&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~">
<location
@@ -443,7 +432,7 @@
<issue
id="MissingTranslation"
message="&quot;go_to_favorite&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;ckb&quot;"
message="&quot;go_to_favorite&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;bqi&quot;, &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;go_to_favorite&quot;>Go to favorite&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~">
<location
@@ -454,7 +443,7 @@
<issue
id="MissingTranslation"
message="&quot;favorites_activity_placeholder&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;ckb&quot;"
message="&quot;favorites_activity_placeholder&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;bqi&quot;, &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;favorites_activity_placeholder&quot;>You can add frequently used folders to favorites for easy access from anywhere.&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
@@ -465,7 +454,7 @@
<issue
id="MissingTranslation"
message="&quot;file_editor&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;ckb&quot;"
message="&quot;file_editor&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;bqi&quot;, &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;file_editor&quot;>File Editor&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~">
<location
@@ -476,7 +465,7 @@
<issue
id="MissingTranslation"
message="&quot;storage_analysis&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;nb&quot; (Norwegian Bokmål), &quot;ne&quot; (Nepali), &quot;az&quot; (Azerbaijani), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;cy&quot; (Welsh), &quot;ckb&quot;"
message="&quot;storage_analysis&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;az&quot; (Azerbaijani), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;cy&quot; (Welsh), &quot;bqi&quot;, &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;storage_analysis&quot;>Storage analysis&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~">
<location
@@ -487,7 +476,7 @@
<issue
id="MissingTranslation"
message="&quot;images&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;az&quot; (Azerbaijani), &quot;nn&quot; (Norwegian Nynorsk), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;ckb&quot;"
message="&quot;images&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;az&quot; (Azerbaijani), &quot;nn&quot; (Norwegian Nynorsk), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;bqi&quot;, &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;images&quot;>Images&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~">
<location
@@ -498,7 +487,7 @@
<issue
id="MissingTranslation"
message="&quot;videos&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;az&quot; (Azerbaijani), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;ckb&quot;"
message="&quot;videos&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;az&quot; (Azerbaijani), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;bqi&quot;, &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;videos&quot;>Videos&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~">
<location
@@ -509,7 +498,7 @@
<issue
id="MissingTranslation"
message="&quot;audio&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;az&quot; (Azerbaijani), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;sk&quot; (Slovak), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;cy&quot; (Welsh), &quot;ckb&quot;"
message="&quot;audio&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;az&quot; (Azerbaijani), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;cy&quot; (Welsh), &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;audio&quot;>Audio&lt;/string>"
errorLine2=" ~~~~~~~~~~~~">
<location
@@ -520,7 +509,7 @@
<issue
id="MissingTranslation"
message="&quot;documents&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;az&quot; (Azerbaijani), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;cy&quot; (Welsh), &quot;ckb&quot;"
message="&quot;documents&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;az&quot; (Azerbaijani), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;cy&quot; (Welsh), &quot;bqi&quot;, &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;documents&quot;>Documents&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~~~~">
<location
@@ -531,7 +520,7 @@
<issue
id="MissingTranslation"
message="&quot;downloads&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;az&quot; (Azerbaijani), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;cy&quot; (Welsh), &quot;ckb&quot;"
message="&quot;downloads&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;az&quot; (Azerbaijani), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;cy&quot; (Welsh), &quot;bqi&quot;, &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;downloads&quot;>Downloads&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~~~~">
<location
@@ -542,7 +531,7 @@
<issue
id="MissingTranslation"
message="&quot;archives&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;az&quot; (Azerbaijani), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;cy&quot; (Welsh), &quot;ckb&quot;"
message="&quot;archives&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;az&quot; (Azerbaijani), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;cy&quot; (Welsh), &quot;bqi&quot;, &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;archives&quot;>Archives&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~~~">
<location
@@ -553,7 +542,7 @@
<issue
id="MissingTranslation"
message="&quot;others&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;nb&quot; (Norwegian Bokmål), &quot;ne&quot; (Nepali), &quot;az&quot; (Azerbaijani), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;cy&quot; (Welsh), &quot;ckb&quot;"
message="&quot;others&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;az&quot; (Azerbaijani), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;cy&quot; (Welsh), &quot;bqi&quot;, &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;others&quot;>Others&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~">
<location
@@ -564,7 +553,7 @@
<issue
id="MissingTranslation"
message="&quot;storage_free&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;az&quot; (Azerbaijani), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;ko&quot; (Korean), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;cy&quot; (Welsh), &quot;ckb&quot;"
message="&quot;storage_free&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;az&quot; (Azerbaijani), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;ko&quot; (Korean), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;cy&quot; (Welsh), &quot;bqi&quot;, &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;storage_free&quot;>free&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
<location
@@ -575,7 +564,7 @@
<issue
id="MissingTranslation"
message="&quot;total_storage&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;az&quot; (Azerbaijani), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;cy&quot; (Welsh), &quot;ckb&quot;"
message="&quot;total_storage&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;az&quot; (Azerbaijani), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;cy&quot; (Welsh), &quot;bqi&quot;, &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;total_storage&quot;>Total storage: %s&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
<location
@@ -586,7 +575,7 @@
<issue
id="MissingTranslation"
message="&quot;enable_root_access&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;ckb&quot;"
message="&quot;enable_root_access&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;bqi&quot;, &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;enable_root_access&quot;>Enable root access&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
@@ -597,7 +586,7 @@
<issue
id="MissingTranslation"
message="&quot;press_back_twice&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;nb&quot; (Norwegian Bokmål), &quot;ne&quot; (Nepali), &quot;az&quot; (Azerbaijani), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;cy&quot; (Welsh), &quot;ckb&quot;"
message="&quot;press_back_twice&quot; is not translated in &quot;fil&quot; (Filipino; Pilipino), &quot;lv&quot; (Latvian), &quot;ia&quot; (Interlingua), &quot;mk&quot; (Macedonian), &quot;ml&quot; (Malayalam), &quot;ms&quot; (Malay), &quot;en&quot; (English), &quot;ne&quot; (Nepali), &quot;az&quot; (Azerbaijani), &quot;fa&quot; (Persian), &quot;nn&quot; (Norwegian Nynorsk), &quot;bn&quot; (Bangla), &quot;bs&quot; (Bosnian), &quot;si&quot; (Sinhala), &quot;zgh&quot; (Standard Moroccan Tamazight), &quot;ltg&quot;, &quot;kn&quot; (Kannada), &quot;or&quot; (Odia), &quot;kr&quot; (Kanuri), &quot;sat&quot; (Santali), &quot;cr&quot; (Cree), &quot;te&quot; (Telugu), &quot;th&quot; (Thai), &quot;cy&quot; (Welsh), &quot;bqi&quot;, &quot;ckb&quot;"
errorLine1=" &lt;string name=&quot;press_back_twice&quot;>Require pressing Back twice to leave the app&lt;/string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~">
<location
@@ -993,8 +982,8 @@
errorLine1=" intent.data = Uri.parse(&quot;package:$packageName&quot;)"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/kotlin/org/fossify/filemanager/activities/MainActivity.kt"
line="340"
file="src/main/kotlin/org/fossify/filemanager/activities/SimpleActivity.kt"
line="80"
column="43"/>
</issue>
@@ -1004,8 +993,8 @@
errorLine1=" intent.data = Uri.parse(&quot;package:$packageName&quot;)"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/kotlin/org/fossify/filemanager/activities/MainActivity.kt"
line="340"
file="src/main/kotlin/org/fossify/filemanager/activities/SimpleActivity.kt"
line="80"
column="43"/>
</issue>
-8
View File
@@ -60,14 +60,6 @@
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.OPEN_DOCUMENT" />
<data android:mimeType="*/*" />
<category android:name="android.intent.category.OPENABLE" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.RINGTONE_PICKER" />
<category android:name="android.intent.category.DEFAULT" />
@@ -45,13 +45,12 @@ class DecompressActivity : SimpleActivity() {
private var filename = ""
override fun onCreate(savedInstanceState: Bundle?) {
isMaterialActivity = true
super.onCreate(savedInstanceState)
setContentView(binding.root)
setupOptionsMenu()
binding.apply {
updateMaterialActivityViews(decompressCoordinator, decompressList, useTransparentNavigation = true, useTopSearchMenu = false)
setupMaterialScrollListener(decompressList, decompressToolbar)
setupEdgeToEdge(padBottomSystem = listOf(decompressList))
setupMaterialScrollListener(binding.decompressList, binding.decompressAppbar)
}
uri = intent.data
@@ -70,7 +69,7 @@ class DecompressActivity : SimpleActivity() {
override fun onResume() {
super.onResume()
setupToolbar(binding.decompressToolbar, NavigationIcon.Arrow)
setupTopAppBar(binding.decompressAppbar, NavigationIcon.Arrow)
}
override fun onSaveInstanceState(outState: Bundle) {
@@ -88,16 +87,18 @@ class DecompressActivity : SimpleActivity() {
}
}
override fun onBackPressed() {
if (currentPath.isEmpty()) {
super.onBackPressed()
override fun onBackPressedCompat(): Boolean {
return if (currentPath.isEmpty()) {
false
} else {
val newPath = if (currentPath.contains("/")) currentPath.getParentPath() else ""
updateCurrentPath(newPath)
true
}
}
private fun setupFilesList() {
allFiles.clear()
fillAllListItems(uri!!) {
updateCurrentPath("")
}
@@ -18,20 +18,19 @@ class FavoritesActivity : SimpleActivity(), RefreshRecyclerViewListener {
private val binding by viewBinding(ActivityFavoritesBinding::inflate)
override fun onCreate(savedInstanceState: Bundle?) {
isMaterialActivity = true
super.onCreate(savedInstanceState)
setContentView(binding.root)
setupOptionsMenu()
updateFavorites()
binding.apply {
updateMaterialActivityViews(manageFavoritesCoordinator, manageFavoritesList, useTransparentNavigation = true, useTopSearchMenu = false)
setupMaterialScrollListener(manageFavoritesList, manageFavoritesToolbar)
setupEdgeToEdge(padBottomSystem = listOf(manageFavoritesList))
setupMaterialScrollListener(binding.manageFavoritesList, binding.manageFavoritesAppbar)
}
}
override fun onResume() {
super.onResume()
setupToolbar(binding.manageFavoritesToolbar, NavigationIcon.Arrow)
setupTopAppBar(binding.manageFavoritesAppbar, NavigationIcon.Arrow)
}
private fun setupOptionsMenu() {
@@ -75,6 +75,8 @@ import org.fossify.filemanager.interfaces.ItemOperationsListener
import java.io.File
class MainActivity : SimpleActivity() {
override var isSearchBarEnabled = true
companion object {
private const val BACK_PRESS_TIMEOUT = 5000
private const val PICKED_PATH = "picked_path"
@@ -91,7 +93,6 @@ class MainActivity : SimpleActivity() {
private var mStoredShowTabs = 0
override fun onCreate(savedInstanceState: Bundle?) {
isMaterialActivity = true
super.onCreate(savedInstanceState)
setContentView(binding.root)
appLaunched(BuildConfig.APPLICATION_ID)
@@ -109,7 +110,7 @@ class MainActivity : SimpleActivity() {
storeStateVariables()
setupTabs()
updateMaterialActivityViews(binding.mainCoordinator, null, useTransparentNavigation = false, useTopSearchMenu = true)
setupEdgeToEdge(padBottomImeAndSystem = listOf(binding.mainTabsHolder))
if (savedInstanceState == null) {
config.temporarilyShowHidden = false
@@ -160,12 +161,13 @@ class MainActivity : SimpleActivity() {
config.lastUsedViewPagerPage = binding.mainViewPager.currentItem
}
override fun onBackPressed() {
override fun onBackPressedCompat(): Boolean {
val currentFragment = getCurrentFragment()
if (binding.mainMenu.isSearchOpen) {
binding.mainMenu.closeSearch()
return true
} else if (currentFragment is RecentsFragment || currentFragment is StorageFragment) {
super.onBackPressed()
return false
} else if ((currentFragment as ItemsFragment).getBreadcrumbs().getItemCount() <= 1) {
if (!wasBackJustPressed && config.pressBackTwice) {
wasBackJustPressed = true
@@ -173,13 +175,16 @@ class MainActivity : SimpleActivity() {
Handler().postDelayed({
wasBackJustPressed = false
}, BACK_PRESS_TIMEOUT.toLong())
return true
} else {
appLockManager.lock()
finish()
return true
}
} else {
currentFragment.getBreadcrumbs().removeBreadcrumb()
openPath(currentFragment.getBreadcrumbs().getLastItem().path)
return true
}
}
@@ -189,7 +194,7 @@ class MainActivity : SimpleActivity() {
val currentViewType = config.getFolderViewType(currentFragment.currentPath)
val favorites = config.favorites
binding.mainMenu.getToolbar().menu.apply {
binding.mainMenu.requireToolbar().menu.apply {
findItem(R.id.sort).isVisible = currentFragment is ItemsFragment
findItem(R.id.change_view_type).isVisible = currentFragment !is StorageFragment
@@ -214,7 +219,7 @@ class MainActivity : SimpleActivity() {
private fun setupOptionsMenu() {
binding.mainMenu.apply {
getToolbar().inflateMenu(R.menu.menu)
requireToolbar().inflateMenu(R.menu.menu)
toggleHideOnScroll(false)
setupMenu()
@@ -228,7 +233,7 @@ class MainActivity : SimpleActivity() {
getCurrentFragment()?.searchQueryChanged(text)
}
getToolbar().setOnMenuItemClickListener { menuItem ->
requireToolbar().setOnMenuItemClickListener { menuItem ->
if (getCurrentFragment() == null) {
return@setOnMenuItemClickListener true
}
@@ -274,7 +279,6 @@ class MainActivity : SimpleActivity() {
}
private fun updateMenuColors() {
updateStatusbarColor(getProperBackgroundColor())
binding.mainMenu.updateColors()
}
@@ -365,7 +369,6 @@ class MainActivity : SimpleActivity() {
val isPickFileIntent = action == RingtoneManager.ACTION_RINGTONE_PICKER
|| action == Intent.ACTION_GET_CONTENT
|| action == Intent.ACTION_PICK
|| action == Intent.ACTION_OPEN_DOCUMENT
val isCreateDocumentIntent = action == Intent.ACTION_CREATE_DOCUMENT
if (isPickFileIntent) {
@@ -418,7 +421,6 @@ class MainActivity : SimpleActivity() {
}
val bottomBarColor = getBottomNavigationBackgroundColor()
updateNavigationBarColor(bottomBarColor)
mainTabsHolder.setBackgroundColor(bottomBarColor)
}
}
@@ -25,6 +25,7 @@ import org.fossify.filemanager.databinding.ActivityMimetypesBinding
import org.fossify.filemanager.dialogs.ChangeSortingDialog
import org.fossify.filemanager.dialogs.ChangeViewTypeDialog
import org.fossify.filemanager.extensions.config
import org.fossify.filemanager.extensions.isPathInHiddenFolder
import org.fossify.filemanager.extensions.tryOpenPathIntent
import org.fossify.filemanager.helpers.*
import org.fossify.filemanager.interfaces.ItemOperationsListener
@@ -43,14 +44,13 @@ class MimeTypesActivity : SimpleActivity(), ItemOperationsListener {
private var currentVolume = PRIMARY_VOLUME_NAME
override fun onCreate(savedInstanceState: Bundle?) {
isMaterialActivity = true
super.onCreate(savedInstanceState)
setContentView(binding.root)
setupOptionsMenu()
refreshMenuItems()
binding.apply {
updateMaterialActivityViews(mimetypesCoordinator, mimetypesList, useTransparentNavigation = true, useTopSearchMenu = false)
setupMaterialScrollListener(mimetypesList, mimetypesToolbar)
setupEdgeToEdge(padBottomImeAndSystem = listOf(mimetypesList))
setupMaterialScrollListener(binding.mimetypesList, binding.mimetypesAppbar)
}
currentMimeType = intent.getStringExtra(SHOW_MIMETYPE) ?: return
@@ -84,7 +84,7 @@ class MimeTypesActivity : SimpleActivity(), ItemOperationsListener {
override fun onResume() {
super.onResume()
setupToolbar(binding.mimetypesToolbar, NavigationIcon.Arrow, searchMenuItem = searchMenuItem)
setupTopAppBar(binding.mimetypesAppbar, NavigationIcon.Arrow, searchMenuItem = searchMenuItem)
}
private fun refreshMenuItems() {
@@ -288,7 +288,10 @@ class MimeTypesActivity : SimpleActivity(), ItemOperationsListener {
try {
val fullMimetype = cursor.getStringValue(MediaStore.Files.FileColumns.MIME_TYPE)?.lowercase(Locale.getDefault()) ?: return@queryCursor
val name = cursor.getStringValue(MediaStore.Files.FileColumns.DISPLAY_NAME)
if (!showHidden && name.startsWith(".")) {
val path = cursor.getStringValue(MediaStore.Files.FileColumns.DATA)
val isHiddenFile = name.startsWith(".")
if (!showHidden && (isHiddenFile || path.isPathInHiddenFolder())) {
return@queryCursor
}
@@ -297,7 +300,6 @@ class MimeTypesActivity : SimpleActivity(), ItemOperationsListener {
return@queryCursor
}
val path = cursor.getStringValue(MediaStore.Files.FileColumns.DATA)
val lastModified = cursor.getLongValue(MediaStore.Files.FileColumns.DATE_MODIFIED) * 1000
val mimetype = fullMimetype.substringBefore("/")
@@ -51,13 +51,12 @@ class ReadTextActivity : SimpleActivity() {
private lateinit var searchClearBtn: ImageView
override fun onCreate(savedInstanceState: Bundle?) {
isMaterialActivity = true
super.onCreate(savedInstanceState)
setContentView(binding.root)
setupOptionsMenu()
binding.apply {
updateMaterialActivityViews(readTextCoordinator, readTextView, useTransparentNavigation = true, useTopSearchMenu = false)
setupMaterialScrollListener(readTextHolder, readTextToolbar)
setupEdgeToEdge(padBottomImeAndSystem = listOf(readTextView))
setupMaterialScrollListener(binding.readTextHolder, binding.readTextAppbar)
}
searchQueryET = findViewById(R.id.search_query)
@@ -96,7 +95,7 @@ class ReadTextActivity : SimpleActivity() {
override fun onResume() {
super.onResume()
setupToolbar(binding.readTextToolbar, NavigationIcon.Arrow)
setupTopAppBar(binding.readTextAppbar, NavigationIcon.Arrow)
}
override fun onSaveInstanceState(outState: Bundle) {
@@ -120,22 +119,26 @@ class ReadTextActivity : SimpleActivity() {
}
}
override fun onBackPressed() {
override fun onBackPressedCompat(): Boolean {
val hasUnsavedChanges = originalText != binding.readTextView.text.toString()
when {
isSearchActive -> closeSearch()
return when {
isSearchActive -> {
closeSearch()
true
}
hasUnsavedChanges && System.currentTimeMillis() - lastSavePromptTS > SAVE_DISCARD_PROMPT_INTERVAL -> {
lastSavePromptTS = System.currentTimeMillis()
ConfirmationAdvancedDialog(this, "", R.string.save_before_closing, R.string.save, R.string.discard) {
if (it) {
saveText(true)
} else {
super.onBackPressed()
performDefaultBack()
}
}
true
}
else -> super.onBackPressed()
else -> false
}
}
@@ -233,7 +236,7 @@ class ReadTextActivity : SimpleActivity() {
}
if (shouldExitAfterSaving) {
super.onBackPressed()
performDefaultBack()
}
} else {
toast(R.string.unknown_error_occurred)
@@ -58,7 +58,7 @@ class SaveAsActivity : SimpleActivity() {
?: filename.getMimeType()
val inputStream = contentResolver.openInputStream(source)
val destinationPath = "$destination/$filename"
val destinationPath = getAvailablePath("$destination/$filename")
val outputStream = getFileOutputStreamSync(destinationPath, mimeType, null)!!
inputStream!!.copyTo(outputStream)
rescanPaths(arrayListOf(destinationPath))
@@ -79,11 +79,37 @@ class SaveAsActivity : SimpleActivity() {
override fun onResume() {
super.onResume()
setupToolbar(binding.activitySaveAsToolbar, NavigationIcon.Arrow)
setupTopAppBar(binding.activitySaveAsAppbar, NavigationIcon.Arrow)
}
private fun sanitizeFilename(filename: String): String {
return filename.replace("[/\\\\<>:\"|?*\u0000-\u001F]".toRegex(), "_")
.takeIf { it.isNotBlank() } ?: "unnamed_file"
}
private fun getAvailablePath(destinationPath: String): String {
if (!getDoesFilePathExist(destinationPath)) {
return destinationPath
}
val file = File(destinationPath)
return findAvailableName(file)
}
private fun findAvailableName(file: File): String {
val parent = file.parent ?: return file.absolutePath
val name = file.nameWithoutExtension
val ext = if (file.extension.isNotEmpty()) ".${file.extension}" else ""
var index = 1
var newPath: String
do {
newPath = "$parent/${name}_$index$ext"
index++
} while (getDoesFilePathExist(newPath))
return newPath
}
}
@@ -21,18 +21,17 @@ class SettingsActivity : SimpleActivity() {
private val binding by viewBinding(ActivitySettingsBinding::inflate)
override fun onCreate(savedInstanceState: Bundle?) {
isMaterialActivity = true
super.onCreate(savedInstanceState)
setContentView(binding.root)
binding.apply {
updateMaterialActivityViews(settingsCoordinator, settingsHolder, useTransparentNavigation = true, useTopSearchMenu = false)
setupMaterialScrollListener(settingsNestedScrollview, settingsToolbar)
setupEdgeToEdge(padBottomSystem = listOf(settingsNestedScrollview))
setupMaterialScrollListener(binding.settingsNestedScrollview, binding.settingsAppbar)
}
}
override fun onResume() {
super.onResume()
setupToolbar(binding.settingsToolbar, NavigationIcon.Arrow)
setupTopAppBar(binding.settingsAppbar, NavigationIcon.Arrow)
setupCustomizeColors()
setupUseEnglish()
@@ -117,8 +117,8 @@ class DecompressItemsAdapter(activity: SimpleActivity, var listItems: MutableLis
private fun getImagePathToLoad(path: String): Any {
return if (path.endsWith(".apk", true)) {
val packageInfo = activity.packageManager.getPackageArchiveInfo(path, PackageManager.GET_ACTIVITIES)
if (packageInfo != null) {
val appInfo = packageInfo.applicationInfo
val appInfo = packageInfo?.applicationInfo
if (appInfo != null) {
appInfo.sourceDir = path
appInfo.publicSourceDir = path
appInfo.loadIcon(activity.packageManager)
@@ -1116,8 +1116,8 @@ class ItemsAdapter(
var itemToLoad = if (path.endsWith(".apk", true)) {
val packageInfo =
activity.packageManager.getPackageArchiveInfo(path, PackageManager.GET_ACTIVITIES)
if (packageInfo != null) {
val appInfo = packageInfo.applicationInfo
val appInfo = packageInfo?.applicationInfo
if (appInfo != null) {
appInfo.sourceDir = path
appInfo.publicSourceDir = path
appInfo.loadIcon(activity.packageManager)
@@ -24,7 +24,6 @@ class ViewPagerAdapter(val activity: SimpleActivity, val tabsToShow: ArrayList<I
val isPickRingtoneIntent = activity.intent.action == RingtoneManager.ACTION_RINGTONE_PICKER
val isGetContentIntent = activity.intent.action == Intent.ACTION_GET_CONTENT
|| activity.intent.action == Intent.ACTION_PICK
|| activity.intent.action == Intent.ACTION_OPEN_DOCUMENT
val isCreateDocumentIntent = activity.intent.action == Intent.ACTION_CREATE_DOCUMENT
val allowPickingMultipleIntent = activity.intent.getBooleanExtra(Intent.EXTRA_ALLOW_MULTIPLE, false)
val getContentMimeType = if (isGetContentIntent) {
@@ -2,8 +2,6 @@ package org.fossify.filemanager.extensions
import android.app.Activity
import android.content.Intent
import android.view.View
import androidx.appcompat.app.AppCompatActivity
import androidx.core.content.FileProvider
import org.fossify.commons.activities.BaseSimpleActivity
import org.fossify.commons.extensions.getFilenameFromPath
@@ -85,27 +83,3 @@ fun BaseSimpleActivity.toggleItemVisibility(oldPath: String, hide: Boolean, call
}
}
}
fun AppCompatActivity.showSystemUI(toggleActionBarVisibility: Boolean) {
if (toggleActionBarVisibility) {
supportActionBar?.show()
}
window.decorView.systemUiVisibility = View.SYSTEM_UI_FLAG_LAYOUT_STABLE or
View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION or
View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
}
fun AppCompatActivity.hideSystemUI(toggleActionBarVisibility: Boolean) {
if (toggleActionBarVisibility) {
supportActionBar?.hide()
}
window.decorView.systemUiVisibility = View.SYSTEM_UI_FLAG_LAYOUT_STABLE or
View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION or
View.SYSTEM_UI_FLAG_HIDE_NAVIGATION or
View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN or
View.SYSTEM_UI_FLAG_LOW_PROFILE or
View.SYSTEM_UI_FLAG_FULLSCREEN or
View.SYSTEM_UI_FLAG_IMMERSIVE
}
@@ -1,3 +1,15 @@
package org.fossify.filemanager.extensions
fun String.isZipFile() = endsWith(".zip", true)
fun String.isPathInHiddenFolder(): Boolean {
val parts = split("/")
for (i in 1 until parts.size - 1) {
val part = parts[i]
val isHidden = part.startsWith(".") && part != "." && part != ".." && part.isNotEmpty()
if (isHidden) {
return true
}
}
return false
}
@@ -25,6 +25,7 @@ import org.fossify.filemanager.activities.SimpleActivity
import org.fossify.filemanager.adapters.ItemsAdapter
import org.fossify.filemanager.databinding.RecentsFragmentBinding
import org.fossify.filemanager.extensions.config
import org.fossify.filemanager.extensions.isPathInHiddenFolder
import org.fossify.filemanager.helpers.MAX_COLUMN_COUNT
import org.fossify.filemanager.interfaces.ItemOperationsListener
import org.fossify.filemanager.models.ListItem
@@ -180,7 +181,7 @@ class RecentsFragment(context: Context, attributeSet: AttributeSet) : MyViewPage
val size = cursor.getLongValue(FileColumns.SIZE)
val modified = cursor.getLongValue(FileColumns.DATE_MODIFIED) * 1000
val isHiddenFile = name.startsWith(".")
val shouldShow = showHidden || (!isHiddenFile && !isPathInHiddenFolder(path))
val shouldShow = showHidden || (!isHiddenFile && !path.isPathInHiddenFolder())
if (shouldShow && activity?.getDoesFilePathExist(path) == true) {
if (wantedMimeTypes.any { isProperMimeType(it, path, false) }) {
val fileDirItem = ListItem(path, name, false, 0, size, modified, false, false)
@@ -199,18 +200,6 @@ class RecentsFragment(context: Context, attributeSet: AttributeSet) : MyViewPage
}
}
private fun isPathInHiddenFolder(path: String): Boolean {
val parts = path.split("/")
for (i in 1 until parts.size - 1) {
val part = parts[i]
val isHidden = part.startsWith(".") && part != "." && part != ".." && part.isNotEmpty()
if (isHidden) {
return true
}
}
return false
}
private fun getRecyclerAdapter() = binding.recentsList.adapter as? ItemsAdapter
override fun toggleFilenameVisibility() {
@@ -5,22 +5,29 @@
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.google.android.material.appbar.MaterialToolbar
android:id="@+id/decompress_toolbar"
<org.fossify.commons.views.MyAppBarLayout
android:id="@+id/decompress_appbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/color_primary"
app:menu="@menu/menu_decompress"
app:title="@string/decompress"
app:titleTextAppearance="@style/AppTheme.ActionBar.TitleTextStyle" />
android:layout_height="wrap_content">
<com.google.android.material.appbar.MaterialToolbar
android:id="@+id/decompress_toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/color_primary"
app:menu="@menu/menu_decompress"
app:title="@string/decompress"
app:titleTextAppearance="@style/AppTheme.ActionBar.TitleTextStyle" />
</org.fossify.commons.views.MyAppBarLayout>
<RelativeLayout
android:id="@+id/decompress_wrapper"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="?attr/actionBarSize"
android:fillViewport="true"
android:scrollbars="none">
android:scrollbars="none"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<org.fossify.commons.views.MyRecyclerView
android:id="@+id/decompress_list"
+16 -9
View File
@@ -6,22 +6,29 @@
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.google.android.material.appbar.MaterialToolbar
android:id="@+id/manage_favorites_toolbar"
<org.fossify.commons.views.MyAppBarLayout
android:id="@+id/manage_favorites_appbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/color_primary"
app:menu="@menu/menu_favorites"
app:title="@string/manage_favorites"
app:titleTextAppearance="@style/AppTheme.ActionBar.TitleTextStyle" />
android:layout_height="wrap_content">
<com.google.android.material.appbar.MaterialToolbar
android:id="@+id/manage_favorites_toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/color_primary"
app:menu="@menu/menu_favorites"
app:title="@string/manage_favorites"
app:titleTextAppearance="@style/AppTheme.ActionBar.TitleTextStyle" />
</org.fossify.commons.views.MyAppBarLayout>
<RelativeLayout
android:id="@+id/manage_favorites_holder"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="?attr/actionBarSize"
android:fillViewport="true"
android:scrollbars="none">
android:scrollbars="none"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<org.fossify.commons.views.MyRecyclerView
android:id="@+id/manage_favorites_list"
+1 -1
View File
@@ -14,7 +14,7 @@
android:id="@+id/main_holder"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="?attr/actionBarSize">
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<org.fossify.commons.views.MyViewPager
android:id="@+id/main_view_pager"
+15 -8
View File
@@ -5,21 +5,28 @@
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.google.android.material.appbar.MaterialToolbar
android:id="@+id/mimetypes_toolbar"
<org.fossify.commons.views.MyAppBarLayout
android:id="@+id/mimetypes_appbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/color_primary"
app:menu="@menu/menu_mimetypes"
app:titleTextAppearance="@style/AppTheme.ActionBar.TitleTextStyle" />
android:layout_height="wrap_content">
<com.google.android.material.appbar.MaterialToolbar
android:id="@+id/mimetypes_toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/color_primary"
app:menu="@menu/menu_mimetypes"
app:titleTextAppearance="@style/AppTheme.ActionBar.TitleTextStyle" />
</org.fossify.commons.views.MyAppBarLayout>
<RelativeLayout
android:id="@+id/mimetypes_holder"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="?attr/actionBarSize"
android:fillViewport="true"
android:scrollbars="none">
android:scrollbars="none"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<org.fossify.commons.views.MyTextView
android:id="@+id/mimetypes_placeholder"
+16 -9
View File
@@ -5,23 +5,30 @@
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.google.android.material.appbar.MaterialToolbar
android:id="@+id/read_text_toolbar"
<org.fossify.commons.views.MyAppBarLayout
android:id="@+id/read_text_appbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/color_primary"
app:menu="@menu/menu_editor"
app:title="@string/file_editor"
app:titleTextAppearance="@style/AppTheme.ActionBar.TitleTextStyle" />
android:layout_height="wrap_content">
<com.google.android.material.appbar.MaterialToolbar
android:id="@+id/read_text_toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/color_primary"
app:menu="@menu/menu_editor"
app:title="@string/file_editor"
app:titleTextAppearance="@style/AppTheme.ActionBar.TitleTextStyle" />
</org.fossify.commons.views.MyAppBarLayout>
<LinearLayout
android:id="@+id/read_text_wrapper"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="?attr/actionBarSize"
android:fillViewport="true"
android:orientation="vertical"
android:scrollbars="none">
android:scrollbars="none"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<include
android:id="@+id/search_wrapper"
+14 -7
View File
@@ -5,18 +5,25 @@
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.google.android.material.appbar.MaterialToolbar
android:id="@+id/activity_save_as_toolbar"
<org.fossify.commons.views.MyAppBarLayout
android:id="@+id/activity_save_as_appbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/color_primary"
app:title="@string/save_as"
app:titleTextAppearance="@style/AppTheme.ActionBar.TitleTextStyle" />
android:layout_height="wrap_content">
<com.google.android.material.appbar.MaterialToolbar
android:id="@+id/activity_save_as_toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/color_primary"
app:title="@string/save_as"
app:titleTextAppearance="@style/AppTheme.ActionBar.TitleTextStyle" />
</org.fossify.commons.views.MyAppBarLayout>
<RelativeLayout
android:id="@+id/activity_save_as_holder"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="?attr/actionBarSize" />
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
</androidx.coordinatorlayout.widget.CoordinatorLayout>
+15 -8
View File
@@ -6,21 +6,28 @@
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.google.android.material.appbar.MaterialToolbar
android:id="@+id/settings_toolbar"
<org.fossify.commons.views.MyAppBarLayout
android:id="@+id/settings_appbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/color_primary"
app:title="@string/settings"
app:titleTextAppearance="@style/AppTheme.ActionBar.TitleTextStyle" />
android:layout_height="wrap_content">
<com.google.android.material.appbar.MaterialToolbar
android:id="@+id/settings_toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/color_primary"
app:title="@string/settings"
app:titleTextAppearance="@style/AppTheme.ActionBar.TitleTextStyle" />
</org.fossify.commons.views.MyAppBarLayout>
<androidx.core.widget.NestedScrollView
android:id="@+id/settings_nested_scrollview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="?attr/actionBarSize"
android:fillViewport="true"
android:scrollbars="none">
android:scrollbars="none"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<LinearLayout
android:id="@+id/settings_holder"
+22
View File
@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="go_to_home_folder">راو و دوبلگه هووه</string>
<string name="set_as_home_folder">سامووݩ و عونوان دوبلگه هووه</string>
<string name="copy_path">لف گیری تور منه کیلیپ بورد</string>
<string name="app_launcher_name">دؽوۉداری فایل</string>
<string name="path_copied">تور لف گیری وابی</string>
<string name="select_audio_file">فایل آرنگی ن پسند کۊنین</string>
<string name="search_folder">پیتینیڌن دوبلگه</string>
<string name="recents">دیندا</string>
<string name="show_recents">نشووݩ داڌن مووردا دیندایی</string>
<string name="invert_colors">چواسه کردن رنگا</string>
<string name="open_as">گۊشیڌن و عونوان</string>
<string name="text_file">فایل هؽلی</string>
<string name="image_file">فایل شؽواتی</string>
<string name="audio_file">فایل آرنگی</string>
<string name="video_file">فایل ویدیویی</string>
<string name="other_file">فایل دیری</string>
<string name="press_back_again">سی و در زیڌن، ز نۊ دویمه وورگشتن ن بزنین</string>
<string name="home_folder_updated">دوبلگه هووه ورۊ رسۊوی وابی</string>
<string name="audio">دونگ</string>
</resources>
+2 -2
View File
@@ -6,7 +6,7 @@
<string name="set_as_home_folder">Estableix com a carpeta d\'inici</string>
<string name="home_folder_updated">S\'ha actualitzat la carpeta d\'inici</string>
<string name="copy_path">Copia el camí al porta-retalls</string>
<string name="path_copied">S\'ha copiat el camí</string>
<string name="path_copied">Ruta copiada</string>
<string name="select_audio_file">Seleccioneu un fitxer d\'àudio</string>
<string name="search_folder">Cerca carpeta</string>
<string name="rooted_device_only">Aquesta operació només funciona en dispositius amb «root»</string>
@@ -44,4 +44,4 @@
<string name="press_back_twice">Cal que premeu Enrere dues vegades per a sortir de l\'aplicació</string>
<string name="documents">Documents</string>
<string name="recents">Recents</string>
</resources>
</resources>
+5 -5
View File
@@ -28,11 +28,11 @@
<string name="decompression_successful">Dekomprimeret</string>
<string name="compressing_failed">Komprimering mislykkedes</string>
<string name="decompressing_failed">Dekomprimering mislykkedes</string>
<string name="manage_favorites">Håndter favoritter</string>
<string name="manage_favorites">Administrer favoritter</string>
<string name="go_to_favorite">Gå til favorit</string>
<string name="favorites_activity_placeholder">Du kan føje ofte brugte mapper til favoritter, så du hurtigt kan finde dem igen.</string>
<string name="favorites_activity_placeholder">Du kan føje ofte brugte mapper til favoritter for nem adgang overalt.</string>
<string name="file_editor">Fileditor</string>
<string name="storage_analysis">Lagersanalyse</string>
<string name="storage_analysis">Lagringsanalyse</string>
<string name="images">Billeder</string>
<string name="videos">Videoer</string>
<string name="audio">Lyd</string>
@@ -42,6 +42,6 @@
<string name="others">Andre</string>
<string name="storage_free">fri</string>
<string name="total_storage">Samlet lagerplads: %s</string>
<string name="enable_root_access">Aktiver root-adgang</string>
<string name="press_back_twice">Kræv to tryk på tilbage for at forlade appen</string>
<string name="enable_root_access">Aktivér root-adgang</string>
<string name="press_back_twice">Dobbelttryk på Tilbage for at afslutte appen</string>
</resources>
+1 -1
View File
@@ -9,7 +9,7 @@
<string name="path_copied">Η διαδρομή αντιγράφηκε</string>
<string name="select_audio_file">Επιλέξτε ένα αρχείο ήχου</string>
<string name="search_folder">Αναζήτηση φακέλου</string>
<string name="rooted_device_only">Αυτό το χαρακτηριστικό λειτουργεί μόνο σε συσκευές με πρόσβαση στον ριζικό κατάλογο.</string>
<string name="rooted_device_only">Αυτό το χαρακτηριστικό λειτουργεί μόνο σε συσκευές με πρόσβαση στον ριζικό κατάλογο</string>
<string name="recents">Πρόσφατα</string>
<string name="show_recents">Εμφάνιση προσφάτων</string>
<string name="invert_colors">Αντιστροφή χρωμάτων</string>
+47
View File
@@ -0,0 +1,47 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="images">Tugniwin</string>
<string name="videos">Tividyutin</string>
<string name="audio">Imesli</string>
<string name="documents">Isemliyen</string>
<string name="downloads">Isidar</string>
<string name="archives">Iɣbaren</string>
<string name="others">Wiyyaḍ</string>
<string name="storage_free">i d-yeqqimen</string>
<string name="app_launcher_name">Amsefrak n ifuyla</string>
<string name="compress">Tussda</string>
<string name="open_as">Ldi am</string>
<string name="text_file">Afaylu aḍris</string>
<string name="image_file">Afaylu n tugna</string>
<string name="audio_file">Afaylu n imesli</string>
<string name="video_file">Ifuyla n uvidyu</string>
<string name="other_file">Afaylu nniḍen</string>
<string name="compress_as">Ssed am</string>
<string name="recents">N melmi kan</string>
<string name="file_editor">Amaẓrag n ufaylu</string>
<string name="go_to_home_folder">Ddu ar ukaram agejdan</string>
<string name="home_folder_updated">Akaram agejdan yettwalqem</string>
<string name="copy_path">Nɣel abrid ɣer tecfawt</string>
<string name="search_folder">Nadi akaram</string>
<string name="rooted_device_only">Tamhelt-a tetteddu kan deg yibenkan iẓaranen</string>
<string name="show_recents">Sken ineggura</string>
<string name="compressing">Asekkussem…</string>
<string name="compression_successful">Asekkussem yedda akken iwata</string>
<string name="decompression_successful">Tukksa n usekkusem tedda akken iwata</string>
<string name="compressing_failed">Asekkussem ur yedda ara</string>
<string name="favorites_activity_placeholder">Tzemreḍ ad ternuḍ ikaramen yettwasqedcen s waṭas ɣer unurifen i unekcum s wudem fessusen seg yal amḍiq.</string>
<string name="storage_analysis">Aslaḍ n tkatut</string>
<string name="decompress">Ssef</string>
<string name="press_back_again">Sit tikkelt-nniḍen akken ad teffɣeḍ</string>
<string name="set_as_home_folder">Sbadu d akaram agejdan</string>
<string name="path_copied">Abrid yettwanɣel</string>
<string name="select_audio_file">Ma ulac aɣilif, fren afaylu ameslaw</string>
<string name="invert_colors">Tti initen</string>
<string name="decompressing">Tukksa n usekkussem…</string>
<string name="decompressing_failed">Tuccḍa deg tukksa n usekkussem</string>
<string name="manage_favorites">Sefrek inurifen</string>
<string name="go_to_favorite">Ddu ɣer unurif</string>
<string name="total_storage">Amḍiq n usekles amatu: %s</string>
<string name="enable_root_access">Rmed anekcum ɣer uẓar</string>
<string name="press_back_twice">Yessefk ad tsiteḍ snat n tikkal akken ad teffɣeḍ seg usnas</string>
</resources>
+4 -4
View File
@@ -1,13 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_launcher_name">Менеджер Файлів</string>
<string name="press_back_again">Для виходу натисніть Назад ще раз</string>
<string name="app_launcher_name">Менеджер файлів</string>
<string name="press_back_again">Для виходу натисніть «Назад» ще раз</string>
<string name="go_to_home_folder">Перейти у домашню теку</string>
<string name="set_as_home_folder">Встановити як головну теку</string>
<string name="home_folder_updated">Головну теку оновлено</string>
<string name="copy_path">Скопіювати шлях у буфер обміну</string>
<string name="path_copied">Шлях скопійовано</string>
<string name="select_audio_file">Будь ласка, оберіть аудіо файл</string>
<string name="select_audio_file">Оберіть аудіофайл</string>
<string name="search_folder">Шукати теку</string>
<string name="rooted_device_only">Ця команда працює лише на пристроях з root-доступом</string>
<string name="recents">Останні</string>
@@ -44,4 +44,4 @@
<string name="total_storage">Всього пам\'яті: %s</string>
<string name="enable_root_access">Активувати root-доступ</string>
<string name="press_back_twice">Натисніть «Назад» двічі, щоб вийти зі застосунку</string>
</resources>
</resources>
+5
View File
@@ -40,6 +40,11 @@ style:
maxLineLength: 120
excludePackageStatements: true
excludeImportStatements: true
ReturnCount:
active: true
max: 4
excludeGuardClauses: true
excludes: ["**/test/**", "**/androidTest/**"]
naming:
FunctionNaming:
@@ -0,0 +1,30 @@
Cansat de gestors d'arxius que alenteixen i envaeixen la vostra privadesa? Tingueu una experiència ràpida, segura i completament personalitzable amb el gestor de fitxers Fossify. ⚡
🚀 DOMINEU EL MÓN DIGITAL AMB UNA NAVEGACIÓ RÀPIDA:
• Gestioneu ràpidament els arxius amb facilitat de compressió i transferència, mantenint la vostra vida digital organitzada.
• Accediu ràpidament a les carpetes més utilitzades amb una carpeta d'inici personalitzable i dreceres preferides.
• Trobeu allò que necessiteu en segons amb opcions intuïtives de navegació, cerca i ordenació.
🔐 FORTIFIQUEU LES VOSTRES DADES AMB UNA PRIVADESA I SEGURETAT INIGUALABLES:
• Assegureu els fitxers confidencials amb contrasenya, patró o bloqueig d'empremtes digitals per a elements ocults o tota l'aplicació.
• No es requereix accés a internet: els vostres fitxers es mantenen privats i segurs al vostre dispositiu.
💾 DOMINEU L'EMMAGATZEMATGE COM UN PROFESSIONAL:
• Netegeu l'espai amb una compressió fàcil de fitxers i carpetes per a maximitzar el potencial del dispositiu.
• Identifiqueu i netegeu fitxers devoradors d'espai amb l'eina integrada d'anàlisi d'emmagatzematge.
• Navegueu sense problemes pels fitxers arrel, les targetes SD i els dispositius USB per una organització total.
📁 OPTIMITZEU EL FLUX DE TREBALL AMB EINES ÚTILS:
• Creeu dreceres d'escriptori per a l'accés instantani als fitxers i carpetes més utilitzats.
• Editeu, imprimiu o llegiu documents fàcilment amb l'editor lleuger de fitxers, millorat mitjançant gestos de zoom.
🌈 FEU-HO VOSTRE AMB UNA PERSONALITZACIÓ INFINITA:
• Gaudiu d'una experiència lliure d'anuncis i de codi obert que us dona el control, no dels gegants corporatius.
• Personalitzeu els colors, temes i icones per a reflectir el vostre estil i preferències úniques.
Llenceu els gestors de fitxers inflats i que envaeixen la privadesa i experimenteu una veritable llibertat amb el Fossify File Manager. Descarregueu-lo ara i recupereu el control de la vostra vida digital!
Exploreu més aplicacions de Fossify: https://www.fossify.org
Codi font: https://www.github.com/FossifyOrg
Uniu-vos a la comunitat a Reddit: https://www.reddit.com/r/Fossify
Connecteu a Telegram: https://t.me/Fossify
@@ -0,0 +1 @@
Explorador de fitxers senzill, lleuger i de codi font obert, funcional.
@@ -0,0 +1,9 @@
Changed:
• Compatibility updates for Android 15 & 16
• Updated translations
Fixed:
• Fixed duplicated entries when viewing protected ZIP files
@@ -0,0 +1,8 @@
Changed:
• Updated translations
Fixed:
• Fixed an issue where existing files were overwritten when saving new files
@@ -0,0 +1,8 @@
Changed:
• Updated translations
Fixed:
• Fixed files from hidden folders showing up in storage tab browser
+2 -2
View File
@@ -20,6 +20,6 @@ org.gradle.jvmargs=-Xmx4g
# org.gradle.parallel=true
# Versioning
VERSION_NAME=1.3.0
VERSION_CODE=8
VERSION_NAME=1.5.0
VERSION_CODE=11
APP_ID=org.fossify.filemanager
+6 -6
View File
@@ -1,14 +1,14 @@
[versions]
#jetbrains
kotlin = "2.2.20"
kotlin = "2.2.21"
#Detekt
detekt = "1.23.8"
detektCompose = "0.4.27"
detektCompose = "0.4.28"
#AndroidX
androidx-swiperefreshlayout = "1.1.0"
androidx-swiperefreshlayout = "1.2.0"
androidx-documentfile = "1.1.0"
#Fossify
commons = "5.2.0"
commons = "5.12.0"
#Other
autofittextview = "0.2.1"
gestureviews = "2.8.3"
@@ -18,8 +18,8 @@ zip4j = "2.11.5"
#Gradle
gradlePlugins-agp = "8.11.1"
#build
app-build-compileSDKVersion = "34"
app-build-targetSDK = "34"
app-build-compileSDKVersion = "36"
app-build-targetSDK = "36"
app-build-minimumSDK = "26"
app-build-javaVersion = "VERSION_17"
app-build-kotlinJVMTarget = "17"
+1
View File
@@ -11,6 +11,7 @@ dependencyResolutionManagement {
google()
mavenCentral()
maven { setUrl("https://jitpack.io") }
mavenLocal()
}
}
include(":app")