TF-248 Change avatar of item list email
This commit is contained in:
@@ -1,3 +1,5 @@
|
||||
import 'dart:math';
|
||||
|
||||
import 'package:core/core.dart';
|
||||
import 'package:core/presentation/utils/responsive_utils.dart';
|
||||
import 'package:dartz/dartz.dart';
|
||||
@@ -63,6 +65,8 @@ class ThreadController extends BaseController {
|
||||
final emailListSearch = <PresentationEmail>[].obs;
|
||||
final currentSelectMode = SelectMode.INACTIVE.obs;
|
||||
|
||||
final random = Random();
|
||||
|
||||
bool canLoadMore = true;
|
||||
bool canSearchMore = true;
|
||||
MailboxId? _currentMailboxId;
|
||||
@@ -207,7 +211,10 @@ class ThreadController extends BaseController {
|
||||
|
||||
void _getAllEmailSuccess(GetAllEmailSuccess success) {
|
||||
_currentEmailState = success.currentEmailState;
|
||||
emailList.value = success.emailList;
|
||||
final listEmailHaveAvatarGradientColor = success.emailList
|
||||
.map((email) => email.asAvatarGradientColor(random))
|
||||
.toList();
|
||||
emailList.value = listEmailHaveAvatarGradientColor;
|
||||
}
|
||||
|
||||
void _getAllEmailAction(AccountId accountId, {MailboxId? mailboxId}) {
|
||||
@@ -271,7 +278,10 @@ class ThreadController extends BaseController {
|
||||
|
||||
void _loadMoreEmailsSuccess(LoadMoreEmailsSuccess success) {
|
||||
if (success.emailList.isNotEmpty) {
|
||||
emailList.addAll(success.emailList);
|
||||
final listEmailHaveAvatarGradientColor = success.emailList
|
||||
.map((email) => email.asAvatarGradientColor(random))
|
||||
.toList();
|
||||
emailList.addAll(listEmailHaveAvatarGradientColor);
|
||||
} else {
|
||||
canLoadMore = false;
|
||||
}
|
||||
|
||||
@@ -74,9 +74,9 @@ class AppBarThreadWidgetBuilder {
|
||||
}},
|
||||
child: Padding(
|
||||
padding: EdgeInsets.zero,
|
||||
child: AvatarBuilder()
|
||||
.text(_userProfile != null ? _userProfile!.getAvatarText() : '')
|
||||
.size(36)
|
||||
child: (AvatarBuilder()
|
||||
..text(_userProfile != null ? _userProfile!.getAvatarText() : '')
|
||||
..size(36))
|
||||
.build()));
|
||||
}
|
||||
|
||||
|
||||
@@ -81,7 +81,7 @@ class EmailTileBuilder {
|
||||
}
|
||||
},
|
||||
leading: Transform(
|
||||
transform: Matrix4.translationValues(-10.0, -10.0, 0.0),
|
||||
transform: Matrix4.translationValues(-10.0, -2.0, 0.0),
|
||||
child: _buildAvatarIcon()),
|
||||
title: Transform(
|
||||
transform: Matrix4.translationValues(-10.0, 0.0, 0.0),
|
||||
@@ -216,7 +216,7 @@ class EmailTileBuilder {
|
||||
);
|
||||
}
|
||||
|
||||
Widget _buildAvatarIcon () {
|
||||
Widget _buildAvatarIcon() {
|
||||
if (_selectModeAll == SelectMode.ACTIVE) {
|
||||
return AnimatedSwitcher(
|
||||
duration: Duration(milliseconds: 600),
|
||||
@@ -228,20 +228,24 @@ class EmailTileBuilder {
|
||||
_onSelectEmailActionClick!(_presentationEmail);
|
||||
}}))
|
||||
.build()
|
||||
: AvatarBuilder()
|
||||
.text('${_presentationEmail.getAvatarText()}')
|
||||
.size(40)
|
||||
// .iconStatus(_imagePaths.icOffline)
|
||||
.addOnTapActionClick(() {
|
||||
if (_selectModeAll == SelectMode.ACTIVE && _onSelectEmailActionClick != null) {
|
||||
_onSelectEmailActionClick!(_presentationEmail);
|
||||
}})
|
||||
: (AvatarBuilder()
|
||||
..text('${_presentationEmail.getAvatarText()}')
|
||||
..size(56)
|
||||
..textColor(Colors.white)
|
||||
..avatarColor(_presentationEmail.avatarColors)
|
||||
// .iconStatus(_imagePaths.icOffline)
|
||||
..addOnTapActionClick(() {
|
||||
if (_selectModeAll == SelectMode.ACTIVE && _onSelectEmailActionClick != null) {
|
||||
_onSelectEmailActionClick!(_presentationEmail);
|
||||
}}))
|
||||
.build()
|
||||
);
|
||||
} else {
|
||||
return AvatarBuilder()
|
||||
.text('${_presentationEmail.getAvatarText()}')
|
||||
.size(40)
|
||||
return (AvatarBuilder()
|
||||
..text('${_presentationEmail.getAvatarText()}')
|
||||
..size(56)
|
||||
..textColor(Colors.white)
|
||||
..avatarColor(_presentationEmail.avatarColors))
|
||||
// .iconStatus(_imagePaths.icOffline)
|
||||
.build();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user