Sync all use PlatformInfo to check platform while runtime

(cherry picked from commit 514fec1f2f4f1ff8a584bf8db7bf3a5537a3e9f8)
This commit is contained in:
dab246
2023-06-15 14:26:04 +07:00
committed by Dat H. Pham
parent 3d019d644a
commit 96145aae7a
88 changed files with 298 additions and 309 deletions
@@ -1,6 +1,6 @@
import 'dart:collection';
import 'package:collection/collection.dart';
import 'package:core/utils/build_utils.dart';
import 'package:core/utils/platform_info.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
@@ -55,7 +55,7 @@ class EmailSupervisorController extends GetxController {
bool get isSearchActivatedOnMobile {
return mailboxDashBoardController.searchController.isSearchEmailRunning
&& !BuildUtils.isWeb;
&& PlatformInfo.isMobile;
}
void createPageControllerAndJumpToEmailById(EmailId currentEmailId) {
@@ -112,7 +112,7 @@ class EmailSupervisorController extends GetxController {
}
void _jumpToPage(int page) {
if (BuildUtils.isWeb) {
if (PlatformInfo.isWeb) {
pageController?.jumpToPage(page);
} else {
pageController?.animateToPage(
@@ -123,7 +123,7 @@ class EmailSupervisorController extends GetxController {
}
void updateScrollPhysicPageView({bool isScrollPageViewActivated = false}) {
if (BuildUtils.isWeb || !isScrollPageViewActivated) {
if (PlatformInfo.isWeb || !isScrollPageViewActivated) {
scrollPhysicsPageView.value = const NeverScrollableScrollPhysics();
} else {
scrollPhysicsPageView.value = null;
@@ -382,7 +382,7 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
initialEmailContents = success.emailContents;
attachments.value = success.attachments;
if (!BuildUtils.isWeb) {
if (PlatformInfo.isMobile) {
final detailedEmail = DetailedEmail(
emailId: currentEmail!.id!,
attachments: attachments,
@@ -655,7 +655,7 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
session,
mailboxIdSelected: currentMailbox.mailboxId
);
if (BuildUtils.isWeb) {
if (PlatformInfo.isWeb) {
showDialogDestinationPicker(
context: context,
arguments: arguments,
@@ -1117,7 +1117,7 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
void _updateRouteOnBrowser() {
log('SingleEmailController::_updateRouteOnBrowser(): isSearchEmailRunning: ${mailboxDashBoardController.searchController.isSearchEmailRunning}');
if (BuildUtils.isWeb) {
if (PlatformInfo.isWeb) {
final selectedMailboxId = mailboxDashBoardController.selectedMailbox.value?.id;
final route = RouteUtils.generateRouteBrowser(
AppRoutes.dashboard,
@@ -1159,7 +1159,7 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
session,
emailAddress: emailAddress);
if (BuildUtils.isWeb) {
if (PlatformInfo.isWeb) {
showDialogRuleFilterCreator(
context: context,
arguments: arguments,
@@ -1216,7 +1216,7 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
}
Future<bool> backButtonPressedCallbackAction(BuildContext context) async {
if (!BuildUtils.isWeb) {
if (PlatformInfo.isMobile) {
closeEmailView(context);
}
return false;
+11 -11
View File
@@ -8,7 +8,7 @@ import 'package:core/presentation/views/html_viewer/html_content_viewer_on_web_w
import 'package:core/presentation/views/html_viewer/html_content_viewer_widget.dart';
import 'package:core/presentation/views/html_viewer/html_viewer_controller_for_web.dart';
import 'package:core/utils/app_logger.dart';
import 'package:core/utils/build_utils.dart';
import 'package:core/utils/platform_info.dart';
import 'package:filesize/filesize.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
@@ -80,7 +80,7 @@ class EmailView extends GetWidget<SingleEmailController> {
}
EdgeInsets _getMarginEmailView(BuildContext context) {
if (BuildUtils.isWeb) {
if (PlatformInfo.isWeb) {
if (responsiveUtils.isDesktop(context)) {
return EdgeInsets.only(
left: AppUtils.isDirectionRTL(context) ? 16 : 0,
@@ -134,7 +134,7 @@ class EmailView extends GetWidget<SingleEmailController> {
}
bool _supportVerticalDivider(BuildContext context) {
if (BuildUtils.isWeb) {
if (PlatformInfo.isWeb) {
return responsiveUtils.isTabletLarge(context);
} else {
return responsiveUtils.isLandscapeTablet(context) ||
@@ -181,7 +181,7 @@ class EmailView extends GetWidget<SingleEmailController> {
_popupMenuEmailActionTile(context, email));
}
},
optionsWidget: BuildUtils.isWeb && controller.emailSupervisorController.supportedPageView.isTrue
optionsWidget: PlatformInfo.isWeb && controller.emailSupervisorController.supportedPageView.isTrue
? _buildNavigatorPageViewWidgets(context)
: null,
));
@@ -225,7 +225,7 @@ class EmailView extends GetWidget<SingleEmailController> {
}
Widget _buildEmailBody(BuildContext context, PresentationEmail email) {
if (BuildUtils.isWeb) {
if (PlatformInfo.isWeb) {
return _buildEmailMessage(context, email);
} else {
return SingleChildScrollView(
@@ -256,8 +256,8 @@ class EmailView extends GetWidget<SingleEmailController> {
padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 16),
child: SelectableText(
email.getEmailTitle(),
maxLines: BuildUtils.isWeb ? 2 : null,
minLines: BuildUtils.isWeb ? 1 : null,
maxLines: PlatformInfo.isWeb ? 2 : null,
minLines: PlatformInfo.isWeb ? 1 : null,
cursorColor: AppColor.colorTextButton,
style: const TextStyle(
fontSize: 20,
@@ -280,7 +280,7 @@ class EmailView extends GetWidget<SingleEmailController> {
),
_buildLoadingView(),
_buildAttachments(context),
if (BuildUtils.isWeb)
if (PlatformInfo.isWeb)
Expanded(child: Padding(
padding: EdgeInsets.only(
left: AppUtils.isDirectionRTL(context) ? 0 : 16,
@@ -400,7 +400,7 @@ class EmailView extends GetWidget<SingleEmailController> {
.map((attachment) => AttachmentFileTileBuilder(
attachment,
onDownloadAttachmentFileActionClick: (attachment) {
if (BuildUtils.isWeb) {
if (PlatformInfo.isWeb) {
controller.downloadAttachmentForWeb(context, attachment);
} else {
controller.exportAttachment(context, attachment);
@@ -423,7 +423,7 @@ class EmailView extends GetWidget<SingleEmailController> {
AttachmentFileTileBuilder(
attachments[index],
onDownloadAttachmentFileActionClick: (attachment) {
if (BuildUtils.isWeb) {
if (PlatformInfo.isWeb) {
controller.downloadAttachmentForWeb(context, attachment);
} else {
controller.exportAttachment(context, attachment);
@@ -445,7 +445,7 @@ class EmailView extends GetWidget<SingleEmailController> {
if (controller.emailContents.value != null) {
final allEmailContents = controller.emailContents.value;
if (BuildUtils.isWeb) {
if (PlatformInfo.isWeb) {
return HtmlContentViewerOnWeb(
widthContent: constraints.maxWidth,
heightContent: responsiveUtils.getSizeScreenHeight(context),
@@ -92,7 +92,7 @@ class AppBarMailWidgetBuilder extends StatelessWidget {
}
bool _supportDisplayMailboxNameTitle(BuildContext context) {
if (BuildUtils.isWeb) {
if (PlatformInfo.isWeb) {
return _responsiveUtils.isDesktop(context) ||
_responsiveUtils.isMobile(context) ||
_responsiveUtils.isTablet(context) ||
@@ -141,8 +141,8 @@ class AppBarMailWidgetBuilder extends StatelessWidget {
colorFilter: mailboxContain?.isTrash == false
? AppColor.colorTextButton.asFilter()
: AppColor.colorDeletePermanentlyButton.asFilter(),
width: BuildUtils.isWeb ? 18 : 20,
height: BuildUtils.isWeb ? 18 : 20,
width: PlatformInfo.isWeb ? 18 : 20,
height: PlatformInfo.isWeb ? 18 : 20,
fit: BoxFit.fill),
tooltip: mailboxContain?.isTrash == false
? AppLocalizations.of(context).move_to_trash
@@ -31,7 +31,7 @@ class EmailActionCupertinoActionSheetActionBuilder extends CupertinoActionSheetA
return Container(
color: bgColor ?? Colors.white,
child: MouseRegion(
cursor: BuildUtils.isWeb ? MaterialStateMouseCursor.clickable : MouseCursor.defer,
cursor: PlatformInfo.isWeb ? MaterialStateMouseCursor.clickable : MouseCursor.defer,
child: CupertinoActionSheetAction(
key: key,
child: Row(mainAxisAlignment: MainAxisAlignment.center, children: [