diff --git a/lib/main.dart b/lib/main.dart index 8e198ecf..c9dd8ef3 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -11,6 +11,7 @@ import 'package:fstapp/services/NotificationHelper.dart'; import 'package:easy_localization/easy_localization.dart'; import 'package:flutter/material.dart'; import 'package:flutter_animate/flutter_animate.dart'; +import 'package:fstapp/services/StylesHelper.dart'; import 'package:fstapp/services/TimeHelper.dart'; import 'package:fstapp/widgets/TimeTravelWidget.dart'; import 'package:go_router/go_router.dart'; @@ -39,8 +40,7 @@ Future initializeEverything() async { print('Initialization started'); GoRouter.optionURLReflectsImperativeAPIs = true; WidgetsFlutterBinding.ensureInitialized(); - SystemChrome.setSystemUIOverlayStyle(const SystemUiOverlayStyle(statusBarColor: Colors.red)); - SystemChrome.setEnabledSystemUIMode(SystemUiMode.manual, overlays: [SystemUiOverlay.bottom]); + StylesHelper.setMetaThemeColor(Colors.red); print('Widgets binding initialized'); try { diff --git a/lib/services/StylesHelper.dart b/lib/services/StylesHelper.dart new file mode 100644 index 00000000..bd37a548 --- /dev/null +++ b/lib/services/StylesHelper.dart @@ -0,0 +1,16 @@ +import 'package:flutter/material.dart'; + +import 'js/js_interop.dart'; + +extension ColorString on Color { + String toHexString() { + return '#${(value & 0xFFFFFF).toRadixString(16).padLeft(6, '0').toUpperCase()}'; + } +} + +class StylesHelper{ + static final JSInterop jsInterop = JSInterop(); + static void setMetaThemeColor(Color color) { + jsInterop.callMethod("setMetaThemeColor", [color.toHexString()]); + } +} \ No newline at end of file diff --git a/web/index.html b/web/index.html index f6317864..b13114da 100644 --- a/web/index.html +++ b/web/index.html @@ -139,6 +139,11 @@ if (callback) callback(null); } +