From b33b098f5ee18171648efac257a8d6d2ee85b285 Mon Sep 17 00:00:00 2001 From: lxm <1274844347@qq.com> Date: Tue, 6 Jan 2026 11:48:48 +0800 Subject: [PATCH] =?UTF-8?q?feat(agent=5Fview):=20=E4=BB=85=E5=9C=A8?= =?UTF-8?q?=E5=AE=98=E6=96=B9=E6=B8=A0=E9=81=93=E6=98=BE=E7=A4=BA=E5=B7=A5?= =?UTF-8?q?=E5=85=B7=E5=BC=80=E5=85=B3=E9=80=89=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 添加条件判断,使工具开关选项仅在官方频道显示。移除未使用的导入以优化代码结构。 --- lib/modules/agent/views/agent_view.dart | 73 +++++++++++++------------ 1 file changed, 38 insertions(+), 35 deletions(-) diff --git a/lib/modules/agent/views/agent_view.dart b/lib/modules/agent/views/agent_view.dart index 03b237d94..6472a2805 100644 --- a/lib/modules/agent/views/agent_view.dart +++ b/lib/modules/agent/views/agent_view.dart @@ -4,16 +4,15 @@ import 'dart:math'; import 'package:flutter/material.dart'; import 'package:flutter_intro/flutter_intro.dart'; import 'package:get/get.dart'; -import 'package:haptic_feedback/haptic_feedback.dart'; import '../../../core/widgets/intro_overlay_builder.dart'; -import '../../../data/models/user_Info.dart'; +import '../../../data/models/channel_app_model.dart'; +import '../../../data/services/version_update_service.dart'; import '../controllers/agent_controller.dart'; import '../controllers/message_action_controller.dart'; import 'message_bubble.dart'; import '../widgets/full_screen_editor.dart'; import '../widgets/sound_bar_widget.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; -import 'package:intl/intl.dart'; class AgentView extends StatefulWidget { const AgentView({Key? key}) : super(key: key); @@ -64,6 +63,8 @@ class _AgentViewState extends State with WidgetsBindingObserver { final primaryColor = theme.primaryColor; final backgroundColor = theme.scaffoldBackgroundColor; final isDarkMode = Theme.of(context).brightness == Brightness.dark; + final isOfficialChannel = Get.isRegistered() && + VersionUpdateService.to.cachedChannel == UserChannel.OFFICIAL; return Scaffold( appBar: AppBar( @@ -199,38 +200,40 @@ class _AgentViewState extends State with WidgetsBindingObserver { ), color: isDarkMode ? Colors.grey[800] : Colors.white, itemBuilder: (context) => [ - // 显示工具开关选项 - PopupMenuItem( - child: Obx(() => Row( - children: [ - Icon( - controller.isShowToolInterruptEnabled.value - ? Icons.build_circle - : Icons.build_circle_outlined, - color: controller.isShowToolInterruptEnabled.value - ? primaryColor - : (isDarkMode ? Colors.grey[400] : Colors.grey), - size: 20.sp, - ), - SizedBox(width: 8.w), - Text( - //'ttsInterruptToggle'.tr, - "显示工具", - style: TextStyle(fontSize: 14.sp), - ), - const Spacer(), - Switch( - value: controller.isShowToolInterruptEnabled.value, - onChanged: (value) => - controller.toggleShowAIToolInterrupt(), - activeColor: primaryColor, - materialTapTargetSize: - MaterialTapTargetSize.shrinkWrap, - ), - ], - )), - onTap: () => controller.toggleTtsInterrupt(), - ), + if (isOfficialChannel) + PopupMenuItem( + child: Obx(() => Row( + children: [ + Icon( + controller.isShowToolInterruptEnabled.value + ? Icons.build_circle + : Icons.build_circle_outlined, + color: controller.isShowToolInterruptEnabled.value + ? primaryColor + : (isDarkMode + ? Colors.grey[400] + : Colors.grey), + size: 20.sp, + ), + SizedBox(width: 8.w), + Text( + "显示工具", + style: TextStyle(fontSize: 14.sp), + ), + const Spacer(), + Switch( + value: + controller.isShowToolInterruptEnabled.value, + onChanged: (value) => + controller.toggleShowAIToolInterrupt(), + activeColor: primaryColor, + materialTapTargetSize: + MaterialTapTargetSize.shrinkWrap, + ), + ], + )), + onTap: () => controller.toggleTtsInterrupt(), + ), // 播报打断开关选项 PopupMenuItem(