Commit graph

918 commits

Author SHA1 Message Date
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