Commit graph

1022 commits

Author SHA1 Message Date
Moustapha Kodjo Amadou
0903b9d7e3 refactor: improve code structure and enhance UI elements in the code editor and manga detail view 2025-11-11 10:38:27 +01:00
Moustapha Kodjo Amadou
494e31e396 adjust 2025-11-10 14:38:29 +01:00
Moustapha Kodjo Amadou
79ca3b2e39 + 2025-11-09 01:22:44 +01:00
Moustapha Kodjo Amadou
b8fffca2b3 Refactor an fix 2025-11-09 01:15:27 +01:00
Moustapha Kodjo Amadou
099805b21c Fix author display logic to handle empty author names 2025-11-08 23:45:04 +01:00
Moustapha Kodjo Amadou
93298c7376 fix novel download and improve HTML content processing 2025-11-08 23:37:22 +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
faef6562fd Add localization 2025-11-08 20:49:39 +01:00
Moustapha Kodjo Amadou
b1b71ea4d3 Improve auto-scroll condition in manga and novel readers 2025-11-08 20:36:28 +01:00
Moustapha Kodjo Amadou
6eda6de614 Refactor auto-scroll handling and improve tap-to-scroll settings in novel reader 2025-11-08 20:32:25 +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
e288cb00d3 Refactor 2025-11-07 18:23:48 +01:00
Moustapha Kodjo Amadou
1569c1bcd1 Implement LRU caching for image data and optimize network requests with exponential backoff retry logic 2025-11-07 14:34:09 +01:00
Moustapha Kodjo Amadou
fef6ffd65b Enhance author display in MangaDetailsView with an icon 2025-11-07 11:54:33 +01:00
Moustapha Kodjo Amadou
75472aed62 Fix icon direction logic in ListTileChapterSort widget 2025-11-07 11:34:50 +01:00
Moustapha Kodjo Amadou
951781f415 Refactor ReadMoreWidget to use a new ExpandableText implementation 2025-11-07 11:19:39 +01:00
Moustapha Kodjo Amadou
e8384f51fc Refactor 2025-11-06 16:51:01 +01:00
Moustapha Kodjo Amadou
6e94632417 Add image cropping functionality with isolate support and optimize crop border processing 2025-11-06 16:47:32 +01:00
Moustapha Kodjo Amadou
f483dfab2b Refactor manga reader components: replace VirtualReaderView with WebtoonView and remove unused virtual scrolling files 2025-11-06 11:48:12 +01:00
Moustapha Kodjo Amadou
8eea4eaa4d + 2025-11-05 12:52:09 +01:00
Moustapha Kodjo Amadou
1f2b143585 Refactor 2025-11-05 12:21:36 +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
Moustapha Kodjo Amadou
1361315e3e + 2025-10-29 16:41:32 +01:00
Moustapha Kodjo Amadou
3dc22a9c70 + 2025-10-29 15:01:36 +01:00
Moustapha Kodjo Amadou
8213a36895 Update 2025-10-29 13:25:52 +01:00
Moustapha Kodjo Amadou
377e5d617a
Merge pull request #596 from kodjodevf/riverpod_v3
Refactor and update dependencies for Isar and Riverpod
2025-10-29 13:10:07 +01:00
Moustapha Kodjo Amadou
430e81e021 Refactor and update dependencies for Isar and Riverpod 2025-10-29 13:08:42 +01:00
Moustapha Kodjo Amadou
7bef205dd2 Handle potential null value for sharePositionOrigin in backup sharing functionality 2025-10-29 09:52:31 +01:00
Schnitzel5
bba3c02666 fixed migration sourceId issue
- added link to sync server for non-discord users
2025-10-25 01:26:53 +02:00
Moustapha Kodjo Amadou
d18d83a7c5 Fix null safety issues 2025-10-22 11:08:35 +01:00
Moustapha Kodjo Amadou
2ff20c35cc + 2025-10-22 10:51:25 +01:00
Moustapha Kodjo Amadou
7c47d19a70 Refactor imageUrl assignment in updateMangaDetail to handle null and HTTP checks 2025-10-13 13:33:10 +01:00
Schnitzel5
5ef46ec13d adding support for LNReader plugins 2025-10-10 15:49:33 +02:00
NBA2K1
462e9b5fe7 Merge remote-tracking branch 'upstream/main' into Correct-directory 2025-10-09 19:13:22 +02:00
Moustapha Kodjo Amadou
1fa7f3123b update 2025-10-02 15:52:00 +01:00
Moustapha Kodjo Amadou
64cb896ea5
Merge pull request #574 from Schnitzel5/rework/local-source
reworked local source
2025-09-10 09:13:57 +01:00
Schnitzel5
2955dd0bd1 + 2025-09-07 22:28:20 +02:00
Schnitzel5
5a6552e6f6 local folders now also scans for subtitles
- added help button to show an example of a local folder
2025-09-05 21:33:22 +02:00
Schnitzel5
05d0ddf0d6 reworked local source
- allow multiple local folders
- added support for scanning .epub novels
- added metadata,json support
- scanned entries now appear in browse screen instead of the default library category (can be added to library)
2025-09-04 23:02:27 +02:00
Schnitzel5
60928374a3 + 2025-09-03 23:44:06 +02:00
Schnitzel5
efcd54c898 fixed app fonts dialog 2025-09-02 14:35:53 +02:00
NBA2K1
e6b6fd6a92 Merge remote-tracking branch 'upstream/main' into Correct-directory 2025-08-30 00:33:31 +02:00
Schnitzel5
78f8dd372f fixed local sources not showing in the extensions screen 2025-08-28 20:19:27 +02:00
Schnitzel5
958ae0b448 added option to turn on/off mpv hardware acceleration 2025-08-28 16:41:43 +02:00
Moustapha Kodjo Amadou
e7b55b4eca fix 2025-08-28 12:43:16 +01:00
Moustapha Kodjo Amadou
7e74fba9bc fix 2025-08-28 12:25:46 +01:00
Moustapha Kodjo Amadou
600a699708 feat: Add use sourceId property if not null to get source model 2025-08-28 12:12:23 +01:00
Moustapha Kodjo Amadou
619e1b640d
Merge pull request #570 from Schnitzel5/button/apkbridge
added button link to the apk
2025-08-28 10:34:59 +01:00
Schnitzel5
c442de35fb added button link to the apk 2025-08-27 18:43:24 +02:00
Schnitzel5
4d89cfe32b fixed Trakt refresh token
- now refreshes expired tokens at startup
- prevents accidental logouts for users who has the tracking screen as default navigation
2025-08-27 18:21:22 +02:00
Moustapha Kodjo Amadou
40a0e080f9
Merge pull request #567 from Schnitzel5/logger
add option to download online subtitles
2025-08-27 09:09:54 +01:00
Moustapha Kodjo Amadou
334fe2f86a
Merge branch 'main' into tracker/simkl 2025-08-27 09:05:45 +01:00
Schnitzel5
790519fcae fixed ShareX for iPad
https://github.com/fluttercommunity/plus_plugins/tree/main/packages/share_plus/share_plus#ipad
2025-08-27 01:40:31 +02:00
Schnitzel5
da7161e199 - 2025-08-27 00:02:42 +02:00
Schnitzel5
e2ddcf1ffe add option to download online subtitles
- button appears for downloaded and local entries
- added app logging class
2025-08-27 00:01:18 +02:00
Schnitzel5
f6c2a24af2 added app logger 2025-08-26 22:07:49 +02:00
Moustapha Kodjo Amadou
9831ae8cf4
Merge pull request #566 from Schnitzel5/adjust/extension-list
changed from labels to icons
2025-08-26 20:08:53 +01:00
Moustapha Kodjo Amadou
22a8db791b
Merge pull request #562 from Schnitzel5/feature/watch-order
added watch order
2025-08-26 20:06:17 +01:00
Moustapha Kodjo Amadou
a061129b86
Merge pull request #560 from Schnitzel5/feature/subtitle-search
added subtitles search
2025-08-26 20:04:10 +01:00
Moustapha Kodjo Amadou
4770e96fdf
Merge pull request #564 from Schnitzel5/enhance/calendar
enhanced calendar
2025-08-26 20:01:16 +01:00
Schnitzel5
a572f7ddaf changed from labels to icons 2025-08-26 15:21:59 +02:00
Schnitzel5
a7b9231eda fixed local subtitles 2025-08-26 02:40:39 +02:00
Schnitzel5
3aaac9e102 enhanced calendar
- predicts from latest chapter instead of current time (if available)
2025-08-26 01:23:46 +02:00
Moustapha Kodjo Amadou
3a577a4c9e Add fixed versions packages of isar_generator and hive_generator to avoid the Analyzer plugin error 2025-08-25 13:21:37 +01:00
Schnitzel5
da79dd97e1 fix images 2025-08-25 12:11:29 +02:00
Schnitzel5
f6a9c41c1d added Trakt.tv 2025-08-25 03:47:10 +02:00
Schnitzel5
5b806f6dd6 added sequels 2025-08-25 01:52:03 +02:00
Schnitzel5
b57015b682 added watch order 2025-08-24 20:02:49 +02:00
Schnitzel5
61575f4795 added Simkl tracker
- reverted dependency versions
- force workflow to use older flutter version
2025-08-24 17:01:52 +02:00
Moustapha Kodjo Amadou
de3829d26c fix 2025-08-24 11:39:33 +01:00
Moustapha Kodjo Amadou
b11ae203ea Refactor RadioListTile usage to RadioGroup in multiple screens 2025-08-24 11:33:11 +01:00
Schnitzel5
42c3f87811 small bug fix 2025-08-23 21:58:32 +02:00
Schnitzel5
9278b6f8af added subtitles search 2025-08-23 21:55:01 +02:00
Schnitzel5
604e1b18d3 Merge branch 'temp/mihon' into feature/mihon 2025-08-23 03:53:17 +02:00
Schnitzel5
74c5eab379 enhanced repo manager
- added custom DNS setting
2025-08-23 03:33:48 +02:00
Schnitzel5
7eba7bdcf2 added filters
- fixed torrents not playing
2025-08-22 17:13:28 +02:00
Schnitzel5
03108ae701 added preferences 2025-08-22 00:13:24 +02:00
Moustapha Kodjo Amadou
0452576de6
Merge branch 'main' into enhance/mpv 2025-08-21 16:35:08 +01:00
Schnitzel5
9395888c6a added support for Mihon extensions via ApkBridge 2025-08-20 21:06:26 +02:00
NBA2K1
00e49e31a0 Merge remote-tracking branch 'upstream/main' 2025-08-18 18:00:46 +02:00
Moustapha Kodjo Amadou
48106450d9
Merge pull request #550 from Schnitzel5/navigation/source-settings
added quick access to source settings
2025-08-18 13:28:55 +01:00
Moustapha Kodjo Amadou
4da61519bb
Merge branch 'main' into feature/downloaded-only 2025-08-18 13:27:29 +01:00
Moustapha Kodjo Amadou
4c0d426408
Merge pull request #549 from Schnitzel5/navigation/history
move history to more screen if hidden
2025-08-18 13:19:04 +01:00
Moustapha Kodjo Amadou
3eb4b8e755
Merge pull request #552 from Schnitzel5/feature/recommendations
added Anibrain recommendations
2025-08-18 13:15:27 +01:00
Schnitzel5
226c6b145e allow to swipe pages even if zoomed in 2025-08-15 22:07:44 +02:00
Schnitzel5
c7d1d75045 added Anibrain recommendations 2025-08-15 21:42:47 +02:00
Schnitzel5
56fc7f905a added downloaded only mode 2025-08-15 21:33:54 +02:00
Schnitzel5
201568df9e added quick access to source settings 2025-08-15 21:25:22 +02:00
Schnitzel5
e9bf100905 move history to more screen if hidden 2025-08-15 21:20:36 +02:00
Schnitzel5
57be3eec9a re-added full upload and download 2025-08-10 02:14:18 +02:00
Schnitzel5
72dd2d7661 removed iOS PiP 2025-08-07 23:56:27 +02:00
Schnitzel5
20c943e5fc testing iOS Picture-in-Picture
implementation from [PR #206](https://github.com/media-kit/media-kit/pull/206)
2025-08-07 21:37:46 +02:00
Schnitzel5
bb1ba2f3bb fixed navigation disappearing after restore 2025-08-07 00:51:39 +02:00
Schnitzel5
d0974a1da6 try fix 2025-08-07 00:34:08 +02:00
Schnitzel5
e565d14ef3 improved calendar 2025-08-06 17:48:32 +02:00
Schnitzel5
715f077c13 added calendar 2025-08-06 16:44:12 +02:00
Schnitzel5
6e9b882b83 added custom buttons to backup 2025-08-06 04:01:00 +02:00
Schnitzel5
1db55b8018 fixed android screen
- adjusted show_text
- fixed exception for android update screen
2025-08-06 03:05:41 +02:00
Schnitzel5
608fc525fb Discord RPC now shows correct position / duration 2025-08-06 00:03:05 +02:00
Schnitzel5
a101d10826 fixed history delete bug 2025-08-04 01:28:22 +02:00
Schnitzel5
c58646244e fix mpv unzip 2025-08-03 23:42:17 +02:00
Schnitzel5
0fea3ab84e switched to lua scripts 2025-08-01 02:57:05 +02:00
Schnitzel5
f25233182a removed unused imports 2025-07-31 19:58:41 +02:00
Schnitzel5
d368e908fe fix storage permission 2025-07-31 03:44:19 +02:00
Schnitzel5
c73e1f3800 Merge branch 'feature/mpv-anime4k' into enhance/mpv 2025-07-31 02:01:23 +02:00
Schnitzel5
afee5926dc added more player customizations
- added navigation button if an entry is already being tracked
- added option to calibrate soft subtitles
2025-07-31 01:58:18 +02:00
Schnitzel5
d7c59fe16b added mpv stats 2025-07-30 03:23:15 +02:00
NBA2K1
69df87ff0e Merge two identical providers
Merge `isLongPressedMangaStateProvider` and `isLongPressedStateProvider`

Both providers do the same thing and it is impossible to change the value of the provider in different places in the app at the same time.

So just use one `isLongPressedStateProvider`. Reduces code duplication and there is no confusion about which one to use.
2025-07-29 14:02:48 +02:00
Schnitzel5
4682ab3577 added custom buttons 2025-07-28 23:42:55 +02:00
NBA2K1
c2bae6d17b Extract reusable Select Bar and Button widgets
Previously, the same select bar and button styles were defined in both
`library_screen.dart` and `manga_detail_view.dart`, resulting in repeated code.

This commit extracts the select bar and its buttons into reusable widgets
to reduce duplication and improve readability and maintainability.
2025-07-28 16:29:30 +02:00
NBA2K1
ae1d158264 Combine two identical classes
Combine MangasSetIsReadState and MangasSetUnReadState to reduce code duplication.
2025-07-28 16:08:13 +02:00
Schnitzel5
1f0938fab9 adding custom buttons 2025-07-28 02:24:32 +02:00
NBA2K1
633b84dd6d Rearrange some code
- variable `color`, to avoid passing `Theme.of(context).textTheme.bodyLarge!.color!` on every Icon in `bottomNavigationBar`
- No need to create variable `isLongPressed` and `chapterNameList` in `build()` and pass them to `_buildWidget()` if they are only going to be used there. Just create the variables inside `_buildWidget()`
- Why create second `isLongPressed` variable in `_buildWidget()` with the same value? Just use the first one.
2025-07-28 00:55:45 +02:00
NBA2K1
fc3cf226f7 bulk write instead of one-by-one (bookmark)
reduces IO-operations.
2025-07-27 21:06:45 +02:00
NBA2K1
88a5474f96 bulk write instead of one-by-one
reduces IO-operations.
2025-07-27 20:06:16 +02:00
NBA2K1
1e2153fa4f Fix unread count after marking chapters read
Fix unread count not updating when marking selected chapters as read
2025-07-27 19:42:05 +02:00
Schnitzel5
5e1e526785 added video chapter timestamps 2025-07-27 02:44:04 +02:00
Schnitzel5
163bc9cec9 added more shaders 2025-07-26 02:03:44 +02:00
NBA2K1
e6302d7d67 Allow OAuth model to save used clientId 2025-07-25 21:32:19 +02:00
Schnitzel5
6be2775fee added filler, thumbnail and description info to chapter list 2025-07-25 20:08:51 +02:00
Schnitzel5
3dae39a86c + 2025-07-24 23:16:35 +02:00
Schnitzel5
38728ce0cb Merge branch 'temp/mpv-anime4k' into feature/mpv-anime4k 2025-07-24 22:31:58 +02:00
Schnitzel5
1450641f16 added mpv config for Anime4K 2025-07-24 22:25:14 +02:00
NBA2K1
7245552ade Merge branch 'main' into Correct-directory 2025-07-24 13:01:42 +02:00
Moustapha Kodjo Amadou
41dbb556ba
Merge pull request #531 from NBA2K1/main
Fix regression: restore fullscreen exit logic on desktop
2025-07-24 09:54:46 +01:00
NBA2K1
83934d7f35 Fix iOS and Android
The initialization of discordRPC on iOS and Android was leading to a grey screen (UnimplementedError), preventing the app to paint the Flutter UI.
The flutter_discord_rpc is only available on macOS, Linux and Windows.
2025-07-24 01:45:58 +02:00
NBA2K1
b388c5fedd re-add removed check in dispose
This was unintentionally removed in d21dbbbc.
This caused fullscreen mode to persist when the user exited the anime player view before the video had started loading.
The fullscreen now correctly exits in the dispose method for desktop platforms again.
2025-07-23 22:45:37 +02:00
Schnitzel5
5b56578029 separated some classes from reader_view 2025-07-23 03:16:24 +02:00
Schnitzel5
5932cf44f2 added sync for settings
- added option to toggle sync for history, update and settings
2025-07-21 23:37:51 +02:00
NBA2K1
72ac460588 Add TODO comment to unused variable 2025-07-21 14:55:33 +02:00
NBA2K1
976010f6f0 Merge remote-tracking branch 'upstream/main' into Correct-directory 2025-07-21 14:55:17 +02:00
Moustapha Kodjo Amadou
25f7402f35 fix add torrent magnet url 2025-07-21 11:02:12 +01:00
Moustapha Kodjo Amadou
e290e0ad4a
Merge branch 'main' into feature/discord-rpc 2025-07-21 09:33:45 +01:00
Moustapha Kodjo Amadou
7bb3da36fc
Merge pull request #527 from Schnitzel5/feature/local-epub
added support for local epubs and displaying its images
2025-07-21 09:16:56 +01:00
Moustapha Kodjo Amadou
936a91403b
Merge pull request #520 from NBA2K1/better-UX
Improved UX for Migration, Anime Playback & Navigation
2025-07-21 09:14:41 +01:00
Schnitzel5
c6a142bcba + 2025-07-20 21:33:39 +02:00
Schnitzel5
5b2f1b4f36 added support for local epubs and displaying its images 2025-07-20 21:23:26 +02:00
NBA2K1
4c46839979 Add TODO comment 2025-07-20 19:41:48 +02:00
NBA2K1
7153dab009
Merge branch 'main' into updates/history-screen-perf 2025-07-20 19:08:26 +02:00
Moustapha Kodjo Amadou
539fd186cb
Merge pull request #519 from NBA2K1/Properly-dispose
Properly dispose
2025-07-19 15:30:59 +01:00
Schnitzel5
d139042241 added discord rpc 2025-07-18 01:02:59 +02:00
NBA2K1
e2da2e812e Updates Screen Tab Switching Performance+ 2025-07-17 23:19:18 +02:00
NBA2K1
f1a49383ea History Screen Tab Switching Performance+ 2025-07-17 23:14:29 +02:00
NBA2K1
5a18d5f0f0 storage permission
potentially fixes #430
2025-07-16 18:21:04 +02:00
NBA2K1
5ee88b80ca fix animation 2025-07-16 14:02:59 +02:00
Schnitzel5
230f9c59a3 changed seekbar behavior 2025-07-15 01:52:15 +02:00
Moustapha Kodjo Amadou
1b9cc8d92d
Merge pull request #516 from NBA2K1/main
Fix Exception
2025-07-14 10:49:21 +01:00
NBA2K1
d221e5fab0 dispose 2025-07-13 01:42:35 +02:00
NBA2K1
5b17bde1d5 LOL who thought of that? 2025-07-13 01:24:36 +02:00
NBA2K1
00462f3066 dispose! 2025-07-13 01:24:14 +02:00
NBA2K1
f3ef7791a6 Save lastPageRead before system kills app
If the app is going to background or is about to be killed, the lastPageRead value is going to be saved, so the progress is not lost if the user leaves the app and the system kills it.
2025-07-12 20:31:19 +02:00
NBA2K1
3313e6e53a Don't focus searchbar when migrating
The searchbar already has input.
2025-07-12 20:26:31 +02:00
NBA2K1
d7dbce7a9a DRY 2025-07-12 20:24:42 +02:00
NBA2K1
aef659000d Desktop right-click for long press on chapter
just like with the LibraryGridView
2025-07-12 20:24:34 +02:00
NBA2K1
775e51e617 AnimePlayer: click on anywhere to play/pause
Just like on YouTube.
2025-07-12 20:22:09 +02:00
NBA2K1
7a5c25b94f dispose 2025-07-12 20:10:04 +02:00
NBA2K1
1da0cdcdbf Fix Exception
type 'int' is not a subtype of type 'double?'
2025-07-12 04:28:33 +02:00
Moustapha Kodjo Amadou
e9bbd2e1e3 fix #505 2025-07-09 13:32:38 +01:00
Moustapha Kodjo Amadou
8eaeca2123 Add subtitle support for video downloads and playback 2025-07-09 13:11:04 +01:00
Moustapha Kodjo Amadou
b2fa09c214
Merge pull request #510 from NBA2K1/pagePreload-Slider
Changed the "Page preload amount" Setting to be a Slider
2025-07-08 14:01:43 +01:00
Moustapha Kodjo Amadou
4e99bb9e58
Merge pull request #513 from NBA2K1/localArchive-tracker-button
Add tracker button to localArchive
2025-07-08 10:08:12 +01:00
Moustapha Kodjo Amadou
b14e198c54
Merge pull request #512 from NBA2K1/Fix-manga-delete
Fix delete "Downloaded episodes/chapters"
2025-07-08 10:07:36 +01:00
Moustapha Kodjo Amadou
b3f626fb32
Merge pull request #511 from NBA2K1/tracker-menu-theme-fix
Fix menu colors on theme change
2025-07-08 10:03:48 +01:00
NBA2K1
6788b73658 Delete whole imported manga
Delete whole imported manga when all chapters have been deleted.
+ Added a warning message and translations
2025-07-08 04:19:40 +02:00
NBA2K1
1e3e0ed179 Add tracker button to localArchive 2025-07-07 04:16:32 +02:00
NBA2K1
6a23409560 Fix delete "Downloaded episodes/chapters"
The delete function was only for imported mangas.
Now it checks if it was imported or downloaded and deletes accordingly.
2025-07-07 04:14:58 +02:00
NBA2K1
f4c040ccc4 Fix menu colors on theme change 2025-07-06 22:12:28 +02:00
NBA2K1
c7300797dc Update reader_screen.dart 2025-07-06 21:40:34 +02:00
NBA2K1
31ead933ab Use read instead of watch 2025-07-06 21:07:21 +02:00
NBA2K1
9a307c6007 remove redundant ternary
The else if condition is:
`itemType == ItemType.novel && chapter.url != null`

So the variable `headers` can never be `ref.read(headersProvider(source: manga.source!, lang: manga.lang!))` or `videoHeader`
2025-07-06 20:44:42 +02:00
NBA2K1
4d8131c725 Add some error handling 2025-07-06 20:37:02 +02:00
NBA2K1
c55c988188 Use read instead of watch 2025-07-06 20:35:51 +02:00
NBA2K1
40cd5eb081 remove == true 2025-07-06 20:05:01 +02:00
NBA2K1
43068bdd82 bulk write instead of one-by-one
reduces IO-operations.
2025-07-06 19:55:42 +02:00
NBA2K1
ce888c162e reduce code duplication 2025-07-06 18:37:35 +02:00
Moustapha Kodjo Amadou
085be60d58
Merge pull request #508 from NBA2K1/Fix-labels
Fix labels on navigation bar [based on PR #506]
2025-07-06 17:30:26 +01:00
NBA2K1
8aea458033 remove redundant import 2025-07-06 16:48:45 +02:00
NBA2K1
24e7bce508 clear cache when changing language
To update the navigation bar labels
2025-07-06 16:48:34 +02:00
NBA2K1
57143bca2b bulk write instead of one-by-one
reduces IO-operations.
2025-07-06 14:28:52 +02:00
NBA2K1
07941ea370 Fix "Read" and "Unread" button 2025-07-06 14:02:23 +02:00
Schnitzel5
6baecaa59b bug fixes 2025-07-06 03:31:27 +02:00
Schnitzel5
d39a3129cd Merge branch 'temp/sync-server' into rework/sync-server 2025-07-05 03:00:01 +02:00
Schnitzel5
e1cecd8e37 reworked sync 2025-07-05 02:58:42 +02:00
Schnitzel5
bd17e1e9eb adjusted sync features 2025-07-04 02:24:01 +02:00
Schnitzel5
c680427c0c added option to disable merged library navigation 2025-07-03 02:44:15 +02:00
NBA2K1
4a986d4c15 Remove check
- Remove the enableAniSkipStateProvider check, because it is already being checked by the caller (anime_player_view.dart, initState() line 353).

- Change ref.watch() to ref.read() as the user cannot change its value without exiting the video player. ref.watch() is meant to be used within reactive contexts.
2025-06-30 18:01:58 +02:00
NBA2K1
b1560d3eea
Merge branch 'kodjodevf:main' into main 2025-06-30 17:05:11 +02:00
Schnitzel5
76297c3b45 + 2025-06-29 00:50:10 +02:00
Schnitzel5
b2d29e32d6 added repo name to extension list 2025-06-29 00:24:06 +02:00
Schnitzel5
e33247e445 adjusted navigations 2025-06-28 23:17:57 +02:00
Schnitzel5
dc5cc20d0c added new navigation for library
fixed router hidden routes
2025-06-28 23:05:38 +02:00
Schnitzel5
2c6e9439e9 adjusted mobile layout for tracker library
+ fixed MAL search bug
2025-06-28 22:11:28 +02:00
Schnitzel5
79da1d2678 fixed init location 2025-06-28 00:48:09 +02:00
NBA2K1
a97f68d94d comment for more clarity 2025-06-27 21:05:11 +02:00
NBA2K1
fbdbbe9766 Update _setSkipPhase()
Setting a `ValueNotifier` to the same value still triggers its listeners.
Only update `_skipPhase.value`, when it really changs.
2025-06-27 19:22:31 +02:00
Schnitzel5
1bfb6fd0c1 adjusted tracker library sections 2025-06-27 15:57:42 +02:00
NBA2K1
d21dbbbc6b Fix Fullscreen mode 2025-06-27 08:35:01 +02:00
NBA2K1
e9dfb516ab unify position stream listeners
Collapse three `.position.listen` callbacks into a single
subscription to reduce per‑tick overhead and centralize all
position‑driven updates (current position, subtitle/audio init,
and skip‑phase logic) in one handler.
2025-06-27 01:52:50 +02:00
NBA2K1
43c90a7777 collapse the many nested builders
flatten builders into a single ValueListenableBuilder.
2025-06-27 00:20:01 +02:00
NBA2K1
c9fdccfacb build widget only when "Enable AniSkip" is true
The variables `enableAniSkip`, `enableAutoSkip`,
`aniSkipTimeoutLength` and `skipIntroLength` are global settings.
The user cannot change them inside the video player.
So there's no need to watch them inside the _currentPosition listener.
2025-06-26 20:39:35 +02:00
NBA2K1
89af73e9b2 remove redundant if-condition 2025-06-26 19:34:41 +02:00
NBA2K1
cdc21fd4ad Only initAniSkip if "Enable AniSkip" is true 2025-06-26 19:27:20 +02:00
NBA2K1
98c40ff39f set fullscreen only when the video starts playing 2025-06-26 19:24:57 +02:00
NBA2K1
eab52c6677 remove redundant import 2025-06-26 19:23:55 +02:00
Schnitzel5
5fce50f0e0 adjusted tracker library
fixed UTF8 bug
fixed infinite loading
added search bar to migration screen
migration screen now considers the pinned sources option
library now shows if the items are locally tracked or not
2025-06-26 00:38:18 +02:00
Moustapha Kodjo Amadou
6bf9960dd5
Merge branch 'main' into enhance/two-way-tracker 2025-06-25 11:37:05 +01:00
Schnitzel5
07d6cf0868 added refresh to tracker library 2025-06-25 00:04:41 +02:00
Schnitzel5
b01ae9d909 added Hive for caching 2025-06-24 22:59:58 +02:00
NBA2K1
9ccd2e1924 Partially revert changes in 181c3b5 2025-06-24 22:55:25 +02:00
NBA2K1
58b5050fff Make buttons white for consistency in white mode
The share-button on the top right and the show-episode-list-button next to it.
2025-06-24 22:50:59 +02:00
Moustapha Kodjo Amadou
181c3b5ccc
Merge branch 'main' into fix/increase-protobuf-limit 2025-06-24 11:59:40 +01:00
Schnitzel5
92c167d585 merged trackers together and added search 2025-06-22 23:17:55 +02:00
Schnitzel5
bc4d7aadb0 increased protobuf limit to 250 MB 2025-06-22 00:06:31 +02:00
NBA2K1
a5168a6a2b Release file lock by closing InputStream
Fix issue where backup file remained locked by closing InputStream after use
2025-06-20 21:50:47 +02:00
Schnitzel5
6088ac22f4 adding search to 2-way track screen 2025-06-20 00:29:02 +02:00
Moustapha Kodjo Amadou
e635e495b8
Merge pull request #491 from NBA2K1/main
Refactor: Consolidate _openCategory() Methods into Unified Dialog
2025-06-19 18:05:30 +01:00
Moustapha Kodjo Amadou
2e1cb0f8bc
Merge pull request #490 from Schnitzel5/feature/two-way-tracker
added two-way-tracking
2025-06-19 18:04:13 +01:00
NBA2K1
c58d0e0c77 Combine all three _openCategory() methods
As they all do the same.
2025-06-16 20:42:39 +02:00
NBA2K1
aa18b1ad3a Remove redundant operation
Not needed for this dialog, as the items here are already in the library (favorite = true) and dateAdded don't have to be updated.
2025-06-16 01:50:26 +02:00
Schnitzel5
06ca441644 added Kitsu and Anilist 2025-06-15 21:08:34 +02:00
NBA2K1
06ac796032 Fix potential bug + Remove redundant code
Before fixing the Category Removal Bug (commit 58537281), the "Default" Category would be empty when removing a populated category.

So when there is only one Category left, and the user hides that one Category, `tabCount` would be <= 0, leading to an Exception:

```
_AssertionError ('package:flutter/src/material/tab_controller.dart': Failed assertion: line 116 pos 15: 'initialIndex >= 0 && (length == 0 || initialIndex < length)': is not true.)
```

Now there is a check (`tabCount <= 0`), that IF tabCount is ever <= 0, it would show `_bodyWithoutCategories`.
2025-06-15 18:40:41 +02:00
NBA2K1
585372816d Fix Category Removal Bug
When removing a category, the items inside the category were not being updated, removing the link to the removed category.
That lead to the items disappearance from the library.

Now the reference from the item to the deleted category is deleted. Those items show up in the "Default" category.
2025-06-15 17:20:51 +02:00
NBA2K1
eaed214354 Fix "Set categories" in manga_detail_view 2025-06-15 16:21:27 +02:00
Schnitzel5
7c8faf8bed added info card 2025-06-15 01:30:51 +02:00
Schnitzel5
24eb09b701 adding Kitsu 2025-06-12 00:18:14 +02:00
Schnitzel5
5dff4a1aa3 added two-way tracking 2025-06-09 02:26:31 +02:00
Schnitzel5
f7a124d72c added two-way-tracking 2025-06-09 02:22:33 +02:00
Schnitzel5
e994d3230a + 2025-06-08 19:11:31 +02:00
Schnitzel5
4c3b6bc430 + 2025-06-08 03:02:18 +02:00
Moustapha Kodjo Amadou
183e88ebd0
Merge pull request #484 from NBA2K1/main
Fixes, Refactors, and Async Improvements
2025-06-07 13:37:57 +01:00
NBA2K1
fecda49373 Merge Provider => Remove Code Duplication
Merge `fetchMangaSourcesListProvider`, `fetchAnimeSourcesListProvider` and `fetchNovelSourcesListProvider` into a single Provider, `FetchItemSourcesListProvider`, reducing code duplication.
2025-06-07 03:24:39 +02:00
NBA2K1
138e2887e0 Fix Extension Installation
There was a bug when uninstalling an extension and trying to reinstall it, it didn't install.
You had to restart the app to reinstall the same extension again.
Now the provider is invalidated when reinstalling an uninstalled extension,
so the fetch logic is triggered correctly. Prevents stale cache issues from
Riverpod's keepAlive behavior.
2025-06-07 02:37:51 +02:00
Schnitzel5
a0ebe46fa0 added option to change hwdec 2025-06-07 01:46:30 +02:00
Schnitzel5
51352efd24 + 2025-06-06 00:22:31 +02:00
Schnitzel5
1b4177b59b + 2025-06-05 00:19:47 +02:00
Moustapha Kodjo Amadou
0f430f80d9 Fix indexing and path for downloaded chapter images and update padding logic 2025-06-04 17:28:31 +01:00
Schnitzel5
f152339162 + 2025-06-03 23:49:14 +02:00
NBA2K1
f6945cf189 Fix Exception _AssertionError
When customizing navigation, toggling one item off.

```

Exception has occurred.
_AssertionError ('package:flutter/src/material/navigation_rail.dart': Failed assertion: line 112 pos 15: 'selectedIndex == null || (0 <= selectedIndex && selectedIndex < destinations.length)': is not true.)

```
2025-06-02 17:49:44 +02:00
NBA2K1
7eec89b1b9 Add Switch to automatically check for updates
Instead of checking for updates by default, the user now has the choice to disable automatic app update checks.
2025-06-02 17:49:16 +02:00
NBA2K1
88899f6e00
Merge branch 'kodjodevf:main' into main 2025-06-02 17:48:16 +02:00
NBA2K1
2482f6ec2e Change Button Behavior of "Edit Categories"
The Button "Edit Categories" (now called "set Categories"), now opens the category select menu instead of the category edit menu.

This makes more sense in the library item detail view. For example you have the categories "Watching" and "Finished". You just finished an anime and you want to change its category directly in the detail view. Now you can.

Before you had to exit the detail view, go in to the library view, long press the item, tap the category button and then edit it there.
2025-06-02 13:44:04 +02:00
Moustapha Kodjo Amadou
538f87630c + 2025-06-02 12:41:06 +01:00
Moustapha Kodjo Amadou
664a1f6dcf + 2025-06-02 12:30:47 +01:00
Moustapha Kodjo Amadou
fdb47334db fix #464 2025-06-02 12:17:54 +01:00
Moustapha Kodjo Amadou
4d27a2c0e3 fix #468 2025-06-02 11:41:12 +01:00