Skip to content

Commit b4acb0e

Browse files
committed
fix
1 parent 556c3ba commit b4acb0e

File tree

6 files changed

+71
-48
lines changed

6 files changed

+71
-48
lines changed

lib/Screens/Info/MediaScreen.dart

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import 'package:blur/blur.dart';
22
import 'package:dantotsu/Functions/Extensions.dart';
33
import 'package:dantotsu/Screens/Info/Tabs/Info/InfoPage.dart';
44
import 'package:flutter/material.dart';
5-
import 'package:get/get_state_manager/src/rx_flutter/rx_obx_widget.dart';
5+
import 'package:get/get.dart';
66
import 'package:kenburns_nullsafety/kenburns_nullsafety.dart';
77
import 'package:provider/provider.dart';
88

@@ -23,13 +23,15 @@ class MediaInfoPage extends StatefulWidget {
2323

2424
class MediaInfoPageState extends State<MediaInfoPage> {
2525
int _selectedIndex = 1;
26-
final _viewModel = MediaPageViewModel;
26+
final _viewModel = Get.put(MediaPageViewModel());
2727
late media mediaData;
2828

2929
@override
3030
void initState() {
3131
super.initState();
32-
_viewModel.reset();
32+
WidgetsBinding.instance.addPostFrameCallback((_) {
33+
_viewModel.reset();
34+
});
3335
load();
3436
}
3537

@@ -49,7 +51,7 @@ class MediaInfoPageState extends State<MediaInfoPage> {
4951
delegate: SliverChildListDelegate(
5052
[
5153
Padding(
52-
padding: const EdgeInsets.symmetric(horizontal: 32),
54+
padding: const EdgeInsets.symmetric(),
5355
child: Obx(() {
5456
return _viewModel.dataLoaded.value ? Column(
5557
mainAxisAlignment: MainAxisAlignment.start,

lib/Screens/Info/MediaScreenViewModel.dart

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,7 @@ import 'package:get/get.dart';
55
import '../../DataClass/Media.dart';
66
import '../../api/Anilist/Anilist.dart';
77

8-
final MediaPageViewModel = Get.put(_MediaPageViewModel());
9-
10-
class _MediaPageViewModel extends GetxController {
8+
class MediaPageViewModel extends GetxController {
119
var dataLoaded = false.obs;
1210
Future<media> getMediaDetails(media media) async {
1311
var data = await Anilist.query.mediaDetails(media);

lib/Screens/Info/Tabs/Info/InfoPage.dart

Lines changed: 33 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -26,22 +26,39 @@ class InfoPageState extends State<InfoPage> {
2626
borderRadius: BorderRadius.circular(0),
2727
),
2828
child: SingleChildScrollView(
29-
child: Container(
30-
padding: const EdgeInsets.symmetric(vertical: 16.0),
31-
color: theme.surface,
32-
child: Column(
33-
mainAxisAlignment: MainAxisAlignment.start,
34-
crossAxisAlignment: CrossAxisAlignment.start,
35-
children: [
36-
..._buildReleasingIn(),
37-
..._buildInfoSections(),
38-
..._buildNameSections(),
39-
GenreWidget(context, widget.mediaData.genres),
40-
..._buildTags(),
41-
MediaSection(context:context ,type: 0, title: "Relations", mediaList:widget.mediaData.relations),
42-
MediaSection(context:context ,type: 0, title: "Recommended", mediaList:widget.mediaData.recommendations),
43-
],
44-
),
29+
child: Column(
30+
mainAxisAlignment: MainAxisAlignment.start,
31+
crossAxisAlignment: CrossAxisAlignment.start,
32+
children: [
33+
Container(
34+
padding: const EdgeInsets.symmetric(vertical: 16.0, horizontal: 32.0),
35+
color: theme.surface,
36+
child: Column(
37+
mainAxisAlignment: MainAxisAlignment.start,
38+
crossAxisAlignment: CrossAxisAlignment.start,
39+
children: [
40+
..._buildReleasingIn(),
41+
..._buildInfoSections(),
42+
..._buildNameSections(),
43+
GenreWidget(context, widget.mediaData.genres),
44+
..._buildTags(),
45+
],
46+
),
47+
),
48+
49+
MediaSection(
50+
context: context,
51+
type: 0,
52+
title: "Relations",
53+
mediaList: widget.mediaData.relations,
54+
),
55+
MediaSection(
56+
context: context,
57+
type: 0,
58+
title: "Recommended",
59+
mediaList: widget.mediaData.recommendations,
60+
),
61+
],
4562
),
4663
),
4764
);

lib/Screens/Info/Tabs/Watch/WatchPage.dart

Lines changed: 28 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import 'package:dantotsu/Functions/Function.dart';
22
import 'package:dantotsu/Screens/Info/Tabs/Watch/Widgets/SourceSelector.dart';
33
import 'package:flutter/material.dart';
44
import 'package:flutter_riverpod/flutter_riverpod.dart';
5-
import 'package:get/get_state_manager/get_state_manager.dart';
5+
import 'package:get/get.dart';
66

77
import '../../../../DataClass/Media.dart';
88
import '../../../../Preferences/PrefManager.dart';
@@ -23,7 +23,7 @@ class WatchPage extends ConsumerStatefulWidget {
2323

2424
class _WatchPageState extends ConsumerState<WatchPage> {
2525
Source? source;
26-
final _viewModel = WatchPageViewModel;
26+
final _viewModel = Get.put(WatchPageViewModel());
2727

2828
@override
2929
void initState() {
@@ -43,25 +43,30 @@ class _WatchPageState extends ConsumerState<WatchPage> {
4343
@override
4444
Widget build(BuildContext context) {
4545
var theme = Theme.of(context).colorScheme;
46-
return Column(
47-
mainAxisSize: MainAxisSize.min,
48-
crossAxisAlignment: CrossAxisAlignment.start,
49-
children: [
50-
const SizedBox(height: 24),
51-
..._buildReleasingIn(),
52-
..._buildYouTubeButton(),
53-
Obx(() => Text(_viewModel.status.value ?? '',
54-
style: TextStyle(
55-
color: theme.onSurface, fontWeight: FontWeight.bold))),
56-
const SizedBox(height: 12),
57-
SourceSelector(
58-
currentSource: source,
59-
onSourceChange: onSourceChange,
60-
mediaData: widget.mediaData,
61-
),
62-
const SizedBox(height: 16),
63-
_buildWrongTitle(),
64-
/*Flexible(
46+
return Padding(
47+
padding: const EdgeInsets.symmetric(vertical: 16.0, horizontal: 32.0),
48+
child: Column(
49+
mainAxisSize: MainAxisSize.min,
50+
crossAxisAlignment: CrossAxisAlignment.start,
51+
children: [
52+
..._buildReleasingIn(),
53+
..._buildYouTubeButton(),
54+
Obx(
55+
() => Text(
56+
_viewModel.status.value ?? '',
57+
style: TextStyle(
58+
color: theme.onSurface, fontWeight: FontWeight.bold),
59+
),
60+
),
61+
const SizedBox(height: 12),
62+
SourceSelector(
63+
currentSource: source,
64+
onSourceChange: onSourceChange,
65+
mediaData: widget.mediaData,
66+
),
67+
const SizedBox(height: 16),
68+
_buildWrongTitle(),
69+
/*Flexible(
6570
child: Obx(() {
6671
var selectedMedia = _viewModel.selectedMedia.value;
6772
return selectedMedia?.chapters != null
@@ -81,7 +86,8 @@ class _WatchPageState extends ConsumerState<WatchPage> {
8186
CircularProgressIndicator()); // Show a message if no chapters
8287
}),
8388
),*/
84-
],
89+
],
90+
),
8591
);
8692
}
8793

lib/Screens/Info/Tabs/Watch/WatchPageViewModel.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,11 @@ import '../../../../api/Mangayomi/Eval/dart/model/m_manga.dart';
1212
import '../../../../api/Mangayomi/Model/Source.dart';
1313
import '../../../../api/Mangayomi/Search/search.dart';
1414

15-
final WatchPageViewModel = Get.put(_WatchPageViewModel());
1615

17-
class _WatchPageViewModel extends GetxController {
16+
class WatchPageViewModel extends GetxController {
1817
var selectedMedia = Rxn<MManga?>(null);
1918
var status = Rxn<String>(null);
19+
2020
reset() {
2121
selectedMedia.value = null;
2222
status.value = null;

lib/Screens/Info/Tabs/Watch/Widgets/SourceSelector.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ class _SourceSelectorState extends ConsumerState<SourceSelector> {
9595
size: 32,
9696
color: theme.onSurface,
9797
),
98-
)
98+
),
9999
],
100100
),
101101
],

0 commit comments

Comments
 (0)