8630 Commits

Author SHA1 Message Date
MohitMaliFtechiz
a717b64f9e Refactored the all fragments, and classes to use the compose alertDialog. 2025-04-22 16:28:53 +05:30
MohitMaliFtechiz
aed6aa9814 Refactored AddNoteDialog, CoreReaderFragment, LocalFileTransferFragment, and OnlineLibraryFragment to use the Compose-based AlertDialogShower UI. 2025-04-22 13:30:11 +05:30
MohitMaliFtechiz
f7599f9b9d Fixed the icon was not showing properly in alertDialog. 2025-04-22 11:54:26 +05:30
MohitMaliFtechiz
3c729350f0 Improved the uri design in dialog. 2025-04-22 11:36:45 +05:30
MohitMaliFtechiz
15346d65f0 Migrated AlertDialogShower to Jetpack Compose
* Introduced a `DialogHost` to support both Compose and View-based dialog rendering.
* Refactored `AlertDialogShower` to use Jetpack Compose for building dialog UI.
* Updated `ZimHostFragment` to integrate and display Compose-based dialogs.
* Modified `KiwixDialog` to align with the Compose UI structure and support custom Composables.
2025-04-21 20:47:05 +05:30
benoit74
86daeeabd5
Fix funding-manifest-urls content 2025-04-20 17:23:11 +02:00
Kelson
8b499c6332
Merge pull request #4286 from kiwix/Fixes#4245
Migrated the `LocalFileTransferFragment` to Jetpack Compose.
2025-04-19 17:38:36 +02:00
MohitMaliFtechiz
2c562883a8 Fixed: LocalFileTransferRobot test. 2025-04-19 17:37:47 +02:00
MohitMaliFtechiz
50e628a2dd Refactored the LocalFileTransferTest, TopLevelDestinationTest, and GetContentShortcutTest test cases to align with the Compose UI. 2025-04-19 17:37:47 +02:00
MohitMaliFtechiz
33acbecb2d Remove the com.github.deano2390:MaterialShowcaseView library from project since now we have our own showcase view, and this library is only supports the XML based UI. 2025-04-19 17:37:47 +02:00
MohitMaliFtechiz
6e7c9c7d6a Removed the unused code from project to cleanup the code. 2025-04-19 17:37:47 +02:00
MohitMaliFtechiz
2d36f36aed Improved the appearance of KiwixShowCaseView. 2025-04-19 17:37:47 +02:00
MohitMaliFtechiz
8920372198 Fixed: The transferring progress was not showing when transferring the files. 2025-04-19 17:37:47 +02:00
MohitMaliFtechiz
0a1e5f36a1 Refactored KiwixShowCaseView to align with app theme and improve usability.
* Added animated pulse effect to highlight the selected view.
* Introduced support for custom width/height for the showcase circle, useful for large views that might otherwise extend off-screen. Defaults to the view's dimensions if not specified.
* Enhanced ShowCaseMessage to automatically position itself based on available space. It prefers the top, falls back to the bottom if needed, and uses left/right positioning when vertical space is insufficient — ensuring it always stays within screen bounds.
2025-04-19 17:37:47 +02:00
MohitMaliFtechiz
74216e8850 Created the KiwixShowCaseView to educate users about the app's functionalities. The previous library we were using supported a view-based UI, but since we are now using Jetpack Compose, we built our own showcase view. This will be helpful for future tickets where we need to educate users about the app's features. 2025-04-19 17:37:47 +02:00
MohitMaliFtechiz
7f0ffa7cc6 Improved the all text colors of LocalFileTransferScreen to match the XML-based design. 2025-04-19 17:37:47 +02:00
MohitMaliFtechiz
361fbbc0bd Refactored the LocalFileTransferFragment functionality to align with the Compose UI.
* Optimized the UI rendering logic to render only the necessary components, avoiding unnecessary recompositions.
* Utilized dimensions from `ComposeDimens` for better maintainability and consistency.
2025-04-19 17:37:47 +02:00
MohitMaliFtechiz
199f008811 Migrated the LocalFileTransferFragment to Jetpack Compose.
* Created the `LocalFileTransferScreen` composable to match the original XML-based design.
2025-04-19 17:37:47 +02:00
Kelson
1057350ad4
Merge pull request #4272 from kiwix/translatewiki
Localisation updates from https://translatewiki.net.
2025-04-19 17:37:24 +02:00
translatewiki.net
d9a60a6f23 Localisation updates from https://translatewiki.net. 2025-04-19 17:37:16 +02:00
Kelson
6fd469e819
Merge pull request #4288 from kiwix/updated_android_studio_preview_url_in_readme
Updated the README file to reflect the compatible version of Android Studio.
2025-04-19 17:36:38 +02:00
MohitMaliFtechiz
683392c3cc Updated the README file to reflect the compatible version of Android Studio.
* Since there's no official Android Studio IDE that supports Android 16 yet — it's currently in the final beta phase and is expected to launch in May or possibly June — we need to use the `Canary build` of the `Narwhal` version for now. Therefore, we're updating the README file accordingly. Once the official IDE is released, we'll update the README again.
2025-04-19 17:36:26 +02:00
benoit74
293e4495bf
Add file for funding.json 2025-04-19 07:30:22 +00:00
Kelson
201c16bd8c
Merge pull request #4284 from kiwix/Fixes#4243
Migrated `BookmarkFragment`, `HistoryFragment`, and `NotesFragment` to Jetpack Compose.
2025-04-18 08:29:24 +02:00
MohitMaliFtechiz
d02ef05390 Refactored the NoteFragmentTest test according to compose UI. 2025-04-15 15:15:52 +05:30
MohitMaliFtechiz
bb8a78a620 Refactored the TopLevelDestinationTest test according to compose UI. 2025-04-15 13:44:27 +05:30
MohitMaliFtechiz
7764a6a207 Refactored the GetContentShortcutTest test according to compose UI. 2025-04-15 13:41:00 +05:30
MohitMaliFtechiz
12e17e4d87 Refactored the LibkiwixBookmarkTest test according to compose UI. 2025-04-15 13:03:28 +05:30
MohitMaliFtechiz
af94018285 Added support to hide the keyboard when scrolling the list, replicating the behavior from the XML-based implementation. 2025-04-14 18:39:11 +05:30
MohitMaliFtechiz
01a3838c6a Fixed: UI was not updating when selecting items for deletion. 2025-04-14 18:39:11 +05:30
MohitMaliFtechiz
0aa39d8a2b Fixed: The date was not showing "Today", and "Yesterday". 2025-04-14 18:39:11 +05:30
MohitMaliFtechiz
c1441f1461 Improved the design of SwitchRow(TextView, and Switch).
* Fixed: The "No Bookmarks" text was not showing in the center of screen.
* Removed the unused code from project.
2025-04-14 18:39:11 +05:30
MohitMaliFtechiz
b932dd0a04 Fixed: The back button was exiting the fragment instead of closing the search.
* Added comments on the methods for better understanding.
2025-04-14 18:39:11 +05:30
MohitMaliFtechiz
79e0ec72c1 Fixed: Toolbar title was not appearing when closing the SearchView. 2025-04-14 18:39:11 +05:30
MohitMaliFtechiz
ad9d43b455 Fixed: The switch was not displaying the previously saved value. For example, if it was unchecked before, reopening the fragment would incorrectly show it as checked instead of unchecked. 2025-04-14 18:39:11 +05:30
MohitMaliFtechiz
1d3944dab5 Refactored the KiwixSearchView to use externally provided placeholder for searchView.
* Created the `PageFragmentScreenState` to encapsulates the all UI-related state to reduce the complexity in fragment.
2025-04-14 18:39:11 +05:30
MohitMaliFtechiz
acbf1bfec3 Fixed: When selecting page items the changes are not reflecting in UI.
* Improved the clicking on page item.
* Fixed: Page items are not showing updating after deleting.
* Fixed: Switch was not disabling when selecting the page items.
* Added SearchView, navigationIcon, and menuItems to page fragment.
2025-04-14 18:39:11 +05:30
MohitMaliFtechiz
bceebd5de4 Migrated BookmarkFragment, HistoryFragment, and NotesFragment to Jetpack Compose.
* Created a `PageScreen` composable, which serves as the base screen for all these fragments. Each fragment can customize it as needed.
* Introduced a reusable `PageListItem` composable for consistent list item rendering.
* Added an extension function to convert the favicon to a Compose ImageBitmap. If no favicon is available, it falls back to the default ZIM icon, maintaining behavior from the XML-based UI.
2025-04-14 18:39:11 +05:30
Kelson
45724dca02
Merge pull request #4281 from kiwix/Fixes#4280
Fixed: Notification not showing when downloading ZIM files in custom apps.
2025-04-14 12:23:20 +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
Kelson
083e9b6103
Merge pull request #4283 from kiwix/Fixes#4282
Fixed: `Input dispatching timed out` error while downloading files from ZIM files.
2025-04-10 14:31:21 +02:00
MohitMaliFtechiz
b8d1b8a4c7 Fixed: Input dispatching timed out error while downloading files from ZIM files.
* Moved the download logic to the IO thread to prevent blocking the main thread.
* Also refactored the code structure slightly to reduce nesting and resolve the NestedBlockDepth lint warning.
2025-04-10 14:38:38 +05:30
Kelson
563e06e302
Merge pull request #4279 from kiwix/Fixes#4278
Fixed: Application crashes on `FetchDownloadNotificationManager.getCancelNotification` method.
2025-04-10 09:21:00 +02:00
MohitMaliFtechiz
56b94cb5cf Fixed: Application crashes on FetchDownloadNotificationManager.getCancelNotification method.
* The issue occurred when the user paused a download from the notification while the application was in the background and only a single download was active. At that point, a paused notification was posted on the IO thread to inform the user, and shortly after, the same notification was set on the foreground service. Due to a timing conflict, both notifications were being processed simultaneously, leading to a crash.
* To fix this, a synchronization lock is added inside the `getCancelNotification` method to ensure that only one thread can access the notification builder at a time.
2025-04-09 11:29:46 +05:30
Kelson
ef9a7a2129
Merge pull request #4275 from kiwix/minor_improvement_in_uploading_aab_for_custom_aaps
Fixed: AAB file was not found when uploading to Play Store for custom apps.
2025-04-03 15:17:43 +02:00
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
Kelson
bb25fcaaf5
Merge pull request #4274 from kiwix/Fixes#4273
Fixed: After upgrading Gradle, we were unable to upload the AAB because APK splitting was enabled.
2025-04-03 12:51:49 +02:00
MohitMaliFtechiz
53e6cf3f92 Fixed: After upgrading Gradle, we were unable to upload the AAB because APK splitting was enabled.
* ABI splitting is now enabled only when needed (i.e., when building an APK) through an environment variable (APK_BUILD). By default, ABI splitting remains disabled.
* Refactored the workflow to align with this change.
* Updated the README to document this change, ensuring that everyone is aware of this feature.
2025-04-03 15:14:07 +05:30
Kelson
4236be8d40
Merge pull request #4267 from jackq97/#4160-migrate-language-fragment-to-compose
Feat: Language fragment to jetpack compose screen
2025-04-02 18:50:31 +02:00
MohitMaliFtechiz
630446c2e2 Fixed: Extra top margin in KiwixAppBar when opening KiwixSearchView.
* The issue occurred because our application already has `Edge-To-Edge` mode enabled, but Compose's `TopAppBar` automatically adds a top margin when insets change. This resulted in double padding in the toolbar.
* To fix this, we now apply only the side insets to the toolbar, as the top insets are already handled.
2025-04-02 15:22:58 +05:30