mirror of
https://github.com/kodjodevf/mangayomi.git
synced 2026-04-21 03:32:06 +00:00
dispose
This commit is contained in:
parent
47c9b79ce9
commit
7a5c25b94f
13 changed files with 99 additions and 2 deletions
|
|
@ -402,10 +402,19 @@ class _AnimeStreamPageState extends riv.ConsumerState<AnimeStreamPage>
|
|||
_currentPositionSub.cancel();
|
||||
_currentTotalDurationSub.cancel();
|
||||
_completed.cancel();
|
||||
_video.dispose();
|
||||
_playbackSpeed.dispose();
|
||||
_isDoubleSpeed.dispose();
|
||||
_currentTotalDuration.dispose();
|
||||
_showFitLabel.dispose();
|
||||
_isCompleted.dispose();
|
||||
_tempPosition.dispose();
|
||||
_fit.dispose();
|
||||
if (!_isDesktop) {
|
||||
_setLandscapeMode(false);
|
||||
}
|
||||
_skipPhase.dispose();
|
||||
_currentPosition.dispose();
|
||||
super.dispose();
|
||||
}
|
||||
|
||||
|
|
@ -490,7 +499,12 @@ class _AnimeStreamPageState extends riv.ConsumerState<AnimeStreamPage>
|
|||
selected,
|
||||
),
|
||||
onTap: () async {
|
||||
if (_video.value?.videoTrack?.id == quality.videoTrack?.id) {
|
||||
Navigator.pop(context);
|
||||
return;
|
||||
}
|
||||
_video.value = quality;
|
||||
_player.stop();
|
||||
if (quality.isLocal) {
|
||||
if (widget.isLocal) {
|
||||
_player.setVideoTrack(quality.videoTrack!);
|
||||
|
|
|
|||
|
|
@ -52,6 +52,12 @@ class _BrowseScreenState extends ConsumerState<BrowseScreen>
|
|||
await StorageProvider().requestPermission();
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
_textEditingController.dispose();
|
||||
super.dispose();
|
||||
}
|
||||
|
||||
final _textEditingController = TextEditingController();
|
||||
bool _isSearch = false;
|
||||
@override
|
||||
|
|
|
|||
|
|
@ -298,6 +298,13 @@ class EditTextDialogWidget extends StatefulWidget {
|
|||
|
||||
class _EditTextDialogWidgetState extends State<EditTextDialogWidget> {
|
||||
late final _controller = TextEditingController(text: widget.text);
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
_controller.dispose();
|
||||
super.dispose();
|
||||
}
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return AlertDialog(
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ class _GlobalSearchScreenState extends ConsumerState<GlobalSearchScreen> {
|
|||
String query = "";
|
||||
final _textEditingController = TextEditingController();
|
||||
late final List<Source> sourceList =
|
||||
ref.watch(onlyIncludePinnedSourceStateProvider)
|
||||
ref.read(onlyIncludePinnedSourceStateProvider)
|
||||
? isar.sources
|
||||
.filter()
|
||||
.isPinnedEqualTo(true)
|
||||
|
|
@ -97,6 +97,12 @@ class _GlobalSearchScreenState extends ConsumerState<GlobalSearchScreen> {
|
|||
: Container(),
|
||||
);
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
_textEditingController.dispose();
|
||||
super.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
class SourceSearchScreen extends StatefulWidget {
|
||||
|
|
|
|||
|
|
@ -51,6 +51,12 @@ class _HistoryScreenState extends ConsumerState<HistoryScreen>
|
|||
_tabBarController.addListener(tabListener);
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
_textEditingController.dispose();
|
||||
super.dispose();
|
||||
}
|
||||
|
||||
final _textEditingController = TextEditingController();
|
||||
bool _isSearch = false;
|
||||
List<History> entriesData = [];
|
||||
|
|
|
|||
|
|
@ -71,6 +71,13 @@ class _LibraryScreenState extends ConsumerState<LibraryScreen>
|
|||
}
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
_textEditingController.dispose();
|
||||
tabBarController?.dispose();
|
||||
super.dispose();
|
||||
}
|
||||
|
||||
Future<void> _updateLibrary(List<Manga> mangaList) async {
|
||||
bool isDark = ref.read(themeModeStateProvider);
|
||||
botToast(
|
||||
|
|
|
|||
|
|
@ -61,6 +61,12 @@ class _MigrationScreenScreenState extends ConsumerState<MigrationScreen> {
|
|||
.and()
|
||||
.itemTypeEqualTo(widget.manga.itemType)
|
||||
.findAllSync();
|
||||
@override
|
||||
void initState() {
|
||||
super.initState();
|
||||
final query = widget.manga.name ?? widget.manga.author ?? "";
|
||||
_textEditingController.text = query;
|
||||
}
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
|
|
@ -68,7 +74,6 @@ class _MigrationScreenScreenState extends ConsumerState<MigrationScreen> {
|
|||
final query = _query.isNotEmpty
|
||||
? _query
|
||||
: widget.manga.name ?? widget.manga.author ?? "";
|
||||
_textEditingController.text = query;
|
||||
|
||||
return Scaffold(
|
||||
appBar: AppBar(
|
||||
|
|
@ -126,6 +131,12 @@ class _MigrationScreenScreenState extends ConsumerState<MigrationScreen> {
|
|||
: Container(),
|
||||
);
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
_textEditingController.dispose();
|
||||
super.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
class MigrationSourceSearchScreen extends StatefulWidget {
|
||||
|
|
|
|||
|
|
@ -59,6 +59,13 @@ class _TrackerWidgetSearchState extends ConsumerState<TrackerWidgetSearch> {
|
|||
}
|
||||
|
||||
late final _controller = TextEditingController(text: query);
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
_controller.dispose();
|
||||
super.dispose();
|
||||
}
|
||||
|
||||
bool _isLoading = true;
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
|
|
|
|||
|
|
@ -114,6 +114,12 @@ class _MangaHomeScreenState extends ConsumerState<MangaHomeScreen> {
|
|||
return mangaRes;
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
_textEditingController.dispose();
|
||||
super.dispose();
|
||||
}
|
||||
|
||||
late final _textEditingController = TextEditingController(text: widget.query);
|
||||
late String _query = widget.query;
|
||||
late bool _isSearch = widget.isSearch;
|
||||
|
|
|
|||
|
|
@ -182,6 +182,12 @@ class SeachFormTextFieldWidget extends StatefulWidget {
|
|||
}
|
||||
|
||||
class _SeachFormTextFieldWidgetState extends State<SeachFormTextFieldWidget> {
|
||||
@override
|
||||
void dispose() {
|
||||
_controller.dispose();
|
||||
super.dispose();
|
||||
}
|
||||
|
||||
late final _controller = TextEditingController(text: widget.text);
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
|
|
|
|||
|
|
@ -144,7 +144,15 @@ class _MangaChapterPageGalleryState
|
|||
|
||||
_rebuildDetail.close();
|
||||
_doubleClickAnimationController.dispose();
|
||||
_scaleAnimationController.dispose();
|
||||
_failedToLoadImage.dispose();
|
||||
_autoScroll.value = false;
|
||||
_autoScroll.dispose();
|
||||
_autoScrollPage.dispose();
|
||||
_itemPositionsListener.itemPositions.removeListener(_readProgressListener);
|
||||
_photoViewController.dispose();
|
||||
_photoViewScaleStateController.dispose();
|
||||
_extendedController.dispose();
|
||||
clearGestureDetailsCache();
|
||||
if (isDesktop) {
|
||||
setFullScreen(value: false);
|
||||
|
|
|
|||
|
|
@ -48,6 +48,12 @@ class _TrackerLibraryScreenState extends ConsumerState<TrackerLibraryScreen> {
|
|||
List<TrackLibrarySection> _sections = [];
|
||||
List<TrackPreference> _preferences = [];
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
_textEditingController.dispose();
|
||||
super.dispose();
|
||||
}
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
final l10n = l10nLocalizations(context)!;
|
||||
|
|
|
|||
|
|
@ -112,6 +112,13 @@ class _UpdatesScreenState extends ConsumerState<UpdatesScreen>
|
|||
});
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
_textEditingController.dispose();
|
||||
_tabBarController.dispose();
|
||||
super.dispose();
|
||||
}
|
||||
|
||||
@override
|
||||
void initState() {
|
||||
super.initState();
|
||||
|
|
|
|||
Loading…
Reference in a new issue