505 Commits

Author SHA1 Message Date
translatewiki.net
ba3e0648cb
Localisation updates from https://translatewiki.net. 2025-07-28 14:06:58 +02:00
MohitMaliFtechiz
badddc8aab Refactored the remaining test cases of ZimManageViewModel to follow the new approach. Additionally, added new unit test cases to cover new functionalities such as pagination, fetching new content when changing language, searching, etc.
* Improved some unit test cases that sometimes failed on CI due to coroutine IO threading issues.
2025-07-11 04:23:08 +05:30
MohitMaliFtechiz
f3f3f224c0 Fixed: Emission with data+failure moves state from InProgress to Failed was sometimes fails on CI. 2025-07-02 17:21:50 +05:30
MohitMaliFtechiz
eca3c355b2 Fixed: SearchFragmentTestForCustomApp was failing.
* Fixed: The appearance of TTS control buttons.
2025-06-26 18:09:26 +05:30
MohitMaliFtechiz
a6eb00f6b9 Refactored the remaining UI test cases. 2025-06-26 17:21:59 +05:30
MohitMaliFtechiz
3ebb37d5cc Refactored the TOC button functionality to handle cases where custom apps are configured to disable it.
* Fixed: Missing bottom margin in custom apps.
* Fixed: Reader's bottom app bar not appearing after closing or selecting a tab.
* Fixed: Menu not showing in the toolbar when the application is freshly launched in custom apps.
* Refactored the scroll behavior of the toolbar and bottom app bar to sync with WebView scrolling in the Compose UI.
2025-06-24 01:23:18 +05:30
MohitMaliFtechiz
2608694442 Fixed: Clicking on "Plus button" in tab switcher crashes the application.
* Refactored the "FullScreen Video" functionality according to compose UI.
* Refactored the functionality where custom app is configured to show search placeholder in toolbar, and created the search placeholder in compose.
* Refactored the functionality where custom app is configured to show app icon in place of humbuger icon.
2025-06-21 00:46:15 +05:30
MohitMaliFtechiz
f654a64b7e Refactored all functionalities of the Reader's menu: showing or hiding menu items based on business logic, updating the tab item count, and more.
* Improved the KiwixAppBar to support custom views in menu items — enabling custom UI like the tab switcher.
* Fixed: TTS controls were not displaying correctly on the UI.
* Refactored the TTS functionality to align with the Compose UI architecture.
* Fixed: Some lint issues and improve the code quality.
2025-06-18 02:23:32 +05:30
MohitMaliFtechiz
5c879484a6 Fixed: WebView was not loading content properly in Compose.
* Refactored KiwixAppBar to support a string title instead of a string resource ID, allowing dynamic titles like ZIM file names.
* Fixed: ZIM file title was not appearing correctly in the toolbar.
* Refactored all snackbar-related functionalities on the reader screen.
* Updated KiwixAppBar to support an overflow menu.
* Introduced ReaderMenuState to manage menu item state dynamically for improved maintainability.
2025-06-17 20:59:10 +05:30
MohitMaliFtechiz
39baa985fb Migrated the Reader screen to jetpack compose.
* Created the `ReaderScreen` for compose UI.
* Created the `ReaderScreenState` to manage the state of UI.
2025-06-17 20:59:10 +05:30
MohitMaliFtechiz
42da475867 Refactored all functionalities to use LibkiwixBookOnDisk instead of NewBookDao.
* Fixed: Saved books in the library were not appearing on the Local Library screen.
* Fixed: Opening a ZIM file via the download notification was not working.
* Fixed: Selecting a ZIM file would select all ZIM files displayed on the Local Library screen.
* Improved: Migration logic now properly migrates books that were stored in the file system before introducing `ZimReaderSource`.
2025-06-11 00:53:35 +05:30
translatewiki.net
f2942d71b9 Localisation updates from https://translatewiki.net. 2025-06-07 20:35:34 +02:00
MohitMaliFtechiz
40edd03396 Fixed: Bookmarks were not showing for newly added books from the OPDS stream.
* Removed books from `library.xml` if they no longer have any associated bookmarks, as keeping them is unnecessary and wastes resources and memory, while also increasing the time needed to load the library from storage.
* Fixed: The downloading online library progress was showing incorrect.
* Refactored the all unit test cases according to the new changes.
2025-06-07 00:02:09 +05:30
MohitMaliFtechiz
7a10528d19 Added the com.squareup.retrofit2:converter-scalars converter to Retrofit to parse OPDS network responses.
* Created `LibkiwixBook` to wrap the `Book` class from `libkiwix`, allowing us to set custom values from the database and manage books received from the `OPDS` stream. This wrapper is necessary because the original Book class does not provide setters. We'll use `LibkiwixBook` throughout the codebase.
* Refactored the codebase to replace `LibraryNetworkEntity.Book` with `LibkiwixBook`.
2025-06-04 22:16:09 +05:30
MohitMaliFtechiz
164e38b113 Refactored the remaining functionality to use Jetpack Compose UI.
* Improved the design of the `Settings` screen to match the previous XML layout.
* Updated the ViewModel to handle user interactions following the MVVM pattern.
* Introduced `SettingScreenState` to manage the state of the settings screen.
* Removed `KiwixPrefsFragment`, `CustomPrefsFragment`, and `CorePrefsFragment` as they are no longer needed.
* Cleaned up unused code from the project.
2025-05-29 19:04:40 +05:30
MohitMaliFtechiz
6cae44821e Refactored RxJava to coroutines in ConnectivityBroadcastReceiver.
* Simplified the `combineToLanguageList` method and removed warnings.
* Refactored `ZimManageViewModelTest` to align with the changes.
* Removed unused `RxJava` code from the project.
* Removed all `RxJava` dependencies from the project.
* Updated the `README` file to reflect that `RxJava` is no longer used.
* Updated `credit.html` accordingly, similar to the `README`.
2025-05-27 17:48:28 +05:30
MohitMaliFtechiz
de807f2a51 Fixed: SearchFragmentTestForCustomApp which sometimes failing on API level 33 and above. 2025-05-27 12:33:51 +05:30
MohitMaliFtechiz
31cc84664c Improved the KiwixSearchView to handle the keyboard onDone button press. Now, when the user presses the Done button on the keyboard, it triggers the search and opens the first matching item, if available.
* Fixed: The `FIND_IN_PAGE` button was appearing when the search was opened from `FromTabView`.
* Fixed: The `FIND_IN_PAGE` button was not displaying properly (only half was visible).
* Improved: The `NavigationIcon` to better support test cases.
* Fixed: `VoiceSearch` was not working when launched from the `SearchWidget`.
* Refactored: `SearchFragmentTest` and `SearchFragmentTestForCustomApp` to align with the Compose UI.
* Removed: Additional unused code from the project.
2025-05-26 22:31:25 +05:30
MohitMaliFtechiz
701fffb758 Refactored RxJava to coroutines in OnlineLibrary 2025-05-20 08:46:39 +05:30
translatewiki.net
10aac7acae Localisation updates from https://translatewiki.net. 2025-05-10 08:21:56 +02:00
MohitMaliFtechiz
4af14d8c98 Introduced the turbine library for efficiently testing the coroutine flows.
* Removed the `TestObserver` since it was sometimes stucks on the execution.
* Refactored the test cases according to turbine library.
2025-05-09 21:39:47 +05:30
MohitMaliFtechiz
2f9439391a Fixed: the unit test cases which were failing on CI. 2025-05-09 18:41:21 +05:30
MohitMaliFtechiz
bfb209acd5 Improved the scanning of ZIM files from storage.
* Improved the `TestObserver` to properly to receive the test values.
2025-05-09 16:12:30 +05:30
MohitMaliFtechiz
bbae4dbd64 Fixed: CustomFileValidatorTest which was failing on the CI.
* Improved the detecting of files from media directory.
* Fixed: `CustomDownloadViewModelTest` which was failing on CI.
2025-05-09 13:31:51 +05:30
MohitMaliFtechiz
a6ed6ccc1d Created the TestObserver class for efficiently testing the coroutine flows.
* Fixed: FileSearchTest.
* Fixed: `SearchViewModelTest`.
* Fixed: `ZimManageViewModelTest`.
* Fixed: `StorageObserverTest`.
* Fixed: `FileSearchTest`.
* Fixed: `CustomDownloadViewModelTest`.
* Fixed: ZimFile was not opening when downloading via fallback system for custom app.
* Fixed: `CustomDownloadViewModelTest`.
2025-05-08 18:53:31 +05:30
MohitMaliFtechiz
5ee1fcdd2b Fixed all compilation errors in the project.
* Refactored `StartMultiSelection` to use coroutines instead of RxJava.
* Refactored `fileSelectActions` to use coroutines instead of RxJava.
* Refactored the `updateBookItems` to use coroutines instead of `rxJava`.
* Refactored `LocalLibraryFragment` to use coroutine flows instead of RxJava code.
* Improved the test code to validate coroutine flows.
* Refactored the `NewRecentSearchDaoTest` according to new flow test code.
* Refactored the `StorageObserverTest`.
* Refactored the `SearchViewModelTest`.
* Refactored the `FileSearchTest`.
2025-05-08 08:56:01 +05:30
MohitMaliFtechiz
8769d83e92 Refactored RxJava to coroutines in FileSearching 2025-05-08 08:56:01 +05:30
MohitMaliFtechiz
8bc7bcead4 Fixed the NoteFragmentTest, and some other test cases which were previously failing.
* Resolved the remaining accessibility issues.
* Fixed the issue where UnsupportedMimeTypeHandler and RateDialog were not showing.
* Added support for loading adaptive icons (from the mipmap folder) in the IconItem class.
2025-04-24 17:56:28 +05:30
translatewiki.net
d9a60a6f23 Localisation updates from https://translatewiki.net. 2025-04-19 17:37:16 +02:00
MohitMaliFtechiz
d70f30b86e Fixed: Notification not showing when downloading ZIM files in custom apps.
* The issue occurred because the notification permission was not granted. On Android 13 and above, notifications won't appear without explicit permission.
* To fix this, we now properly request the notification permission on devices running Android 13 and above.
2025-04-10 18:40:29 +05:30
MohitMaliFtechiz
1d1c3f3f63 Fixed: AAB file was not found when uploading to Play Store for custom apps.
* Since we upgraded Gradle, we switched to using `layout.buildDirectory` instead of `buildDir`, as the latter is now deprecated. The new approach returns a DirectoryProperty object instead of a direct build directory path. This caused our custom apps' CD pipeline to be unable to locate the generated `.aab` file. We have now updated the code to correctly retrieve the directory path from the `DirectoryProperty` object.
2025-04-03 17:15:52 +05:30
MohitMaliFtechiz
05e231579b Fixed: Compilation issues in unit test cases. The issue was in Gradle itself, which was preventing us from merging or excluding duplicate META-INF files.
* Upgraded Gradle to `8.11.0-alpha03` for better support for Android 16.
* Upgraded the Gradle wrapper to `8.13`, the latest version.
* Fixed: Some deprecated methods in the custom app's Gradle. The new methods for registering tasks are better than the previous ones, which is why Gradle deprecated the older methods.
* Refactored the `createDynamically` task for custom apps according to new gradle.
* Fixed: Some lint and detekt issues.
2025-03-31 15:27:31 +05:30
MohitMaliFtechiz
f34d46cc7b Added target, compileSdkVersion versions since now there are sources available for SDK 36. 2025-03-31 12:11:09 +05:30
MohitMaliFtechiz
5d88048976 Upgraded the org.jetbrains.kotlinx:kotlinx-coroutines-rx3 to version 1.10.1.
* Upgraded the `androidx.test:orchestrator` to version `1.5.1`.
* Upgraded the `androidx.constraintlayout:constraintlayout` to version `2.2.0`.
* Fixed the last lint issue.
2025-03-31 12:11:09 +05:30
MohitMaliFtechiz
fbe7712b03 Added support for Android 16. * Upgraded the AGP to which supports Android 16.
* Replaced the  and  with , and  to add support for Android 16.
2025-03-31 12:11:09 +05:30
MohitMaliFtechiz
56b8a16328 Removed unused code from project. 2025-03-25 12:02:46 +05:30
MohitMaliFtechiz
00f79df953 Improved the selection and deselection of ZIM files for deletion.
* Fixed: A memory leak in `HelpFragment` which is showing after migrating the localLibrary fragment to compose.
2025-03-24 19:48:49 +05:30
translatewiki.net
b36e96e2ab
Localisation updates from https://translatewiki.net. 2025-03-06 13:05:53 +01:00
MohitMaliFtechiz
6e804384a9 Fixed: Remaining InjectDispatcher detekt issues. 2025-02-24 17:20:47 +05:30
MohitMaliFtechiz
10446b27b2 Simplified some other conditions which is reported by the detekt. 2025-02-24 16:36:38 +05:30
MohitMaliFtechiz
6721be1764 Upgraded detekt and ktlint libraries to latest version. 2025-02-21 19:05:43 +05:30
translatewiki.net
262e327f20 Localisation updates from https://translatewiki.net. 2025-02-13 14:41:40 +01:00
MohitMaliFtechiz
d974822481 Refactored the deprecated method used in our test cases. 2025-02-13 10:26:37 +01:00
MohitMaliFtechiz
af8ca7f620 Fixed: SearchFragmentTest for custom apps was failing. 2025-02-07 13:50:48 +05:30
MohitMaliFtechiz
83337ac5f1 Fixed: FindInPage functionality not working in Kiwix and custom apps. 2025-02-07 13:37:20 +05:30
MohitMaliFtechiz
67111ef848 Fixed: Searched item was not opening in custom apps. 2025-02-07 13:34:04 +05:30
MohitMaliFtechiz
2fb1896cea Fixed: Restore web view history in Kiwix app.
* Improved restoration of web view history after opening a searched article.
* Refactored `restoreViewStateOnValidJSON` and `restoreViewStateOnInvalidJSON` methods to save and retrieve web view history from the Room database.
* Added detailed comments to methods for better understanding, including guidance for developers to check subclass implementations before making modifications.
* Fixed the `static analysis` errors.
2025-02-07 13:29:01 +05:30
MohitMaliFtechiz
ee50417154 Implemented new approach to save and retrieve the webView history. 2025-02-07 13:28:33 +05:30
translatewiki.net
376c4d694d Localisation updates from https://translatewiki.net. 2025-02-01 12:10:30 +01:00
MohitMaliFtechiz
a9364d5881 Fixed: The SearchFragmentTestForCustomApp was failing sometimes. 2025-02-01 12:07:02 +01:00