TF-1436 Disable show/hide mailbox button for child team-mailbox
This commit is contained in:
@@ -195,16 +195,22 @@ class SearchMailboxView extends GetWidget<SearchMailboxController>
|
||||
});
|
||||
}
|
||||
|
||||
List<FocusedMenuItem> _listPopupMenuItemAction(BuildContext context, PresentationMailbox mailbox) {
|
||||
final mailboxActionsSupported = mailbox.isSubscribed?.value == true
|
||||
List<ContextMenuItemMailboxAction> _generateListContextMenuItemAction(PresentationMailbox mailbox) {
|
||||
final mailboxActionsSupported = mailbox.supportedSubscribe
|
||||
? _listActionForMailboxSubscribed(mailbox)
|
||||
: _listActionForMailboxUnsubscribed();
|
||||
: _listActionForMailboxUnsubscribed(mailbox);
|
||||
|
||||
final listContextMenuItemAction = mailboxActionsSupported
|
||||
.map((action) => ContextMenuItemMailboxAction(action, action.getContextMenuItemState(mailbox)))
|
||||
.toList();
|
||||
final contextMenuActions = listContextMenuItemAction(
|
||||
mailbox,
|
||||
controller.dashboardController,
|
||||
mailboxActions: mailboxActionsSupported
|
||||
);
|
||||
|
||||
return listContextMenuItemAction
|
||||
return contextMenuActions;
|
||||
}
|
||||
|
||||
List<FocusedMenuItem> _listPopupMenuItemAction(BuildContext context, PresentationMailbox mailbox) {
|
||||
return _generateListContextMenuItemAction(mailbox)
|
||||
.map((action) => _mailboxFocusedMenuItem(context, action, mailbox))
|
||||
.toList();
|
||||
}
|
||||
@@ -251,9 +257,10 @@ class SearchMailboxView extends GetWidget<SearchMailboxController>
|
||||
);
|
||||
}
|
||||
|
||||
List<MailboxActions> _listActionForMailboxUnsubscribed() {
|
||||
List<MailboxActions> _listActionForMailboxUnsubscribed(PresentationMailbox mailbox) {
|
||||
return [
|
||||
MailboxActions.enableMailbox
|
||||
if (mailbox.isSupportedEnableMailbox)
|
||||
MailboxActions.enableMailbox
|
||||
];
|
||||
}
|
||||
|
||||
@@ -266,15 +273,7 @@ class SearchMailboxView extends GetWidget<SearchMailboxController>
|
||||
PresentationMailbox mailbox,
|
||||
{RelativeRect? position}
|
||||
) {
|
||||
final mailboxActionsSupported = mailbox.supportedSubscribe
|
||||
? _listActionForMailboxSubscribed(mailbox)
|
||||
: _listActionForMailboxUnsubscribed();
|
||||
|
||||
final contextMenuActions = listContextMenuItemAction(
|
||||
mailbox,
|
||||
controller.dashboardController,
|
||||
mailboxActions: mailboxActionsSupported
|
||||
);
|
||||
final contextMenuActions = _generateListContextMenuItemAction(mailbox);
|
||||
|
||||
if (controller.responsiveUtils.isScreenWithShortestSide(context) || position == null) {
|
||||
controller.openContextMenuAction(
|
||||
|
||||
@@ -224,7 +224,7 @@ class _MailboxSearchedItemBuilderState extends State<MailboxSearchedItemBuilder>
|
||||
}
|
||||
|
||||
Widget _buildMenuIcon(BuildContext context) {
|
||||
if (isHoverItem) {
|
||||
if (isHoverItem && widget.listPopupMenuItemAction?.isNotEmpty == true) {
|
||||
return InkWell(
|
||||
onTapDown: (detail) {
|
||||
final screenSize = MediaQuery.of(context).size;
|
||||
|
||||
@@ -116,6 +116,16 @@ class PresentationMailbox with EquatableMixin {
|
||||
}
|
||||
}
|
||||
|
||||
bool get isSupportedEnableMailbox {
|
||||
if (supportedSubscribe) {
|
||||
return false;
|
||||
}
|
||||
if (isPersonal) {
|
||||
return true;
|
||||
} else {
|
||||
return isTeamMailboxes;
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
List<Object?> get props => [
|
||||
|
||||
Reference in New Issue
Block a user