replace SelectableText with SelectionArea

Signed-off-by: dom <githubaccount56556@proton.me>
This commit is contained in:
dom
2026-07-20 13:38:56 +08:00
parent 4ce32b8698
commit 0c73e01013
26 changed files with 406 additions and 300 deletions

View File

@@ -7,8 +7,7 @@ import 'package:PiliPlus/common/widgets/badge.dart';
import 'package:PiliPlus/common/widgets/gesture/tap_gesture_recognizer.dart';
import 'package:PiliPlus/common/widgets/image/network_img_layer.dart';
import 'package:PiliPlus/common/widgets/image_viewer/hero.dart';
import 'package:PiliPlus/common/widgets/scroll_physics.dart'
show NeverSelectableScrollPhysics;
import 'package:PiliPlus/common/widgets/selection_text.dart';
import 'package:PiliPlus/grpc/bilibili/im/interfaces/v1.pb.dart'
show EmotionInfo;
import 'package:PiliPlus/grpc/bilibili/im/type.pb.dart' show Msg, MsgType;
@@ -719,10 +718,7 @@ class ChatItem extends StatelessWidget {
return '';
},
);
return SelectableText.rich(
TextSpan(children: children),
scrollPhysics: const NeverSelectableScrollPhysics(),
);
return SelectionText.rich(TextSpan(children: children));
}
Widget msgTypeNotifyMsg_10(ThemeData theme, content) {
@@ -764,10 +760,7 @@ class ChatItem extends StatelessWidget {
),
Divider(color: theme.colorScheme.primary.withValues(alpha: 0.05)),
if ((content['text'] as String?)?.isNotEmpty == true)
SelectableText(
content['text'],
scrollPhysics: const NeverSelectableScrollPhysics(),
),
SelectionText(content['text']),
if (modules != null && modules.isNotEmpty) ...[
const SizedBox(height: 4),
...modules.map(