Skip to content

Commit e81c2e4

Browse files
committed
fixed navigation issues closes #13
1 parent f574e9f commit e81c2e4

11 files changed

Lines changed: 50 additions & 43 deletions

File tree

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,28 @@
11
{
2-
"project_info": {
3-
"project_number": "430361853609",
4-
"project_id": "floaty-notif-test"
5-
},
6-
"client": [
7-
{
8-
"client_info": {
9-
"mobilesdk_app_id": "1:430361853609:android:d92021ba319938ea83b3b8",
10-
"android_client_info": {
11-
"package_name": "uk.bw86.floaty.dev"
12-
}
13-
},
14-
"oauth_client": [],
15-
"api_key": [
16-
{
17-
"current_key": "AIzaSyBIKRtWt3dwPSku43xTjMZ5I9arp7Hm7zs"
18-
}
19-
],
20-
"services": {
21-
"appinvite_service": {
22-
"other_platform_oauth_client": []
23-
}
2+
"project_info": {
3+
"project_number": "430361853609",
4+
"project_id": "floaty-notif-test"
5+
},
6+
"client": [
7+
{
8+
"client_info": {
9+
"mobilesdk_app_id": "1:430361853609:android:d92021ba319938ea83b3b8",
10+
"android_client_info": {
11+
"package_name": "uk.bw86.floaty.dev.debug"
12+
}
13+
},
14+
"oauth_client": [],
15+
"api_key": [
16+
{
17+
"current_key": "AIzaSyBIKRtWt3dwPSku43xTjMZ5I9arp7Hm7zs"
18+
}
19+
],
20+
"services": {
21+
"appinvite_service": {
22+
"other_platform_oauth_client": []
2423
}
2524
}
26-
],
27-
"configuration_version": "1"
28-
}
25+
}
26+
],
27+
"configuration_version": "1"
28+
}

android/app/src/main/AndroidManifest.xml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,8 @@
2323
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
2424
android:hardwareAccelerated="true"
2525
android:supportsPictureInPicture="true"
26-
android:windowSoftInputMode="adjustResize">
26+
android:windowSoftInputMode="adjustResize"
27+
android:enableOnBackInvokedCallback="true">
2728
<!-- Specifies an Android theme to apply to this Activity as soon as
2829
the Android process has started. This theme is visible to the user
2930
while the Flutter UI initializes. After that, this theme continues

lib/features/browse/components/creator_card.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ class CreatorCardState extends State<CreatorCard> {
3737
borderRadius: BorderRadius.circular(14),
3838
child: InkWell(
3939
borderRadius: BorderRadius.circular(14),
40-
onTap: () => context.go('/channel/${widget.creator.urlname}'),
40+
onTap: () => context.push('/channel/${widget.creator.urlname}'),
4141
child: Padding(
4242
padding: const EdgeInsets.all(16.0),
4343
child: Column(
@@ -102,7 +102,7 @@ class CreatorCardState extends State<CreatorCard> {
102102
onTap: () => widget.creator.featuredBlogPosts!.first
103103
.isAccessible ==
104104
true
105-
? context.go(
105+
? context.push(
106106
'/post/${widget.creator.featuredBlogPosts!.first.id}')
107107
: context
108108
.go('/channel/${widget.creator.urlname}'),

lib/features/channel/views/channel_screen.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ class ChannelScreenStateWrapperState
160160
channelScreenProvider.select((state) => state.selectedIndex),
161161
(previous, next) {
162162
if (next == 2 && context.mounted) {
163-
context.go('/live/${widget.channelName}');
163+
context.push('/live/${widget.channelName}');
164164
ref.read(channelScreenProvider.notifier).resetSelectedIndex();
165165
}
166166
},

lib/features/player/components/custom_player/mini_player_overlay.dart

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -192,17 +192,17 @@ class MiniPlayerOverlay extends ConsumerWidget {
192192
// Check if we're already on the target post/live page
193193
if (!currentPath.contains(postId)) {
194194
if (live) {
195-
context.go('/live/$postId');
195+
context.push('/live/$postId');
196196
} else if (mediaService.isOffline) {
197197
// For offline videos, pass the offline data as extras
198-
context.go('/post/$postId', extra: {
198+
context.push('/post/$postId', extra: {
199199
'isOffline': true,
200200
'offlinePost': mediaService.offlinePost,
201201
'offlineAttachmentId': mediaService.offlineAttachmentId,
202202
'offlineFilePath': mediaService.offlineFilePath,
203203
});
204204
} else {
205-
context.go('/post/$postId');
205+
context.push('/post/$postId');
206206
}
207207
}
208208
// If already on the correct page, state change is enough - the page will rebuild

lib/features/player/components/custom_player/pip_overlay.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,9 +96,9 @@ class _DesktopPipOverlayState extends ConsumerState<DesktopPipOverlay> {
9696
if (!currentPath.startsWith(targetPath.split('/').take(2).join('/')) ||
9797
!currentPath.contains(widget.postId)) {
9898
if (widget.live) {
99-
context.go('/live/${widget.postId}');
99+
context.push('/live/${widget.postId}');
100100
} else {
101-
context.go('/post/${widget.postId}');
101+
context.push('/post/${widget.postId}');
102102
}
103103
}
104104
}

lib/features/player/components/mini_player_widget.dart

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,17 +43,17 @@ class MiniPlayerWidget extends ConsumerWidget {
4343
onTap: () async {
4444
mediaService.changeState(MediaPlayerState.main);
4545
if (live) {
46-
context.go('/live/$postId');
46+
context.push('/live/$postId');
4747
} else if (mediaService.isOffline) {
4848
// For offline videos, pass the offline data as extras
49-
context.go('/post/$postId', extra: {
49+
context.push('/post/$postId', extra: {
5050
'isOffline': true,
5151
'offlinePost': mediaService.offlinePost,
5252
'offlineAttachmentId': mediaService.offlineAttachmentId,
5353
'offlineFilePath': mediaService.offlineFilePath,
5454
});
5555
} else {
56-
context.go('/post/$postId');
56+
context.push('/post/$postId');
5757
}
5858
},
5959
child: Container(

lib/features/post/components/blog_post_card.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ class BlogPostCard extends StatelessWidget {
5858
child: InkWell(
5959
borderRadius: BorderRadius.circular(8),
6060
onTap: () => blogPost.isAccessible == true
61-
? context.go('/post/${blogPost.id}')
61+
? context.push('/post/${blogPost.id}')
6262
: null,
6363
child: LayoutBuilder(
6464
builder: (context, constraints) {

lib/features/profile/views/profile_screen.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -361,7 +361,7 @@ class ProfileScreenStateWrapperState
361361
}
362362

363363
void onPostTap(String postId) {
364-
context.go('/post/$postId');
364+
context.push('/post/$postId');
365365
}
366366

367367
void onCreatorTap(String creatorUrl) {

lib/features/router/controllers/router.dart

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -266,7 +266,9 @@ final GoRouter routerController = GoRouter(
266266
}
267267
final data = await updatercontroller.getUpdate();
268268
final packageInfo = await PackageInfo.fromPlatform();
269-
if (data['deployment']['version'] != packageInfo.version) {
269+
if (data != null &&
270+
data['deployment'] != null &&
271+
data['deployment']['version'] != packageInfo.version) {
270272
if (data['deployment']['required'] == 1) {
271273
routerController.go('/update');
272274
}

0 commit comments

Comments
 (0)