3191 Commits

Author SHA1 Message Date
MohitMaliFtechiz
1ec4df4753 Created a CopyMoveFileHandler for handing the copy/move of files.
* Improved the showing of progressBar to inform the user about the copy/moving progress.
2024-09-05 04:41:04 +00:00
MohitMaliFtechiz
a2b1f5093e Added the file picker in play store variant for move or copy the zim files in application's public directory 2024-09-05 04:41:04 +00:00
translatewiki.net
f5c350f515
Localisation updates from https://translatewiki.net. 2024-08-29 14:05:54 +02:00
MohitMaliFtechiz
a86de10c19 Improved the saving of the zim file in the local library when we open the zim file via deep linking or via file picker. We have moved this functionality to the background thread so that it will not block the UI thread and provide a smooth user experience. 2024-08-25 15:07:11 +05:30
MohitMaliFtechiz
561ff4090c Fixed: Zim File was not opening if we opened it through the DeepLinking. 2024-08-25 13:42:22 +05:30
MohitMaliFtechiz
3ffe4cc6a7 Fixed instrumentation test case compilation errors 2024-08-24 19:18:29 +05:30
MohitMaliFtechiz
811e37bf70 Refactored the whole code to use ZimReaderSource 2024-08-24 16:03:44 +05:30
MohitMaliFtechiz
da51cfc02d Refactored the entities, and dao to use the ZimReaderSource instead of zimFilePath. Also, Refactored the bookmark saving functionality with this change 2024-08-24 14:22:24 +05:30
MohitMaliFtechiz
0fe6dd4dbc Improved SearchFragmentTest which sometimes failing on API level 34.
* Improved the SearchStateTest which sometimes failing.
2024-08-16 15:35:10 +00:00
MohitMaliFtechiz
fce89ef2b3 Updated the CI to run on separate emulator for custom app test cases.
* Upgraded the `uiautomator` version to `2.3.0`.
* Upgraded the `appcompat` version to `1.7.0`.
* Upgraded the coroutines version to `1.8.1`.
* Upgraded the `androidx.test:runner` version to `1.6.1`.
* Upgraded the `androidx.test:core` version to `1.6.1`.
* Upgraded the `androidx.test:orchestrator` version to `1.5.0`.
* Upgraded the `io.mockk:mockk` version to `1.13.12`.
* Upgraded the `org.junit.jupiter:junit-jupiter` version to `5.11.0`.
* Upgraded the `org.assertj:assertj-core` version to `3.26.3`.
* Upgraded the `androidx.annotation:annotation` version to `1.6.0`.
* Improved the SearchStateTest.
* Fixed some deprecated code which is deprecated in new dependencies.
2024-08-16 15:35:10 +00:00
MohitMaliFtechiz
26bb7c62c1 Fixed all memory leaks in application.
* Improved the LanguageFragmentTest by updating it to no longer wait for the "Off the grid" file, which no longer exists. The test case has been enhanced to check whether the data is loaded without relying on any specific ZIM file name.
2024-08-16 15:35:10 +00:00
MohitMaliFtechiz
132ad353fd Improved the SearchFragmentTest which sometimes failing. 2024-08-16 15:35:10 +00:00
MohitMaliFtechiz
09070d187b Fixed Instrumentation test cases was failing. 2024-08-16 15:35:10 +00:00
MohitMaliFtechiz
bfff033af8 Fixed app_name is not found in core module.
* Fixed some ids are not found in the project.
2024-08-16 15:35:10 +00:00
MohitMaliFtechiz
533ed67f84 Fixed, assemble CI failure.
* After upgrading the gradle to `8.1.3` now it is treating proguard warnings as errors. So to fix this we have modify our proguard rules file.
2024-08-16 15:35:10 +00:00
MohitMaliFtechiz
69ade98e5c Fixed all the compilation issues occurring in instrumentation test cases 2024-08-16 15:35:10 +00:00
MohitMaliFtechiz
899bca2389 Fixed namespace error in instrumentation test cases 2024-08-16 15:35:10 +00:00
MohitMaliFtechiz
3cdb7d998d Fixed, ids and string are not found in app and custom module 2024-08-16 15:35:10 +00:00
MohitMaliFtechiz
2a9bbe71b3 Resolve namespace issues for compatibility with Gradle 8.0 and above. * In compliance with the requirement to specify a namespace for each module, we have eliminated package names from manifests and introduced namespace declarations in the Gradle files. * Considering the presence of multiple apps in the custom app, we configured the namespace during the creation of product flavors. * To enhance clarity and understanding, comprehensive comments have been added. 2024-08-16 15:35:10 +00:00
MohitMali
f314e70d0c Upgraded Gradle to 8.1.3 * Added the namespace property in the build.gradle file because, in the newer Gradle version, it is necessary to specify the namespace in the build.gradle file instead of declaring it in the manifest file. 2024-08-16 15:35:10 +00:00
CalebK
173db42aa0 updated bottom navigation padding 2024-08-16 18:19:05 +05:30
MohitMaliFtechiz
d34dd376d7 Improved the migration of storage for existing users according to DownloadManager's storage configuration. 2024-08-12 17:47:03 +05:30
MohitMaliFtechiz
c9b43117e6 Removed the fetch library from README file.
* Also, now we are not using fetch library anymore so we have removed this from our credits files.
* Removed the unused code from detekt_baseline.xml file.
2024-08-12 17:15:42 +05:30
CalebK
a267ae835d refactor shouldEnablePauseResumeButtonForPauseReason to clarify functionality of the function 2024-08-12 17:14:18 +05:30
CalebK
1df1cab9ac minor improvements on shouldEnablePauseResumeButton 2024-08-12 17:14:18 +05:30
MohitMaliFtechiz
df9bbb0ad3 Fixed the pause/resume functionality:
* When there is no available connection that the user started the download with, the pause/resume button is disabled to prevent attempts to resume or pause the download, which would not work in this state.
* If the user attempts to resume the download but it does not resume due to some issue, the code will automatically try to resume the download. This ensures a smooth user experience.
*  Proper pause reasons are displayed to the user, keeping them informed about the current state of the download.
* If a download fails for any reason, the pause/resume button is disabled. At this point, the pause/resume functionality is unnecessary and would not work, so the button is disabled to avoid confusion.
* To ensure clarity and understanding, we have added necessary comments on the method and conditions.
2024-08-12 17:14:18 +05:30
MohitMaliFtechiz
64c80ac6dd Fixing the pause/resume functionality 2024-08-12 17:14:18 +05:30
MohitMaliFtechiz
a41899bae6 Fixed the issue where the Pause/Resume button was enabled when a download failed. In such cases, the pause/resume functionality does not work, so we have disabled the button to prevent unexpected behavior. 2024-08-12 17:14:18 +05:30
MohitMaliFtechiz
2c8a9a45f8 Fixed Downloading is not working on Android 11, and Android 12.
* For Android 11 and above, we now download ZIM files to the app-specific directory because the download manager does not allow downloads to custom paths. Therefore, ZIM files are now downloaded inside the app-specific directory for these versions.
* Removed the folder selection dialog from the application for selecting the SD card in non-Play Store variants on Android 11 and Android 12.
* For Android 10 and below, ZIM files are now downloading to the public directory on the SD card. This ensures that the files are not lost when the application is uninstalled, as they are stored in a public directory similar to internal storage on these versions.
* Also improved the showing pause reason on download screen when downloadManager is paused due to "PAUSED_WAITING_TO_RETRY" error so that user can know about the downloading state.
2024-08-12 17:14:18 +05:30
MohitMaliFtechiz
3e9ff05bd9 Disabled the controls in the notification when the download is in a paused state, as the pause state could occur if DownloadManager is waiting for WiFi.
* Fixed the user behavior when attempting to download the ZIM file only on WiFi, and added a proper message explaining why the download is paused.
2024-08-12 17:14:18 +05:30
MohitMaliFtechiz
623d65e06f Fixed sometimes downloads remain on the "Download Screen" after successfully downloading.
* Improved the "DownloadTest".
2024-08-12 17:14:18 +05:30
MohitMaliFtechiz
6a16745920 Fixed: zim file was not opening when clicking on the notification after the zim file downloaded 2024-08-12 17:14:18 +05:30
MohitMaliFtechiz
fa4f289511 Fixed remaining detekt and lint issues 2024-08-12 17:14:18 +05:30
MohitMaliFtechiz
9b091301bd Fixed some detekt and lint issues 2024-08-12 17:14:18 +05:30
MohitMaliFtechiz
28472c0988 Added RECEIVER_NOT_EXPORTED to all broadcasts to make the application compatiable with Android 14. Also, Fixed the clicking is not working in notification 2024-08-12 17:14:18 +05:30
MohitMaliFtechiz
ce275254b9 Added custom notification for showing the downloading progress with pause/resume functionality 2024-08-12 17:14:18 +05:30
MohitMaliFtechiz
cebbbabbd8 Introduced Room database for managing the downloads. * Refactored the code to use the room database instead of objectbox database with fetch. 2024-08-12 17:14:18 +05:30
MohitMaliFtechiz
2616fa8565 Updating the current download item on OnlineLibraryScreen if a download completes or cancelled 2024-08-12 17:14:18 +05:30
MohitMaliFtechiz
5104c49f8e Replacing the fetch library with Android's DownloadManager. 2024-08-12 17:14:18 +05:30
MohitMaliFtechiz
4cc76fbd89 Added migration code to move from the internal app directory to the public app directory upon application update. This ensures that after updating, users will automatically start using the public directory for downloads without needing to configure storage settings. 2024-08-12 15:35:49 +05:30
MohitMaliFtechiz
9e2ce9370f Refactored the Setting Test case according to this new UI. 2024-08-07 19:08:42 +05:30
MohitMaliFtechiz
72fe21ba4c Changed the visual representation of storage selection.
* Now the storage path will show for non-selected storage as well.
* Improved the KiwixSettingsFragmentTest.
2024-08-07 17:32:37 +05:30
MohitMaliFtechiz
70245d3621 Fixed: Sometimes internal storage is not found in KiwixSettngsFragmentTest 2024-08-07 13:04:02 +05:30
MohitMaliFtechiz
cbd35c036d Fixed ZimHostFragmentTest, and DeepLinksTest. 2024-08-07 12:06:36 +05:30
MohitMaliFtechiz
1f0cdbeaf5 Fixed KiwixSettingsFragmentTest was failing. 2024-08-06 21:52:52 +05:30
MohitMaliFtechiz
960189e68c Removed the dialog box to select the storage in settings.
* Now, the storage selection (internal/external) is directly visible in the settings, allowing users to select storage without using a dialog box.
* The total and available space for each storage option is displayed.
* Additionally, the selected storage path is shown in the settings, so users know where the downloaded files will be saved.
2024-08-06 21:52:44 +05:30
MohitMaliFtechiz
dc7fec3e13 Using wikipedia_fr_climate_change_mini.zim file for testing.
* Improved the test case for checking the full page is loaded or not.
2024-08-01 08:54:44 +05:30
MohitMaliFtechiz
349260b955 Added test case for testing the rendering of content in webView. 2024-08-01 08:54:35 +05:30
translatewiki.net
c840576813 Localisation updates from https://translatewiki.net. 2024-07-29 12:21:12 +05:30
MohitMaliFtechiz
f29634edc7 Setup uncaught exception error handling.
* Updated `setUpUncaughtErrorHandlerForOnlineLibrary` to handle `RxJavaPlugin` errors.
2024-07-26 13:15:45 +05:30