Skip to content

Commit 27d83d6

Browse files
committed
TF-2421 Update preferred orientations for each screen
Signed-off-by: dab246 <[email protected]>
1 parent 105b997 commit 27d83d6

File tree

13 files changed

+48
-23
lines changed

13 files changed

+48
-23
lines changed

core/lib/presentation/utils/theme_utils.dart

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,4 +89,20 @@ class ThemeUtils {
8989
systemNavigationBarIconBrightness: Brightness.dark,
9090
));
9191
}
92+
93+
static void setPreferredPortraitOrientations() {
94+
SystemChrome.setPreferredOrientations([
95+
DeviceOrientation.portraitUp,
96+
DeviceOrientation.portraitDown
97+
]);
98+
}
99+
100+
static void setPreferredFullOrientations() {
101+
SystemChrome.setPreferredOrientations([
102+
DeviceOrientation.portraitUp,
103+
DeviceOrientation.portraitDown,
104+
DeviceOrientation.landscapeLeft,
105+
DeviceOrientation.landscapeRight,
106+
]);
107+
}
92108
}

lib/features/home/presentation/home_controller.dart

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import 'package:core/presentation/utils/theme_utils.dart';
12
import 'package:core/utils/platform_info.dart';
23
import 'package:flutter/foundation.dart';
34
import 'package:flutter_downloader/flutter_downloader.dart';
@@ -50,6 +51,8 @@ class HomeController extends ReloadableController {
5051
@override
5152
void onInit() {
5253
if (PlatformInfo.isMobile) {
54+
ThemeUtils.setSystemDarkUIStyle();
55+
ThemeUtils.setPreferredFullOrientations();
5356
_initFlutterDownloader();
5457
_registerReceivingSharingIntent();
5558
}

lib/features/home/presentation/home_view.dart

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import 'package:core/presentation/extensions/color_extension.dart';
2-
import 'package:core/presentation/utils/theme_utils.dart';
32
import 'package:flutter/cupertino.dart';
43
import 'package:get/get.dart';
54
import 'package:tmail_ui_user/features/home/presentation/home_controller.dart';
@@ -9,8 +8,6 @@ class HomeView extends GetWidget<HomeController> {
98

109
@override
1110
Widget build(BuildContext context) {
12-
ThemeUtils.setSystemDarkUIStyle();
13-
1411
return Container(
1512
color: AppColor.primaryLightColor,
1613
child: const SizedBox(

lib/features/login/presentation/login_controller.dart

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import 'package:core/presentation/extensions/url_extension.dart';
22
import 'package:core/presentation/state/failure.dart';
33
import 'package:core/presentation/state/success.dart';
44
import 'package:core/presentation/utils/keyboard_utils.dart';
5+
import 'package:core/presentation/utils/theme_utils.dart';
56
import 'package:core/utils/app_logger.dart';
67
import 'package:core/utils/platform_info.dart';
78
import 'package:dartz/dartz.dart';
@@ -90,6 +91,15 @@ class LoginController extends ReloadableController {
9091
this._dnsLookupToGetJmapUrlInteractor,
9192
);
9293

94+
@override
95+
void onInit() {
96+
if (PlatformInfo.isMobile) {
97+
ThemeUtils.setSystemDarkUIStyle();
98+
ThemeUtils.setPreferredFullOrientations();
99+
}
100+
super.onInit();
101+
}
102+
93103
@override
94104
void onReady() {
95105
super.onReady();

lib/features/login/presentation/login_view.dart

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import 'package:core/presentation/extensions/color_extension.dart';
22
import 'package:core/presentation/state/success.dart';
3-
import 'package:core/presentation/utils/theme_utils.dart';
43
import 'package:core/presentation/views/text/type_ahead_form_field_builder.dart';
54
import 'package:flutter/material.dart';
65
import 'package:flutter_typeahead/flutter_typeahead.dart';
@@ -24,8 +23,6 @@ class LoginView extends BaseLoginView {
2423

2524
@override
2625
Widget build(BuildContext context) {
27-
ThemeUtils.setSystemDarkUIStyle();
28-
2926
return PopScope(
3027
canPop: false,
3128
onPopInvoked: (didPop) => !didPop

lib/features/mailbox/presentation/mailbox_controller.dart

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,9 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
133133

134134
@override
135135
void onInit() {
136+
if (PlatformInfo.isMobile) {
137+
ThemeUtils.setStatusBarTransparentColor();
138+
}
136139
_registerObxStreamListener();
137140
super.onInit();
138141
}

lib/features/mailbox/presentation/mailbox_view.dart

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,6 @@ class MailboxView extends BaseMailboxView {
2424

2525
@override
2626
Widget build(BuildContext context) {
27-
ThemeUtils.setStatusBarTransparentColor();
28-
2927
return SafeArea(bottom: false, left: false, right: false,
3028
top: controller.responsiveUtils.isMobile(context),
3129
child: ClipRRect(

lib/features/mailto/presentation/mailto_url_view.dart

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import 'package:core/presentation/extensions/color_extension.dart';
2-
import 'package:core/presentation/utils/theme_utils.dart';
32
import 'package:flutter/cupertino.dart';
43
import 'package:get/get.dart';
54
import 'package:tmail_ui_user/features/mailto/presentation/mailto_url_controller.dart';
@@ -9,8 +8,6 @@ class MailtoUrlView extends GetWidget<MailtoUrlController> {
98

109
@override
1110
Widget build(BuildContext context) {
12-
ThemeUtils.setSystemDarkUIStyle();
13-
1411
return Container(
1512
color: AppColor.primaryLightColor,
1613
child: const SizedBox(

lib/features/starting_page/presentation/twake_id/twake_id_controller.dart

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11

2+
import 'package:core/presentation/utils/theme_utils.dart';
23
import 'package:get/get.dart';
34
import 'package:tmail_ui_user/features/login/presentation/login_form_type.dart';
45
import 'package:tmail_ui_user/features/login/presentation/model/login_arguments.dart';
@@ -7,6 +8,12 @@ import 'package:tmail_ui_user/main/routes/route_navigation.dart';
78

89
class TwakeIdController extends GetxController {
910

11+
@override
12+
void onInit() {
13+
ThemeUtils.setPreferredPortraitOrientations();
14+
super.onInit();
15+
}
16+
1017
void handleUseCompanyServer() {
1118
popAndPush(
1219
AppRoutes.login,

lib/features/starting_page/presentation/twake_id/twake_id_view.dart

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import 'package:flutter/material.dart';
2-
import 'package:flutter/services.dart';
32
import 'package:get/get.dart';
43
import 'package:linagora_design_flutter/linagora_design_flutter.dart';
54
import 'package:tmail_ui_user/features/starting_page/presentation/twake_id/twake_id_controller.dart';
@@ -11,11 +10,6 @@ class TwakeIdView extends GetWidget<TwakeIdController> {
1110

1211
@override
1312
Widget build(BuildContext context) {
14-
SystemChrome.setPreferredOrientations([
15-
DeviceOrientation.portraitUp,
16-
DeviceOrientation.portraitDown
17-
]);
18-
1913
return TwakeIdScreen(
2014
focusColor: Colors.transparent,
2115
hoverColor: Colors.transparent,

0 commit comments

Comments
 (0)