diff --git a/assets b/assets index 64a6c1ccf..86131dfb5 160000 --- a/assets +++ b/assets @@ -1 +1 @@ -Subproject commit 64a6c1ccfbb75341c8bbd79db0f7a7826a36ee19 +Subproject commit 86131dfb5ef2fe4c8ac2b494233ada853f491f6e diff --git a/lib/service/deeplink_service.dart b/lib/service/deeplink_service.dart index 7e42ba925..6008b0d28 100644 --- a/lib/service/deeplink_service.dart +++ b/lib/service/deeplink_service.dart @@ -431,6 +431,7 @@ class DeeplinkServiceImpl extends DeeplinkService { /// scan with navigation home page does not go to this flow _navigationService.goBack(result: device); } else { + print('-------------'); await UIHelper.showFlexibleDialog( _navigationService.context, BlocProvider.value( @@ -438,6 +439,7 @@ class DeeplinkServiceImpl extends DeeplinkService { child: const StreamDeviceView(), ), isDismissible: true, + autoDismissAfter: 3 ); } } diff --git a/lib/util/ui_helper.dart b/lib/util/ui_helper.dart index 43ff7b3da..e1bbe382b 100644 --- a/lib/util/ui_helper.dart +++ b/lib/util/ui_helper.dart @@ -99,7 +99,7 @@ Future askForNotification() async { class UIHelper { static String currentDialogTitle = ''; static final metricClient = injector.get(); - static const String ignoreBackLayerPopUpRouteName = 'ignoreBackLayerPopUp'; + static const String ignoreBackLayerPopUpRouteName = 'popUp.ignoreBackLayer'; static Future showDialog( BuildContext context, @@ -817,7 +817,11 @@ class UIHelper { static void hideInfoDialog(BuildContext context) { currentDialogTitle = ''; try { - Navigator.popUntil(context, (route) => route.settings.name != null); + Navigator.popUntil( + context, + (route) => + route.settings.name != null && + !route.settings.name!.contains('popUp')); } catch (_) {} } diff --git a/lib/view/stream_device_view.dart b/lib/view/stream_device_view.dart index 697fc276c..18190b1c9 100644 --- a/lib/view/stream_device_view.dart +++ b/lib/view/stream_device_view.dart @@ -14,6 +14,7 @@ import 'package:feralfile_app_tv_proto/models/canvas_device.dart'; import 'package:flutter/gestures.dart'; import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; +import 'package:flutter_svg/flutter_svg.dart'; class StreamDeviceView extends StatefulWidget { final Function(CanvasDevice device)? onDeviceSelected; @@ -59,20 +60,39 @@ class _StreamDeviceViewState extends State { mainAxisSize: MainAxisSize.min, crossAxisAlignment: CrossAxisAlignment.start, children: [ - RichText( - text: TextSpan( - children: [ - TextSpan( - text: 'display'.tr(), - style: theme.textTheme.ppMori700White24, + Row( + children: [ + Expanded( + child: RichText( + text: TextSpan( + children: [ + TextSpan( + text: 'display'.tr(), + style: theme.textTheme.ppMori700White24, + ), + if (connectedDevice != null) + TextSpan( + text: ' ${connectedDevice.name}', + style: theme.textTheme.ppMori400White24, + ), + ], + ), ), - if (connectedDevice != null) - TextSpan( - text: ' ${connectedDevice.name}', - style: theme.textTheme.ppMori400White24, + ), + if (connectedDevice != null) + Padding( + padding: const EdgeInsets.only(left: 10), + child: GestureDetector( + child: SvgPicture.asset('assets/images/closeCycle.svg', + height: 24, + colorFilter: const ColorFilter.mode( + AppColor.white, + BlendMode.srcIn, + )), + onTap: () => Navigator.of(context).pop(), ), - ], - ), + ) + ], ), const SizedBox(height: 40), ListView.builder(