Commit graph

348 commits

Author SHA1 Message Date
NBA2K1
7bc3338c2a Make login dialog code simpler
- Remove unnecessary email and password state variables
- Rely on TextEditingController values instead of onChanged
- Reset error state on submit
- Dispose controllers after dialog closes
2026-02-27 14:12:18 +01:00
NBA2K1
f85e661c8e Add autofill to kitsu login dialog
- Wrap login fields in AutofillGroup and add proper autofillHints for email, username, and password
- Add keyboard types, textInputAction, and onFieldSubmitted to improve form navigation
- Disable suggestions/autocorrect for password field
- Add TextInput.finishAutofillContext() on successful login
- Improve focus handling and overall form behavior
- Minor UI/structure adjustments for clarity and consistency
2026-02-27 12:18:25 +01:00
Moustapha Kodjo Amadou
eec96c6258
Merge pull request #644 from NBA2K1/main
Improve extension service lifecycle, isolate robustness, dedupe lists, and UI/lifecycle cleanups
2026-02-13 10:50:32 +01:00
NBA2K1
e5252183aa Revert "+"
This reverts commit 3c2bc096a9.
2026-02-04 20:04:42 +01:00
Schnitzel5
3c2bc096a9 + 2026-01-31 00:16:48 +01:00
Schnitzel5
7c4ad924b1 added option to exclude categories from mass update 2026-01-31 00:14:39 +01:00
Moustapha Kodjo Amadou
d5aecf66dc Fix #643 2026-01-26 17:28:25 +01:00
Moustapha Kodjo Amadou
bf6949a834 feat: refactor backup function to improve error handling and notification display 2026-01-23 14:44:17 +01:00
Moustapha Kodjo Amadou
b53e869258 feat: add DNS-over-HTTPS (DoH) support (experimental) 2026-01-20 14:38:46 +01:00
NBA2K1
ee2d42fa4b categories screen clean up 2026-01-08 18:56:23 +01:00
Moustapha Kodjo Amadou
74b194602c update dependencies & update riverpod provider declarations 2026-01-08 14:27:08 +01:00
Moustapha Kodjo Amadou
b9f9a8398f Refactor download management with shared isolate pool and optimize concurrent downloads 2026-01-08 13:01:15 +01:00
Moustapha Kodjo Amadou
701a696820 Enhance category management with animation 2026-01-05 12:38:30 +01:00
Moustapha Kodjo Amadou
6b70fff6cc
Merge pull request #638 from 686udjie/main
add a force landscapre mode on mobile
2026-01-05 12:11:33 +01:00
NBA2K1
922582b270 Fix share params to avoid Text file
- avoids extra text file
- simplify RenderBox lookup
2026-01-04 20:25:13 +01:00
686udjie
79ee4b4fc8 add a force landscapre mode on mobile 2026-01-01 19:48:57 +02:00
NBA2K1
ba77c5baea Reduce Code Duplication
And add comments
2025-12-30 01:15:36 +01:00
NBA2K1
4e2d8b0038 Fix category rearrange bug
When rearranging categories in the Manga library, all categories in Anime and Novel were being deleted.
2025-12-30 00:27:49 +01:00
NBA2K1
821cbfa0dd Make function async
_updateCategoriesOrder() is now async
2025-12-29 23:38:17 +01:00
NBA2K1
4fb9f0a9df remove redundant things 2025-12-29 23:20:08 +01:00
NBA2K1
1ac605e30a Use the localized extension 2025-12-29 23:20:08 +01:00
NBA2K1
9efd76581f Group related functions using an extension
- new file item_type_filters.dart for the hiddenItemTypes function.
- reduces code duplication in statistics_screen, categories_screen and base_library_tab_screen
2025-12-29 23:19:31 +01:00
NBA2K1
42f1dcff92 Reduce Code Duplication
- Extract localizedItemType() from `base_library_tab_screen.dart`
- Add localizedSources() and localizedExtensions() for browse_screen.dart
- Reduce if-statements in statistics_screen.dart
- Reduce if-statements in categories_screen.dart
- Reduce if-statements in browse_screen.dart
2025-12-29 04:59:06 +01:00
Moustapha Kodjo Amadou
e40e1b8fe6 fix: improve handling of proxy server URL in dialog 2025-12-23 18:32:04 +01:00
Moustapha Kodjo Amadou
e342fe16fb
Merge pull request #632 from NBA2K1/path-optimizations
Path optimizations
2025-12-18 17:09:33 +01:00
NBA2K1
5f7ea7fcf4 reduce code duplication
Use the `formattedFileSize()` function instead of `_formatBytes()`
2025-12-17 22:25:45 +01:00
NBA2K1
0ed8ee2cd2 Move cacheDir creation to storage_provider
- Move the cacheDir creation to storage_provider from `others.dart`, `custom_extended_image_provider.dart` and `storage_usage.dart`.

- Use the correct directory, `getApplicationCacheDirectory()` instead of the `getTemporaryDirectory()` (which is being deleted by the OS regularly) for cache files.

- remove the `_cacheDownloadPath` from `storage_usage.dart` as the path is never being created in the first place, so using that path in `clearCache()` and `_getTotalDiskSpace()` is unnecessary.
2025-12-17 20:55:41 +01:00
NBA2K1
284fccd1ef Add log-switch to app.
- New switch in More > Settings > About
"Enable logging".

