fix: fix message overflow for activity messages on mobile (#1573)

pull/1593/head
ggurdin 10 months ago committed by GitHub
parent 5f1c1887fc
commit c4b35f67c7
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -65,112 +65,104 @@ class ActivityPlanMessage extends StatelessWidget {
? const SizedBox(height: 0, width: double.infinity)
: Container(
alignment: Alignment.center,
child: Row(
mainAxisSize: MainAxisSize.min,
child: Column(
crossAxisAlignment: CrossAxisAlignment.end,
children: [
Column(
crossAxisAlignment: CrossAxisAlignment.end,
children: [
AnimatedOpacity(
opacity: animateIn
? 0
: event.messageType ==
MessageTypes.BadEncrypted ||
event.status.isSending
? 0.5
: 1,
duration: FluffyThemes.animationDuration,
curve: FluffyThemes.animationCurve,
AnimatedOpacity(
opacity: animateIn
? 0
: event.messageType == MessageTypes.BadEncrypted ||
event.status.isSending
? 0.5
: 1,
duration: FluffyThemes.animationDuration,
curve: FluffyThemes.animationCurve,
child: Container(
decoration: BoxDecoration(
color: color,
borderRadius: borderRadius,
),
clipBehavior: Clip.antiAlias,
child: CompositedTransformTarget(
link: MatrixState.pAnyState
.layerLinkAndKey(
event.eventId,
)
.link,
child: Container(
key: MatrixState.pAnyState
.layerLinkAndKey(
event.eventId,
)
.key,
decoration: BoxDecoration(
color: color,
borderRadius: borderRadius,
borderRadius: BorderRadius.circular(
AppConfig.borderRadius,
),
),
clipBehavior: Clip.antiAlias,
child: CompositedTransformTarget(
link: MatrixState.pAnyState
.layerLinkAndKey(
event.eventId,
)
.link,
child: Container(
key: MatrixState.pAnyState
.layerLinkAndKey(
event.eventId,
)
.key,
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(
AppConfig.borderRadius,
),
),
padding: const EdgeInsets.symmetric(
horizontal: 16,
vertical: 8,
),
constraints: const BoxConstraints(
maxWidth: FluffyThemes.columnWidth * 1.5,
padding: const EdgeInsets.symmetric(
horizontal: 16,
vertical: 8,
),
constraints: const BoxConstraints(
maxWidth: FluffyThemes.columnWidth * 1.5,
),
child: Column(
mainAxisSize: MainAxisSize.min,
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
MessageContent(
displayEvent,
textColor: textColor,
borderRadius: borderRadius,
controller: controller,
immersionMode: false,
),
child: Column(
mainAxisSize: MainAxisSize.min,
crossAxisAlignment:
CrossAxisAlignment.start,
children: <Widget>[
MessageContent(
displayEvent,
textColor: textColor,
borderRadius: borderRadius,
controller: controller,
immersionMode: false,
if (event.hasAggregatedEvents(
timeline,
RelationshipTypes.edit,
))
Padding(
padding: const EdgeInsets.only(
top: 4.0,
),
if (event.hasAggregatedEvents(
timeline,
RelationshipTypes.edit,
))
Padding(
padding: const EdgeInsets.only(
top: 4.0,
),
child: Row(
mainAxisSize: MainAxisSize.min,
children: [
if (event.hasAggregatedEvents(
timeline,
RelationshipTypes.edit,
)) ...[
Icon(
Icons.edit_outlined,
color:
textColor.withAlpha(164),
size: 14,
),
Text(
' - ${displayEvent.originServerTs.localizedTimeShort(context)}',
style: TextStyle(
color: textColor.withAlpha(
164,
),
fontSize: 12,
),
child: Row(
mainAxisSize: MainAxisSize.min,
children: [
if (event.hasAggregatedEvents(
timeline,
RelationshipTypes.edit,
)) ...[
Icon(
Icons.edit_outlined,
color: textColor.withAlpha(164),
size: 14,
),
Text(
' - ${displayEvent.originServerTs.localizedTimeShort(context)}',
style: TextStyle(
color: textColor.withAlpha(
164,
),
],
],
),
),
],
),
),
fontSize: 12,
),
),
],
],
),
),
],
),
),
),
Padding(
padding: const EdgeInsets.only(
top: 4.0,
right: 4.0,
),
child: MessageReactions(event, timeline),
),
],
),
),
Padding(
padding: const EdgeInsets.only(
top: 4.0,
right: 4.0,
),
child: MessageReactions(event, timeline),
),
],
),

@ -11,6 +11,7 @@ import 'package:fluffychat/pages/chat/chat.dart';
import 'package:fluffychat/pages/chat/events/message_reactions.dart';
import 'package:fluffychat/pangea/common/utils/error_handler.dart';
import 'package:fluffychat/pangea/events/event_wrappers/pangea_message_event.dart';
import 'package:fluffychat/pangea/events/extensions/pangea_event_extension.dart';
import 'package:fluffychat/pangea/events/models/pangea_token_model.dart';
import 'package:fluffychat/pangea/toolbar/widgets/message_selection_overlay.dart';
import 'package:fluffychat/pangea/toolbar/widgets/message_toolbar.dart';
@ -152,8 +153,10 @@ class MessageSelectionPositionerState extends State<MessageSelectionPositioner>
_adjustedMessageHeight ?? _messageSize?.height ?? 0;
double get _messageMaxWidth {
const double messageMargin = Avatar.defaultSize + 16 + 8;
const totalMaxWidth = (FluffyThemes.columnWidth * 2.5) - messageMargin;
final double messageMargin =
widget.event.isActivityMessage ? 0 : Avatar.defaultSize + 16 + 8;
final double totalMaxWidth =
(FluffyThemes.columnWidth * 2.5) - messageMargin;
double? maxWidth;
if (_mediaQuery != null) {

Loading…
Cancel
Save