defaultDarkTheme property

ThemeData defaultDarkTheme

The Default Dark Theme. The coolest Theme. If you wan't a cool Theme, that is different from the Standard Flutter Theme, but you don't want to make your own Theme, or you don't know how to, use this Theme.

Implementation

static ThemeData get defaultDarkTheme => ThemeData(
      // General Values
      useMaterial3: true,
      brightness: Brightness.dark,
      materialTapTargetSize: MaterialTapTargetSize.padded,
      cupertinoOverrideTheme: NoDefaultCupertinoThemeData(
        brightness: Brightness.dark,
        scaffoldBackgroundColor: Colors.grey.shade800,
        primaryColor: Coloring.mainColor,
      ),
      visualDensity: VisualDensity.adaptivePlatformDensity,

      // Colors
      primaryColor: Coloring.mainColor,
      colorScheme: Coloring.darkColorScheme,
      focusColor: Coloring.focusedBorderSideColor,
      dividerColor: Coloring.dividerColor,
      disabledColor: Coloring.disabledColor,
      scaffoldBackgroundColor: Coloring.darkBackgroundColor,
      shadowColor: Colors.black87,
      primaryColorDark: Coloring.mainColor,
      primaryColorLight: Coloring.mainColor,
      dialogBackgroundColor: Colors.grey.shade800,

      /* Button Themes */
      buttonTheme: ButtonThemeData(
        materialTapTargetSize: MaterialTapTargetSize.padded,
        alignedDropdown: false,
        buttonColor: Coloring.mainColor,
        disabledColor: Coloring.disabledColor,
        colorScheme: Coloring.darkColorScheme,
        layoutBehavior: ButtonBarLayoutBehavior.padded,
        textTheme: ButtonTextTheme.normal,
        focusColor: Coloring.mainColor,
      ),

      // Text Button Theme
      textButtonTheme: TextButtonThemeData(
        style: ButtonStyle(
          foregroundColor: MaterialStateProperty.all<Color>(
            Coloring.secondaryColor,
          ),
          backgroundColor: MaterialStateProperty.all<Color>(
            Coloring.mainColor,
          ),
          alignment: Alignment.center,
          enableFeedback: true,
          side: MaterialStateProperty.all<BorderSide>(
            BorderValues.buttonBorderSide,
          ),
          tapTargetSize: MaterialTapTargetSize.padded,
          visualDensity: VisualDensity.adaptivePlatformDensity,
        ),
      ),

      // Toogle Buttons Theme
      toggleButtonsTheme: const ToggleButtonsThemeData(),

      // Elevated Button Theme
      elevatedButtonTheme: ElevatedButtonThemeData(
        style: ButtonStyle(
          alignment: Alignment.center,
          backgroundColor: MaterialStateProperty.all<Color>(
            Coloring.mainColor,
          ),
          enableFeedback: true,
          foregroundColor: MaterialStateProperty.all<Color>(
            Coloring.secondaryColor,
          ),
          shape: MaterialStateProperty.all<OutlinedBorder>(
            RoundedRectangleBorder(
              borderRadius: const BorderRadius.all(Radius.circular(20.0)),
              side: BorderValues.buttonBorderSide,
            ),
          ),
          side: MaterialStateProperty.all<BorderSide>(
            BorderValues.buttonBorderSide,
          ),
        ),
      ),

      // Outline Button Theme
      outlinedButtonTheme: OutlinedButtonThemeData(
        style: ButtonStyle(
          foregroundColor:
              MaterialStateProperty.all<Color>(Coloring.secondaryColor),
          backgroundColor:
              MaterialStateProperty.all<Color>(Coloring.mainColor),
          alignment: Alignment.center,
          enableFeedback: true,
          tapTargetSize: MaterialTapTargetSize.padded,
          visualDensity: VisualDensity.adaptivePlatformDensity,
        ),
      ),

      /// Floating Action Button Theme
      floatingActionButtonTheme: FloatingActionButtonThemeData(
        backgroundColor: Coloring.mainColor,
        elevation: 15,
        disabledElevation: 5,
        enableFeedback: true,
        focusColor: Coloring.mainColor.withOpacity(0.4),
        focusElevation: 17,
        foregroundColor: Coloring.secondaryColor,
        hoverElevation: 17,
        shape: RoundedRectangleBorder(
          borderRadius: const BorderRadius.all(Radius.circular(30)),
          side: BorderSide(
            color: Coloring.mainColor,
            style: BorderStyle.solid,
            width: 0.25,
          ),
        ),
      ),

      // Input Decoration Theme
      inputDecorationTheme: InputDecorationTheme(
        alignLabelWithHint: true,
        filled: false,
        floatingLabelAlignment: FloatingLabelAlignment.center,
        floatingLabelBehavior: FloatingLabelBehavior.auto,
        labelStyle: TextValues.darkInputLabelStyle,
        floatingLabelStyle: TextValues.darkInputFloatingLabelStyle,
        helperMaxLines: 2,
        isCollapsed: false,
        isDense: false,
        border: OutlineInputBorder(
          borderRadius: BorderValues.inputBorderRadius,
          borderSide: BorderValues.darkBorderSide,
        ),
        enabledBorder: OutlineInputBorder(
          borderRadius: BorderValues.inputBorderRadius,
          borderSide: BorderValues.darkBorderSide,
        ),
        errorBorder: OutlineInputBorder(
          borderRadius: BorderValues.inputBorderRadius,
          borderSide: BorderValues.errorBorderSide,
        ),
        focusedBorder: OutlineInputBorder(
          borderRadius: BorderValues.inputBorderRadius,
          borderSide: BorderValues.darkFocusedBoderSide,
        ),
        focusedErrorBorder: OutlineInputBorder(
          borderRadius: BorderValues.inputBorderRadius,
          borderSide: BorderValues.errorBorderSide,
        ),
        disabledBorder: OutlineInputBorder(
          borderRadius: BorderValues.inputBorderRadius,
          borderSide: BorderValues.lightDisabledBorderSide,
        ),
        errorMaxLines: 10,
        errorStyle: TextValues.errorStyle,
        fillColor: Coloring.fillColor,
      ),

      // Divider Theme
      dividerTheme: const DividerThemeData(
        color: Coloring.dividerColor,
        thickness: NumberValues.dividerThickness,
      ),

      /* AppBar Themes */
      appBarTheme: AppBarTheme(
        centerTitle: true,
        elevation: 5.0,
        systemOverlayStyle: SystemUiOverlayStyle(
          statusBarBrightness: BrightnessValues.statusBarBrightness,
          statusBarColor: Coloring.mainColor,
          statusBarIconBrightness: BrightnessValues.statusBarBrightness,
          systemNavigationBarColor: Colors.transparent,
          systemNavigationBarIconBrightness:
              BrightnessValues.statusBarBrightness,
          systemNavigationBarDividerColor: Colors.red,
        ),
        backgroundColor: Coloring.mainColor,
        iconTheme: IconThemes.iconTheme,
        actionsIconTheme: IconThemes.iconTheme,
        shadowColor: Colors.black87,
        foregroundColor: Coloring.secondaryColor,
        shape: RoundedRectangleBorder(
          borderRadius: const BorderRadius.only(
            bottomLeft: Radius.circular(33),
            bottomRight: Radius.circular(33),
          ),
          side: BorderSide(
            color: Coloring.mainColor.withAlpha(50),
            style: BorderStyle.solid,
            width: 1.0,
          ),
        ),
      ),

      // Bottom AppBar Themee
      bottomAppBarTheme: const BottomAppBarTheme(),

      // Bottom Navigation Bar Theme
      bottomNavigationBarTheme: BottomNavigationBarThemeData(
        elevation: 10.0,
        enableFeedback: true,
        landscapeLayout: BottomNavigationBarLandscapeLayout.linear,
        backgroundColor: Coloring.mainColor,
        selectedIconTheme: IconThemes.iconTheme,
        unselectedIconTheme: IconThemes.iconTheme,
        selectedItemColor: Coloring.secondaryColor,
        unselectedItemColor: Coloring.secondaryColor,
        showSelectedLabels: true,
        showUnselectedLabels: false,
        type: BottomNavigationBarType.shifting,
        mouseCursor: MaterialStateProperty.resolveWith(
          ((states) => _bottomNavigationBarMouseCursor(states)),
        ),
      ),

      /* Radio Theme */
      radioTheme: RadioThemeData(
        fillColor: MaterialStateProperty.all<Color>(Coloring.mainColor),
        visualDensity: VisualDensity.adaptivePlatformDensity,
        materialTapTargetSize: MaterialTapTargetSize.padded,
      ),

      /* List Tile Theme */
      listTileTheme: ListTileThemeData(
        enableFeedback: true,
        style: ListTileStyle.list,
        dense: false,
        iconColor: Coloring.darkTextColor,
        textColor: Coloring.darkTextColor,
        shape: RoundedRectangleBorder(
          borderRadius: const BorderRadius.all(
            Radius.circular(50),
          ),
          side: BorderSide(
            color: Coloring.darkBackgroundColor,
            style: BorderStyle.solid,
            width: 0.5,
          ),
        ),
        minLeadingWidth: 10,
        minVerticalPadding: 10,
      ),

      /* Icon Themes */
      iconTheme: IconThemes.darkIconTheme,
      primaryIconTheme: IconThemes.darkIconTheme,

      /* Checkbox Theme */
      checkboxTheme: CheckboxThemeData(
        checkColor: MaterialStateProperty.all<Color>(Coloring.secondaryColor),
        fillColor: MaterialStateProperty.all<Color>(Coloring.mainColor),
        materialTapTargetSize: MaterialTapTargetSize.padded,
        visualDensity: VisualDensity.adaptivePlatformDensity,
        shape: const RoundedRectangleBorder(
          borderRadius: BorderRadius.all(
            Radius.circular(30),
          ),
        ),
        side: BorderSide(
          color: Coloring.mainColor,
          style: BorderStyle.solid,
          width: 0.7,
        ),
      ),

      /* Switch Theme Data */
      switchTheme: const SwitchThemeData(
        materialTapTargetSize: MaterialTapTargetSize.padded,
      ),

      /* Bottom Sheet Theme */
      bottomSheetTheme: BottomSheetThemeData(
        modalBackgroundColor: Colors.grey.shade800,
        modalElevation: 10.0,
        backgroundColor: Colors.grey.shade800,
        clipBehavior: Clip.antiAliasWithSaveLayer,
        elevation: 10.0,
        shape: RoundedRectangleBorder(
          borderRadius: const BorderRadius.all(
            Radius.circular(30),
          ),
          side: BorderSide(
            color: Coloring.mainColor,
            style: BorderStyle.solid,
            width: 0.2,
          ),
        ),
      ),

      /* Dialog Theme */
      dialogTheme: DialogTheme(
        alignment: Alignment.center,
        backgroundColor: Colors.grey.shade800,
        elevation: 25.0,
        shape: RoundedRectangleBorder(
          borderRadius: const BorderRadius.all(
            Radius.circular(20),
          ),
          side: BorderSide(
            color: Coloring.mainColor,
            style: BorderStyle.solid,
            width: 0.1,
          ),
        ),
      ),

      /* Text Theme */
      textTheme: TextValues.darkTextTheme,

      /* Progress Indicator Theme */
      progressIndicatorTheme: ProgressIndicatorThemeData(
        circularTrackColor: Coloring.darkBackgroundColor,
        color: Coloring.mainColor,
        refreshBackgroundColor: Coloring.darkBackgroundColor,
      ),

      /* Drawer Theme */
      drawerTheme: DrawerThemeData(
        backgroundColor: Colors.grey.shade900,
        elevation: 7.0,
      ),

      /* Typography */
      typography: Typography.material2021(),

      /* Scrollbar Theme */
      scrollbarTheme: ScrollbarThemeData(
        trackVisibility: MaterialStateProperty.all<bool>(true),
        interactive: true,
        thumbVisibility: MaterialStateProperty.all<bool>(false),
        radius: const Radius.circular(20),
      ),
    );