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
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
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
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