feat: Alignment is now calculated
This commit is contained in:
@@ -36,7 +36,17 @@ class MessageReactionsModal extends StatelessWidget {
|
|||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
|
var size = MediaQuery.of(context).size;
|
||||||
var user = StreamChat.of(context).user;
|
var user = StreamChat.of(context).user;
|
||||||
|
|
||||||
|
var roughMaxSize = 2 * size.width / 3;
|
||||||
|
var roughSentenceSize = message.text.length * messageTheme.messageText.fontSize * 1.2;
|
||||||
|
var divFactor = roughSentenceSize / roughMaxSize;
|
||||||
|
|
||||||
|
print(roughMaxSize);
|
||||||
|
print(roughSentenceSize);
|
||||||
|
print(divFactor);
|
||||||
|
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
behavior: HitTestBehavior.translucent,
|
behavior: HitTestBehavior.translucent,
|
||||||
onTap: () {
|
onTap: () {
|
||||||
@@ -67,7 +77,7 @@ class MessageReactionsModal extends StatelessWidget {
|
|||||||
(message.status == MessageSendingStatus.SENT ||
|
(message.status == MessageSendingStatus.SENT ||
|
||||||
message.status == null))
|
message.status == null))
|
||||||
Align(
|
Align(
|
||||||
alignment: Alignment(-0.3 + (user.id == message.id ? 0.2 : 0.0), 0.0),
|
alignment: Alignment(user.id == message.user.id ? (divFactor > 1.0 ? 0.0 : (1.0 - divFactor)) : (divFactor > 1.0 ? 0.0 : -(1.0 - divFactor)), 0.0),
|
||||||
child: ReactionPicker(
|
child: ReactionPicker(
|
||||||
message: message,
|
message: message,
|
||||||
messageTheme: messageTheme,
|
messageTheme: messageTheme,
|
||||||
@@ -144,10 +154,10 @@ class MessageReactionsModal extends StatelessWidget {
|
|||||||
alignment: WrapAlignment.start,
|
alignment: WrapAlignment.start,
|
||||||
children: message.latestReactions
|
children: message.latestReactions
|
||||||
.map((e) => _buildReaction(
|
.map((e) => _buildReaction(
|
||||||
e,
|
e,
|
||||||
currentUser,
|
currentUser,
|
||||||
context,
|
context,
|
||||||
))
|
))
|
||||||
.toList(),
|
.toList(),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
@@ -160,10 +170,10 @@ class MessageReactionsModal extends StatelessWidget {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Widget _buildReaction(
|
Widget _buildReaction(
|
||||||
Reaction reaction,
|
Reaction reaction,
|
||||||
User currentUser,
|
User currentUser,
|
||||||
BuildContext context,
|
BuildContext context,
|
||||||
) {
|
) {
|
||||||
final isCurrentUser = reaction.user.id == currentUser.id;
|
final isCurrentUser = reaction.user.id == currentUser.id;
|
||||||
return ConstrainedBox(
|
return ConstrainedBox(
|
||||||
constraints: BoxConstraints.loose(Size(
|
constraints: BoxConstraints.loose(Size(
|
||||||
|
|||||||
Reference in New Issue
Block a user