commentlistv2 static method
Implementation
static Widget commentlistv2(
BuildContext context,
Comment comment,
ARMOYUServices service, {
required Function({
required int userID,
required String username,
required String? displayname,
required Media? avatar,
required Media? banner,
}) profileFunction,
}) {
String uniqueTag = DateTime.now().millisecondsSinceEpoch.toString();
final controller = Get.put(
PostscommentControllerV2(comment: comment, service: service),
tag: "${comment.commentID}-$uniqueTag",
);
return GestureDetector(
onDoubleTap: () {
controller.likeButtonKey.value.currentState?.onTap();
},
child: Container(
color: Get.theme.scaffoldBackgroundColor,
child: Row(
children: [
Expanded(
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
CustomText.usercomments(
context,
text: controller.comment.content,
user: User(
userID: controller.comment.user.userID,
userName: controller.comment.user.userName,
displayName: Rx(
controller.comment.user.displayName!.value,
),
avatar: Media(
mediaID: 0,
mediaType: MediaType.image,
mediaURL: MediaURL(
bigURL: Rx(
controller
.comment.user.avatar!.mediaURL.bigURL.value,
),
normalURL: Rx(
controller
.comment.user.avatar!.mediaURL.normalURL.value,
),
minURL: Rx(
controller
.comment.user.avatar!.mediaURL.minURL.value,
),
),
),
),
profileFunction: profileFunction,
),
],
),
),
Obx(
() => Padding(
padding: const EdgeInsets.all(4.0),
child: LikeButton(
key: controller.likeButtonKey.value,
isLiked: controller.comment.didIlike,
likeCount: controller.comment.likeCount,
onTap: (isLiked) async =>
await controller.postLike(isLiked, service),
likeBuilder: (bool isLiked) {
return Icon(
isLiked ? Icons.favorite : Icons.favorite_outline,
color: isLiked ? Colors.red : Colors.grey,
size: 15,
);
},
),
),
),
],
),
),
);
}