From ff4a3836c72f08805aac52e5f40f23858ccc2f30 Mon Sep 17 00:00:00 2001 From: Songzex <2402265378@qq.com> Date: Mon, 8 Jun 2026 13:35:56 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=BA=86tcp=E5=AE=9E?= =?UTF-8?q?=E6=97=B6=E6=9B=B4=E6=96=B0=E5=AF=B9UI=E7=BA=BF=E7=A8=8B?= =?UTF-8?q?=E7=9A=84=E5=8E=8B=E5=8A=9B=E5=92=8C=E5=AF=B9=E7=94=A8=E5=BC=B9?= =?UTF-8?q?=E7=AA=97=E7=9A=84=E9=87=8D=E5=A4=8D=E5=BC=B9=E7=AA=97=E7=9A=84?= =?UTF-8?q?=E5=BD=B1=E5=93=8D=E3=80=82=20=E6=9B=B4=E6=8D=A2=E4=BA=86?= =?UTF-8?q?=E8=B7=AF=E5=BE=84=E8=A7=84=E5=88=92=E7=9A=84=E7=9A=84=E7=BB=8F?= =?UTF-8?q?=E7=BA=AC=E5=BA=A6=E7=9A=84=E5=AD=97=E6=AE=B5=E5=90=8D=E5=92=8C?= =?UTF-8?q?=E5=8F=96=E6=93=8D=E4=BD=9C=E7=9A=84=E5=90=8D=E5=AD=97=E6=9B=B4?= =?UTF-8?q?=E6=8D=A2=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../home/presentation/pages/home_page.dart | 77 ++++--------------- 1 file changed, 15 insertions(+), 62 deletions(-) diff --git a/lib/features/home/presentation/pages/home_page.dart b/lib/features/home/presentation/pages/home_page.dart index 5e2ea74d..b0ec4a16 100644 --- a/lib/features/home/presentation/pages/home_page.dart +++ b/lib/features/home/presentation/pages/home_page.dart @@ -117,73 +117,26 @@ class _HomePageState extends State { tenantName: '', ); - return BlocBuilder( - buildWhen: (p, c) { - final shouldRebuild = p.runtimeType != c.runtimeType; - debugPrint('🔍 [HomePage-BlocBuilder] buildWhen 检查: previous=${p.runtimeType}, current=${c.runtimeType}, shouldRebuild=$shouldRebuild'); - return shouldRebuild; - }, - builder: (context, permissionState) { - debugPrint('🔍 [HomePage-BlocBuilder] builder 被调用,当前状态: ${permissionState.runtimeType}'); - - return Stack( - children: [ - Scaffold( - backgroundColor: const Color(0xFFF7F7F7), - body: CustomScrollView( - physics: const BouncingScrollPhysics(), - slivers: [ - SliverToBoxAdapter(child: ImmersionHeader(device: currentDevice ?? defaultDevice)), - const SliverToBoxAdapter(child: QuickActionsGrid()), - SliverToBoxAdapter(child: WorkParamsCard()), - const SliverToBoxAdapter(child: SizedBox(height: 120)), - ], - ), - ), - if (permissionState is PermissionRequestDialogVisible) - _buildPermissionDialog(context, permissionState), - ], - ); - }, - ); - } - - Widget _buildPermissionDialog(BuildContext context, PermissionRequestDialogVisible state) { - debugPrint('🔍 [HomePage] 🚨 弹窗正在显示!platform=${state.platform}'); - - final deviceId = context.read().state.selectedDevice?.deviceName ?? ""; - final permissionBloc = context.read(); - - return Container( - color: Colors.black54, - alignment: Alignment.center, - child: AlertDialog( - title: Text(AppLocalizations.of(context).translate('remote_control.permission_request_title')), - content: Text(AppLocalizations.of(context).translate('remote_control.permission_request_content')), - actions: [ - TextButton( - onPressed: () { - permissionBloc.add(PermissionDialogDismissed( - agree: false, - deviceId: deviceId, - )); - }, - child: Text(AppLocalizations.of(context).translate('remote_control.refuse')), - ), - TextButton( - onPressed: () { - permissionBloc.add(PermissionDialogDismissed( - agree: true, - deviceId: deviceId, - )); - }, - child: Text(AppLocalizations.of(context).translate('remote_control.agree')), - ), + // 🔥 移除 PermissionRequestBloc 监听,统一由 RemoteControlCubit 处理权限弹窗 + return Scaffold( + backgroundColor: const Color(0xFFF7F7F7), + body: CustomScrollView( + physics: const BouncingScrollPhysics(), + slivers: [ + SliverToBoxAdapter(child: ImmersionHeader(device: currentDevice ?? defaultDevice)), + const SliverToBoxAdapter(child: QuickActionsGrid()), + SliverToBoxAdapter(child: WorkParamsCard()), + const SliverToBoxAdapter(child: SizedBox(height: 120)), ], ), ); } + // 🔥 移除首页的权限弹窗方法,统一由 RemoteControlCubit 处理 + // Widget _buildPermissionDialog(BuildContext context, PermissionRequestDialogVisible state) { + // ... + // } + @override void dispose() { super.dispose();