fix(mobile-next): 清理悬浮窗、语音文案与位置发送

按 B-273 / B-269 收口 Android 客户端:去掉悬浮窗申请与旧浮窗服务,通话入口统一为语音通话,删除位置发送与定位权限,保留历史位置只读展示。

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: multica-agent <github@multica.ai>
This commit is contained in:
编码工程师
2026-08-21 10:04:39 +08:00
co-authored by Cursor multica-agent
parent 092039bc1a
commit 694891c393
20 changed files with 662 additions and 726 deletions
+20 -7
View File
@@ -86,13 +86,23 @@ class ChatPage extends StatelessWidget {
onTapUserProfile: handleUserProfileTap,
);
void handleUserProfileTap(({String userID, String name, String? faceURL, String? groupID}) userProfile) {
final userInfo = UserInfo(userID: userProfile.userID, nickname: userProfile.name, faceURL: userProfile.faceURL);
void handleUserProfileTap(
({
String userID,
String name,
String? faceURL,
String? groupID
}) userProfile) {
final userInfo = UserInfo(
userID: userProfile.userID,
nickname: userProfile.name,
faceURL: userProfile.faceURL);
logic.viewUserInfo(userInfo);
}
Widget? _buildMediaItem(BuildContext context, Message message) {
if (message.contentType != MessageType.picture && message.contentType != MessageType.video) {
if (message.contentType != MessageType.picture &&
message.contentType != MessageType.video) {
return null;
}
@@ -125,7 +135,8 @@ class ChatPage extends StatelessWidget {
child: Hero(
tag: message.clientMsgID!,
child: _buildMediaContent(message),
placeholderBuilder: (BuildContext context, Size heroSize, Widget child) => child,
placeholderBuilder:
(BuildContext context, Size heroSize, Widget child) => child,
),
);
}
@@ -155,7 +166,8 @@ class ChatPage extends StatelessWidget {
final content = data['content'];
final view = ChatCallItemView(type: type, content: content);
return CustomTypeInfo(view);
} else if (viewType == CustomMessageType.deletedByFriend || viewType == CustomMessageType.blockedByFriend) {
} else if (viewType == CustomMessageType.deletedByFriend ||
viewType == CustomMessageType.blockedByFriend) {
final view = ChatFriendRelationshipAbnormalHintView(
name: logic.nickname.value,
onTap: logic.sendFriendVerification,
@@ -244,10 +256,11 @@ class ChatPage extends StatelessWidget {
toolbox: ChatToolBox(
onTapAlbum: logic.onTapAlbum,
onTapCamera: logic.onTapCamera,
onTapCall: FeatureFlags.livekitCall && logic.isSingleChat ? logic.call : null,
onTapCall: FeatureFlags.livekitCall && logic.isSingleChat
? logic.call
: null,
onTapCard: logic.onTapCarte,
onTapFile: logic.onTapFile,
onTapLocation: logic.onTapLocation,
),
voiceRecordBar: bar,
emojiView: ChatEmojiView(