From 211dccc9da861ae7d8979b3929a57496ad08112b Mon Sep 17 00:00:00 2001 From: anonymous Date: Wed, 10 Jul 2024 10:49:57 +0800 Subject: [PATCH] feat: 2.6.0+2 --- example/pubspec.lock | 2 +- images/svg/send_file.svg | 2 +- .../tui_chat_separate_view_model.dart | 11 ++--- .../view_models/tui_chat_global_model.dart | 2 +- lib/ui/widgets/az_list_view.dart | 43 +++++++++---------- pubspec.yaml | 2 +- 6 files changed, 31 insertions(+), 31 deletions(-) diff --git a/example/pubspec.lock b/example/pubspec.lock index bddb834..ab12488 100644 --- a/example/pubspec.lock +++ b/example/pubspec.lock @@ -1251,7 +1251,7 @@ packages: path: ".." relative: true source: path - version: "2.5.1+5" + version: "2.6.0+1" tencent_cloud_uikit_core: dependency: transitive description: diff --git a/images/svg/send_file.svg b/images/svg/send_file.svg index 3df3b42..1fd6a48 100644 --- a/images/svg/send_file.svg +++ b/images/svg/send_file.svg @@ -1,6 +1,6 @@ - + diff --git a/lib/business_logic/separate_models/tui_chat_separate_view_model.dart b/lib/business_logic/separate_models/tui_chat_separate_view_model.dart index 83f82f9..5df4e65 100644 --- a/lib/business_logic/separate_models/tui_chat_separate_view_model.dart +++ b/lib/business_logic/separate_models/tui_chat_separate_view_model.dart @@ -1188,10 +1188,11 @@ class TUIChatSeparateViewModel extends ChangeNotifier { sendForwardMessage({ required List conversationList, }) async { + final selectedMessages = List.from(_multiSelectedMessageList); for (var conversation in conversationList) { final convID = conversation.groupID ?? conversation.userID ?? ""; final convType = conversation.type; - for (var message in _multiSelectedMessageList) { + for (var message in selectedMessages) { final forwardMessageInfo = await _messageService.createForwardMessage(msgID: message.msgID!); final messageInfo = forwardMessageInfo!.messageInfo; @@ -1227,13 +1228,13 @@ class TUIChatSeparateViewModel extends ChangeNotifier { required List abstractList, required BuildContext context, }) async { + final List msgIDList = _multiSelectedMessageList + .map((e) => e.msgID ?? "") + .where((element) => element != "") + .toList(); for (var conversation in conversationList) { final convID = conversation.groupID ?? conversation.userID ?? ""; final convType = conversation.type; - final List msgIDList = _multiSelectedMessageList - .map((e) => e.msgID ?? "") - .where((element) => element != "") - .toList(); final mergerMessageInfo = await _messageService.createMergerMessage( msgIDList: msgIDList, title: title, diff --git a/lib/business_logic/view_models/tui_chat_global_model.dart b/lib/business_logic/view_models/tui_chat_global_model.dart index 9518ebd..09971ff 100644 --- a/lib/business_logic/view_models/tui_chat_global_model.dart +++ b/lib/business_logic/view_models/tui_chat_global_model.dart @@ -197,7 +197,7 @@ class TUIChatGlobalModel extends ChangeNotifier implements TIMUIKitClass { clearCurrentConversation() { // Only keep the last 20 messages when existing a chat. - _messageListMap[currentSelectedConv] = (_messageListMap[currentSelectedConv] ?? []).sublist(0, min(10, ((_messageListMap[currentSelectedConv] ?? []).length - 1))); + _messageListMap[currentSelectedConv] = (_messageListMap[currentSelectedConv] ?? []).sublist(0, max(0, min(10, ((_messageListMap[currentSelectedConv] ?? []).length - 1)))); if (_currentConversationList.isNotEmpty) { _currentConversationList.removeLast(); } diff --git a/lib/ui/widgets/az_list_view.dart b/lib/ui/widgets/az_list_view.dart index 868a45a..47e0144 100644 --- a/lib/ui/widgets/az_list_view.dart +++ b/lib/ui/widgets/az_list_view.dart @@ -80,28 +80,27 @@ class _AZListViewContainerState extends TIMUIKitState { return ChangeNotifierProvider.value( value: serviceLocator(), child: Consumer( - builder: (context, tuiTheme, child) => Scrollbar( - child: AzListView( - physics: const BouncingScrollPhysics( - parent: AlwaysScrollableScrollPhysics()), - data: _list!, - itemCount: _list!.length, - itemBuilder: widget.itemBuilder, - indexBarData: (!isDesktopScreen && widget.isShowIndexBar) - ? SuspensionUtil.getTagIndexList(_list!) - .where((element) => element != "@") - .toList() - : [], - susItemBuilder: (BuildContext context, int index) { - if (widget.susItemBuilder != null) { - return widget.susItemBuilder!(context, index); - } - ISuspensionBeanImpl model = _list![index]; - if (model.getSuspensionTag() == "@") { - return Container(); - } - return getSusItem(context, model.getSuspensionTag()); - })))); + builder: (context, tuiTheme, child) => AzListView( + physics: const BouncingScrollPhysics( + parent: AlwaysScrollableScrollPhysics()), + data: _list!, + itemCount: _list!.length, + itemBuilder: widget.itemBuilder, + indexBarData: (!isDesktopScreen && widget.isShowIndexBar) + ? SuspensionUtil.getTagIndexList(_list!) + .where((element) => element != "@") + .toList() + : [], + susItemBuilder: (BuildContext context, int index) { + if (widget.susItemBuilder != null) { + return widget.susItemBuilder!(context, index); + } + ISuspensionBeanImpl model = _list![index]; + if (model.getSuspensionTag() == "@") { + return Container(); + } + return getSusItem(context, model.getSuspensionTag()); + }))); } } diff --git a/pubspec.yaml b/pubspec.yaml index be2f0c6..74012b1 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,6 +1,6 @@ name: tencent_cloud_chat_uikit description: A powerful chat UI component library and business logic for Tencent Cloud Chat, creating seamless in-app chat modules for delightful user experiences. -version: 2.6.0+1 +version: 2.6.0+2 homepage: https://trtc.io/products/chat?utm_source=gfs&utm_medium=link&utm_campaign=%E6%B8%A0%E9%81%93&_channel_track_key=k6WgfCKn repository: https://github.com/TencentCloud/chat-uikit-flutter documentation: https://comm.qq.com/im/doc/flutter/en/TUIKit/readme.html