1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- // Copyright 2019 The FlutterCandies author. All rights reserved.
- // Use of this source code is governed by an Apache license that can be found
- // in the LICENSE file.
- import 'package:flutter/material.dart';
- import 'package:flutter/services.dart';
- import 'extensions/color_extension.dart';
- import 'extensions/l10n_extensions.dart';
- import 'l10n/gen/app_localizations.dart';
- import 'pages/splash_page.dart';
- const Color themeColor = Color(0xff00bc56);
- /// The mock size is used for integration tests.
- /// Changing this requires at least a hot-restart.
- const Size? mockSize = null;
- String? packageVersion;
- void main() {
- runApp(const MyApp());
- SystemChrome.setSystemUIOverlayStyle(
- SystemUiOverlayStyle.dark.copyWith(statusBarColor: Colors.transparent),
- );
- }
- class MyApp extends StatelessWidget {
- const MyApp({super.key});
- @override
- Widget build(BuildContext context) {
- return MaterialApp(
- onGenerateTitle: (BuildContext context) => context.l10n.appTitle,
- theme: ThemeData(
- brightness: Brightness.light,
- primarySwatch: themeColor.swatch,
- textSelectionTheme: const TextSelectionThemeData(
- cursorColor: themeColor,
- ),
- ),
- darkTheme: ThemeData(
- brightness: Brightness.dark,
- primarySwatch: themeColor.swatch,
- textSelectionTheme: const TextSelectionThemeData(
- cursorColor: themeColor,
- ),
- ),
- home: const SplashPage(),
- localizationsDelegates: AppLocalizations.localizationsDelegates,
- supportedLocales: AppLocalizations.supportedLocales,
- builder: (context, child) {
- if (mockSize == null) {
- return child!;
- }
- final mq = MediaQuery.of(context).copyWith(size: mockSize);
- return MediaQuery(
- data: mq,
- child: Align(
- alignment: Alignment.topCenter,
- child: SizedBox.fromSize(size: mockSize, child: child),
- ),
- );
- },
- );
- }
- }
|