TF-3845 Thread Detail Fix blue bar detail scroll

This commit is contained in:
DatDang
2025-06-30 11:47:33 +07:00
committed by Dat H. Pham
parent 8864fbc03a
commit 12eb7dbd35
4 changed files with 22 additions and 3 deletions
@@ -378,6 +378,8 @@ class EmailView extends GetWidget<SingleEmailController> {
isDraggableAppActive: controller.mailboxDashBoardController.isAttachmentDraggableAppActive,
onMailtoDelegateAction: controller.openMailToLink,
presentationEmail: controller.currentEmail,
scrollController: scrollController,
isInsideThreadDetailView: isInsideThreadDetailView,
)),
],
)
@@ -17,6 +17,8 @@ class CalendarEventDetailWidget extends StatelessWidget {
final bool? isDraggableAppActive;
final OnMailtoDelegateAction? onMailtoDelegateAction;
final PresentationEmail? presentationEmail;
final ScrollController? scrollController;
final bool isInsideThreadDetailView;
const CalendarEventDetailWidget({
super.key,
@@ -25,6 +27,8 @@ class CalendarEventDetailWidget extends StatelessWidget {
this.isDraggableAppActive,
this.onMailtoDelegateAction,
this.presentationEmail,
this.scrollController,
this.isInsideThreadDetailView = false,
});
@override
@@ -61,7 +65,11 @@ class CalendarEventDetailWidget extends StatelessWidget {
child: EventBodyContentWidget(
content: eventDesc,
isDraggableAppActive: isDraggableAppActive,
onMailtoDelegateAction: onMailtoDelegateAction)),
onMailtoDelegateAction: onMailtoDelegateAction,
scrollController: scrollController,
isInsideThreadDetailView: isInsideThreadDetailView,
)
),
],
),
);
@@ -19,12 +19,16 @@ class EventBodyContentWidget extends StatelessWidget {
final String content;
final bool? isDraggableAppActive;
final OnMailtoDelegateAction? onMailtoDelegateAction;
final ScrollController? scrollController;
final bool isInsideThreadDetailView;
const EventBodyContentWidget({
super.key,
required this.content,
this.isDraggableAppActive,
this.onMailtoDelegateAction,
this.scrollController,
this.isInsideThreadDetailView = false,
});
@override
@@ -47,7 +51,11 @@ class EventBodyContentWidget extends StatelessWidget {
children: [
if (PlatformInfo.isWeb)
Container(
constraints: const BoxConstraints(maxHeight: EventDescriptionDetailWidgetStyles.maxHeight),
constraints: isInsideThreadDetailView
? null
: const BoxConstraints(
maxHeight: EventDescriptionDetailWidgetStyles.maxHeight,
),
padding: const EdgeInsetsDirectional.only(end: EventDescriptionDetailWidgetStyles.webContentPadding),
child: LayoutBuilder(builder: (context, constraints) {
return Stack(
@@ -61,6 +69,7 @@ class EventBodyContentWidget extends StatelessWidget {
contentHtml: content,
mailtoDelegate: onMailtoDelegateAction,
direction: AppUtils.getCurrentDirection(context),
scrollController: scrollController,
),
if (isDraggableAppActive == true)
PointerInterceptor(
@@ -102,7 +102,7 @@ extension GetThreadDetailEmailViews on ThreadDetailController {
padding: const EdgeInsetsDirectional.only(bottom: 16),
child: EmailView(
key: GlobalObjectKey(presentationEmail.id?.id.value ?? ''),
isInsideThreadDetailView: true,
isInsideThreadDetailView: emailIdsPresentation.length > 1,
emailId: presentationEmail.id,
isFirstEmailInThreadDetail: isFirstEmailInThreadDetail,
threadSubject: isFirstEmailInThreadDetail