When ON, it inits the AppLogger and shows the "Share app logs" button below.
When OFF, it disposes the AppLogger and hides the "Share app logs" button.
It also prevents the AppLogger from init.

OFF by default.

- added localizations accordingly.
2025-12-13 00:42:50 +01:00
Moustapha Kodjo Amadou
fc49b33826 feat(user-agent): add default user agent setting 2025-12-10 14:14:51 +01:00
Moustapha Kodjo Amadou
23e41373dc conditionally show Android proxy server option and update notes 2025-12-10 13:42:34 +01:00
Moustapha Kodjo Amadou
e48c475fcb refactor(statistics): update statistics provider to use functional provider pattern 2025-12-05 17:03:51 +01:00
Whiskas101
04267b7a50 fix: updated statistics to use async fetch from db 2025-11-30 14:37:48 +05:30
Moustapha Kodjo Amadou
958e91ac9a
Merge pull request #612 from NBA2K1/main
Various fixes
2025-11-29 06:29:15 +01:00
NBA2K1
33152fc035 Fix ProviderDisposedException
[ERROR:flutter/runtime/dart_vm_initializer.cc(40)] Unhandled Exception: Cannot use the Ref of totalChapterCacheSizeStateProvider after it has been disposed. This typically happens if:
- A provider rebuilt, but the previous "build" was still pending and is still performing operations.
  You should therefore either use `ref.onDispose` to cancel pending work, or
  check `ref.mounted` after async gaps or anything that could invalidate the provider.
- You tried to use Ref inside `onDispose` or other life-cycles.
  This is not supported, as the provider is already being disposed.

#0      Ref._throwIfInvalidUsage (package:riverpod/src/core/ref.dart:220:7)
ref.dart:220
#1      AnyNotifier.state= (package:riverpod/src/core/provider/notifier_provider.dart:91:9)
notifier_provider.dart:91
#2      TotalChapterCacheSizeState.build.<anonymous closure> (package:mangayomi/modules/more/data_and_storage/providers/storage_usage.dart:17:42)
storage_usage.dart:17
#3      Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:948:45)
future_impl.dart:948
#4      Future._propagateToListeners (dart:async/future_impl.dart:977:13)
future_impl.dart:977
#5      Future._completeWithValue (dart:async/future_impl.dart:720:5)
future_impl.dart:720
<asynchronous suspension>
2025-11-29 01:31:22 +01:00
hndrbrm
cc84c33c25 Fix: Reverse icon for toggling the Extension. 2025-11-29 05:41:54 +07:00
Moustapha Kodjo Amadou
c2a1e5ee17 fix: improve error handling for backup restoration 2025-11-25 16:51:29 +01:00
Moustapha Kodjo Amadou
405c3d8e35 fix 2025-11-25 15:34:38 +01:00
Whiskas101
20f8f1ad7c refactor: moved state provider into a non-closure based provider 2025-11-20 22:14:34 +05:30
Moustapha Kodjo Amadou
a9c8320f20 refactor: simplify CustomFloatingActionBtn and remove unnecessary width calculations 2025-11-11 15:27:12 +01:00
Moustapha Kodjo Amadou
fd615bd44b refactor: streamline archive import process and enhance cover image handling 2025-11-11 13:13:35 +01:00
Moustapha Kodjo Amadou
75d5013179 fix: ensure keepAlive is called in AutoBackupLocationState build method 2025-11-11 10:38:58 +01:00
Moustapha Kodjo Amadou
b8fffca2b3 Refactor an fix 2025-11-09 01:15:27 +01:00
Moustapha Kodjo Amadou
dee1a8635c Refactor 2025-11-08 22:13:24 +01:00
Moustapha Kodjo Amadou
d35192629b Add keepAlive calls in Synching and SyncServer build methods 2025-11-08 22:04:57 +01:00
Moustapha Kodjo Amadou
24849cc000
Merge pull request #517 from NBA2K1/Correct-directory
Standardize Folder Structure on Windows, Linux, iOS & macOS
2025-11-08 21:47:07 +01:00
Moustapha Kodjo Amadou
c28ab14e74 Refactor auto-scroll functionality in novel reader
- Removed the NovelAutoScrollState provider and its associated logic.
- Introduced autoScrollValues and setAutoScroll methods in NovelReaderController to manage auto-scroll settings.
- Updated NovelReaderView to handle auto-scroll state and page offset dynamically.
- Added UI elements in GeneralSettingsTab to control auto-scroll settings with a slider for page offset.
- Enhanced the auto-scroll feature to allow for play/pause functionality within the novel reader view.
2025-11-08 19:47:23 +01:00
NBA2K1
1b64f2650e Merge remote-tracking branch 'upstream/main' into Correct-directory 2025-11-08 14:59:23 +01:00
Moustapha Kodjo Amadou
af20e084b0 Refactor dependencies and remove unused packages; update Flutter HTML package; add novel reader settings UI 2025-11-08 01:38:29 +01:00
Moustapha Kodjo Amadou
0d0f488ef3 Update WidgetRef types to dynamic to fix updateTrackChapterRead 2025-10-31 11:38:39 +01:00
NBA2K1
a307e9d049 Merge remote-tracking branch 'upstream/main' into Correct-directory 2025-10-29 18:30:50 +01:00