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,5 +1,5 @@
import 'package:core/utils/build_utils.dart';
import 'package:core/utils/platform_info.dart';
import 'package:jmap_dart_client/jmap/mail/mailbox/mailbox.dart';
import 'package:model/email/presentation_email.dart';
import 'package:model/extensions/presentation_email_extension.dart';
@@ -41,7 +41,7 @@ extension ListPresentationEmailExtensions on List<PresentationEmail> {
bool isSearchEmailRunning = false,
SearchQuery? searchQuery,
}) {
if (BuildUtils.isWeb) {
if (PlatformInfo.isWeb) {
final route = RouteUtils.generateRouteBrowser(
AppRoutes.dashboard,
NavigationRouter(
@@ -5,7 +5,7 @@ import 'package:core/presentation/resources/image_paths.dart';
import 'package:core/presentation/utils/responsive_utils.dart';
import 'package:core/presentation/utils/style_utils.dart';
import 'package:core/presentation/views/text/rich_text_builder.dart';
import 'package:core/utils/build_utils.dart';
import 'package:core/utils/platform_info.dart';
import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart';
import 'package:get/get.dart';
@@ -250,7 +250,7 @@ mixin BaseEmailItemTile {
TextStyle? textStyle
}
) {
if (BuildUtils.isWeb) {
if (PlatformInfo.isWeb) {
return Container(
color: Colors.transparent,
width: iconSize ?? 48,
@@ -5,7 +5,7 @@ import 'package:core/presentation/utils/responsive_utils.dart';
import 'package:core/presentation/views/bottom_popup/confirmation_dialog_action_sheet_builder.dart';
import 'package:core/presentation/views/dialog/confirmation_dialog_builder.dart';
import 'package:core/utils/app_logger.dart';
import 'package:core/utils/build_utils.dart';
import 'package:core/utils/platform_info.dart';
import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart';
import 'package:get/get.dart';
@@ -131,7 +131,7 @@ mixin EmailActionController on ViewAsDialogActionMixin {
session,
mailboxIdSelected: mailboxContain.mailboxId);
if (BuildUtils.isWeb) {
if (PlatformInfo.isWeb) {
showDialogDestinationPicker(
context: context,
arguments: arguments,
@@ -3,7 +3,7 @@ import 'package:core/presentation/state/failure.dart';
import 'package:core/presentation/state/success.dart';
import 'package:core/presentation/utils/app_toast.dart';
import 'package:core/utils/app_logger.dart';
import 'package:core/utils/build_utils.dart';
import 'package:core/utils/platform_info.dart';
import 'package:dartz/dartz.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
@@ -694,7 +694,7 @@ class ThreadController extends BaseController with EmailActionController {
}
void _updateSearchRouteOnBrowser() {
if (BuildUtils.isWeb) {
if (PlatformInfo.isWeb) {
final route = RouteUtils.generateRouteBrowser(
AppRoutes.dashboard,
NavigationRouter(
@@ -922,7 +922,7 @@ class ThreadController extends BaseController with EmailActionController {
}
PresentationEmail generateEmailByPlatform(PresentationEmail currentEmail) {
if (BuildUtils.isWeb) {
if (PlatformInfo.isWeb) {
final route = RouteUtils.generateRouteBrowser(
AppRoutes.dashboard,
NavigationRouter(
@@ -86,7 +86,7 @@ class ThreadView extends GetWidget<ThreadController>
}
bool supportVerticalDivider(BuildContext context) {
if (BuildUtils.isWeb) {
if (PlatformInfo.isWeb) {
return _responsiveUtils.isTabletLarge(context);
} else {
return _responsiveUtils.isDesktop(context) ||
@@ -101,7 +101,7 @@ class ThreadView extends GetWidget<ThreadController>
padding: EdgeInsets.symmetric(
horizontal: 16,
vertical: _responsiveUtils.isWebNotDesktop(context) ? 8 : 0),
margin: const EdgeInsets.only(bottom: !BuildUtils.isWeb ? 16 : 0),
margin: EdgeInsets.only(bottom: PlatformInfo.isMobile ? 16 : 0),
child: SearchBarView(_imagePaths,
hintTextSearch: AppLocalizations.of(context).search_emails,
onOpenSearchViewAction: controller.goToSearchView));
@@ -124,7 +124,7 @@ class ThreadView extends GetWidget<ThreadController>
Widget _buildListButtonSelectionForMobile(BuildContext context) {
return Obx(() {
if ((!BuildUtils.isWeb || (BuildUtils.isWeb && controller.isSelectionEnabled()
if ((PlatformInfo.isMobile || (PlatformInfo.isWeb && controller.isSelectionEnabled()
&& controller.isSearchActive() && !_responsiveUtils.isDesktop(context)))
&& controller.mailboxDashBoardController.emailsInCurrentMailbox.listEmailSelected.isNotEmpty) {
return BottomBarThreadSelectionWidget(
@@ -183,7 +183,7 @@ class ThreadView extends GetWidget<ThreadController>
return Obx(() {
if (controller.isAllSearchInActive) {
return Container(
padding: BuildUtils.isWeb
padding: PlatformInfo.isWeb
? EdgeInsets.zero
: controller.listEmailSelected.isNotEmpty ? const EdgeInsets.only(bottom: 70) : EdgeInsets.zero,
child: ComposeFloatingButton(
@@ -266,7 +266,7 @@ class ThreadView extends GetWidget<ThreadController>
Widget _buildListEmail(BuildContext context) {
return Container(
margin: BuildUtils.isWeb && _responsiveUtils.isDesktop(context)
margin: PlatformInfo.isWeb && _responsiveUtils.isDesktop(context)
? const EdgeInsets.symmetric(horizontal: 4)
: EdgeInsets.zero,
alignment: Alignment.center,
@@ -463,7 +463,7 @@ class ThreadView extends GetWidget<ThreadController>
}
double? _getItemExtent(BuildContext context) {
if (BuildUtils.isWeb) {
if (PlatformInfo.isWeb) {
return _responsiveUtils.isDesktop(context) ? 52 : 95;
} else {
return null;
@@ -24,7 +24,7 @@ class AppActionSheetActionBuilder extends CupertinoActionSheetActionBuilder {
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: [
@@ -56,7 +56,7 @@ class AppBarThreadWidgetBuilder extends StatelessWidget {
}
Widget _buildAppBar(BuildContext context, BoxConstraints constraints) {
if (BuildUtils.isWeb) {
if (PlatformInfo.isWeb) {
return _selectMode == SelectMode.INACTIVE
? _buildBodyAppBarForWeb(context)
: _buildBodyAppBarForWebSelection(context);
@@ -400,7 +400,7 @@ class AppBarThreadWidgetBuilder extends StatelessWidget {
}
double _getXTranslationValues(BuildContext context) {
if (BuildUtils.isWeb) {
if (PlatformInfo.isWeb) {
return _responsiveUtils.isWebDesktop(context) ? -2.0 : -16.0;
} else {
return _responsiveUtils.isTabletLarge(context) ? 0.0 : -16.0;
@@ -2,7 +2,7 @@ import 'package:core/presentation/extensions/color_extension.dart';
import 'package:core/presentation/resources/image_paths.dart';
import 'package:core/presentation/utils/responsive_utils.dart';
import 'package:core/presentation/views/button/button_builder.dart';
import 'package:core/utils/build_utils.dart';
import 'package:core/utils/platform_info.dart';
import 'package:flutter/material.dart';
import 'package:model/email/email_action_type.dart';
import 'package:model/email/presentation_email.dart';
@@ -164,7 +164,7 @@ class BottomBarThreadSelectionWidget extends StatelessWidget{
}
bool _isMailboxDashboardSplitView(BuildContext context) {
if (BuildUtils.isWeb) {
if (PlatformInfo.isWeb) {
return _responsiveUtils.isTabletLarge(context);
} else {
return _responsiveUtils.isLandscapeTablet(context) ||
@@ -34,7 +34,7 @@ class FilterMessageCupertinoActionSheetActionBuilder
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: [