diff --git a/example/ios/Flutter/AppFrameworkInfo.plist b/example/ios/Flutter/AppFrameworkInfo.plist index 6b4c0f78..d57061dd 100644 --- a/example/ios/Flutter/AppFrameworkInfo.plist +++ b/example/ios/Flutter/AppFrameworkInfo.plist @@ -21,6 +21,6 @@ CFBundleVersion 1.0 MinimumOSVersion - 8.0 + 13.0 diff --git a/example/ios/Runner.xcodeproj/project.pbxproj b/example/ios/Runner.xcodeproj/project.pbxproj index 252c7539..d254e237 100644 --- a/example/ios/Runner.xcodeproj/project.pbxproj +++ b/example/ios/Runner.xcodeproj/project.pbxproj @@ -3,7 +3,7 @@ archiveVersion = 1; classes = { }; - objectVersion = 46; + objectVersion = 54; objects = { /* Begin PBXBuildFile section */ @@ -135,7 +135,7 @@ 97C146E61CF9000F007C117D /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 1020; + LastUpgradeCheck = 1510; ORGANIZATIONNAME = "The Chromium Authors"; TargetAttributes = { 97C146ED1CF9000F007C117D = { @@ -179,10 +179,12 @@ /* Begin PBXShellScriptBuildPhase section */ 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; buildActionMask = 2147483647; files = ( ); inputPaths = ( + "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}", ); name = "Thin Binary"; outputPaths = ( @@ -193,6 +195,7 @@ }; 9740EEB61CF901F6004384FC /* Run Script */ = { isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; buildActionMask = 2147483647; files = ( ); @@ -280,7 +283,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; @@ -362,7 +365,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; @@ -411,7 +414,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; diff --git a/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata index 1d526a16..919434a6 100644 --- a/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata +++ b/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -2,6 +2,6 @@ + location = "self:"> diff --git a/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme index a28140cf..fc5ae031 100644 --- a/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ b/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -1,6 +1,6 @@ @@ -45,11 +46,13 @@ buildConfiguration = "Debug" selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" + customLLDBInitFile = "$(SRCROOT)/Flutter/ephemeral/flutter_lldbinit" launchStyle = "0" useCustomWorkingDirectory = "NO" ignoresPersistentStateOnLaunch = "NO" debugDocumentVersioning = "YES" debugServiceExtension = "internal" + enableGPUValidationMode = "1" allowLocationSimulation = "YES"> diff --git a/example/ios/Runner/AppDelegate.swift b/example/ios/Runner/AppDelegate.swift index 70693e4a..b6363034 100644 --- a/example/ios/Runner/AppDelegate.swift +++ b/example/ios/Runner/AppDelegate.swift @@ -1,7 +1,7 @@ import UIKit import Flutter -@UIApplicationMain +@main @objc class AppDelegate: FlutterAppDelegate { override func application( _ application: UIApplication, diff --git a/example/ios/Runner/Info.plist b/example/ios/Runner/Info.plist index a060db61..4f68a2ce 100644 --- a/example/ios/Runner/Info.plist +++ b/example/ios/Runner/Info.plist @@ -41,5 +41,9 @@ UIViewControllerBasedStatusBarAppearance + CADisableMinimumFrameDurationOnPhone + + UIApplicationSupportsIndirectInputEvents + diff --git a/example/lib/accessibility/neumorphic_accessibility.dart b/example/lib/accessibility/neumorphic_accessibility.dart index 15f6223a..8f90e669 100644 --- a/example/lib/accessibility/neumorphic_accessibility.dart +++ b/example/lib/accessibility/neumorphic_accessibility.dart @@ -1,5 +1,4 @@ import 'package:example/lib/color_selector.dart'; -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class NeumorphicAccessibility extends StatefulWidget { @@ -40,8 +39,8 @@ class __PageState extends State<_Page> { double height = 150.0; double width = 150.0; - Color borderColor; - double borderWidth; + Color? borderColor; + double? borderWidth; static final minWidth = 50.0; static final maxWidth = 200.0; @@ -68,10 +67,12 @@ class __PageState extends State<_Page> { Padding( padding: const EdgeInsets.only(left: 8.0, right: 8.0, top: 8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), - color: Theme.of(context).accentColor, + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12)), + backgroundColor: Theme.of(context).colorScheme.secondary, + ), child: Text( "back", style: TextStyle(color: Colors.white), @@ -104,11 +105,11 @@ class __PageState extends State<_Page> { int selectedConfiguratorIndex = 0; Widget _configurators() { - final Color buttonActiveColor = Theme.of(context).accentColor; + final Color buttonActiveColor = Theme.of(context).colorScheme.secondary; final Color buttonInnactiveColor = Colors.white; final Color textActiveColor = Colors.white; - final Color textInactiveColor = Colors.black.withOpacity(0.3); + final Color textInactiveColor = Colors.black.withValues(alpha: 0.3); return Card( margin: EdgeInsets.all(8), @@ -124,12 +125,14 @@ class __PageState extends State<_Page> { flex: 1, child: Padding( padding: const EdgeInsets.all(8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), - color: selectedConfiguratorIndex == 0 - ? buttonActiveColor - : buttonInnactiveColor, + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12)), + backgroundColor: selectedConfiguratorIndex == 0 + ? buttonActiveColor + : buttonInnactiveColor, + ), child: Text( "Style", style: TextStyle( @@ -150,9 +153,14 @@ class __PageState extends State<_Page> { flex: 1, child: Padding( padding: const EdgeInsets.all(8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12)), + backgroundColor: selectedConfiguratorIndex == 1 + ? buttonActiveColor + : buttonInnactiveColor, + ), child: Text( "Element", style: TextStyle( @@ -161,9 +169,6 @@ class __PageState extends State<_Page> { : textInactiveColor, ), ), - color: selectedConfiguratorIndex == 1 - ? buttonActiveColor - : buttonInnactiveColor, onPressed: () { setState(() { selectedConfiguratorIndex = 1; @@ -176,9 +181,14 @@ class __PageState extends State<_Page> { flex: 1, child: Padding( padding: const EdgeInsets.all(8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12)), + backgroundColor: selectedConfiguratorIndex == 2 + ? buttonActiveColor + : buttonInnactiveColor, + ), child: Text( "Border", style: TextStyle( @@ -187,9 +197,6 @@ class __PageState extends State<_Page> { : textInactiveColor, ), ), - color: selectedConfiguratorIndex == 2 - ? buttonActiveColor - : buttonInnactiveColor, onPressed: () { setState(() { selectedConfiguratorIndex = 2; @@ -210,15 +217,14 @@ class __PageState extends State<_Page> { switch (selectedConfiguratorIndex) { case 0: return styleCustomizer(); - break; + case 1: return elementCustomizer(); - break; + case 2: return borderCustomizer(); - break; } - return null; + return const SizedBox.shrink(); } Widget styleCustomizer() { @@ -268,7 +274,7 @@ class __PageState extends State<_Page> { onColorChanged: (color) { setState(() { NeumorphicTheme.of(context) - .updateCurrentTheme(NeumorphicThemeData(baseColor: color)); + ?.updateCurrentTheme(NeumorphicThemeData(baseColor: color)); }); }, color: NeumorphicTheme.baseColor(context), @@ -293,7 +299,7 @@ class __PageState extends State<_Page> { borderColor = color; }); }, - color: borderColor, + color: borderColor ?? Colors.transparent, ), ], ); @@ -325,7 +331,7 @@ class __PageState extends State<_Page> { child: SizedBox( height: height, width: width, - child: Container( + child: SizedBox( //color: Colors.blue, child: Center(child: Text("")), ), @@ -371,7 +377,7 @@ class __PageState extends State<_Page> { child: Slider( min: 0, max: 10, - value: borderWidth, + value: borderWidth ?? 0, onChanged: (value) { setState(() { borderWidth = value; @@ -381,7 +387,7 @@ class __PageState extends State<_Page> { ), Padding( padding: EdgeInsets.only(right: 12), - child: Text(borderWidth.floor().toString()), + child: Text((borderWidth ?? 0).floor().toString()), ), ], ); @@ -513,11 +519,11 @@ class __PageState extends State<_Page> { } Widget shapeWidget() { - final Color buttonActiveColor = Theme.of(context).accentColor; + final Color buttonActiveColor = Theme.of(context).colorScheme.secondary; final Color buttonInnactiveColor = Colors.white; final Color iconActiveColor = Colors.white; - final Color iconInactiveColor = Colors.black.withOpacity(0.3); + final Color iconInactiveColor = Colors.black.withValues(alpha: 0.3); return Row( mainAxisSize: MainAxisSize.max, @@ -525,17 +531,20 @@ class __PageState extends State<_Page> { Expanded( child: Padding( padding: const EdgeInsets.all(8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12), + ), + backgroundColor: shape == NeumorphicShape.concave + ? buttonActiveColor + : buttonInnactiveColor, + ), onPressed: () { setState(() { shape = NeumorphicShape.concave; }); }, - color: shape == NeumorphicShape.concave - ? buttonActiveColor - : buttonInnactiveColor, child: Image.asset("assets/images/concave.png", color: shape == NeumorphicShape.concave ? iconActiveColor @@ -546,17 +555,20 @@ class __PageState extends State<_Page> { Expanded( child: Padding( padding: const EdgeInsets.all(8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12), + ), + backgroundColor: shape == NeumorphicShape.convex + ? buttonActiveColor + : buttonInnactiveColor, + ), onPressed: () { setState(() { shape = NeumorphicShape.convex; }); }, - color: shape == NeumorphicShape.convex - ? buttonActiveColor - : buttonInnactiveColor, child: Image.asset("assets/images/convex.png", color: shape == NeumorphicShape.convex ? iconActiveColor @@ -567,17 +579,20 @@ class __PageState extends State<_Page> { Expanded( child: Padding( padding: const EdgeInsets.all(8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12), + ), + backgroundColor: shape == NeumorphicShape.flat + ? buttonActiveColor + : buttonInnactiveColor, + ), onPressed: () { setState(() { shape = NeumorphicShape.flat; }); }, - color: shape == NeumorphicShape.flat - ? buttonActiveColor - : buttonInnactiveColor, child: Image.asset("assets/images/flat.png", color: shape == NeumorphicShape.flat ? iconActiveColor diff --git a/example/lib/lib/Code.dart b/example/lib/lib/Code.dart index 7e02ee7e..684688a5 100644 --- a/example/lib/lib/Code.dart +++ b/example/lib/lib/Code.dart @@ -1,4 +1,3 @@ -import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; class Code extends StatelessWidget { @@ -10,10 +9,10 @@ class Code extends StatelessWidget { Widget build(BuildContext context) { return Container( padding: EdgeInsets.all(8), - color: Colors.grey.withOpacity(0.2), + color: Colors.grey.withValues(alpha: 0.2), child: Text( text, - style: TextStyle(color: Colors.black.withOpacity(0.8)), + style: TextStyle(color: Colors.black.withValues(alpha: 0.8)), ), ); } @@ -22,7 +21,7 @@ class Code extends StatelessWidget { class MyIntWidget extends StatefulWidget { final int value; - MyIntWidget({this.value}); + MyIntWidget({required this.value}); @override _MyIntWidgetState createState() => _MyIntWidgetState(); @@ -30,9 +29,9 @@ class MyIntWidget extends StatefulWidget { class _MyIntWidgetState extends State with TickerProviderStateMixin { - int _value; - AnimationController _controller; - Animation _valueAnimation; + late int _value; + late AnimationController _controller; + late Animation _valueAnimation; @override void initState() { diff --git a/example/lib/lib/ThemeColorSelector.dart b/example/lib/lib/ThemeColorSelector.dart index b9f3fcf4..8aceb2a2 100644 --- a/example/lib/lib/ThemeColorSelector.dart +++ b/example/lib/lib/ThemeColorSelector.dart @@ -1,4 +1,3 @@ -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; import 'color_selector.dart'; @@ -6,7 +5,7 @@ import 'color_selector.dart'; class ThemeColorSelector extends StatefulWidget { final BuildContext customContext; - ThemeColorSelector({this.customContext}); + ThemeColorSelector({required this.customContext}); @override _ThemeColorSelectorState createState() => _ThemeColorSelectorState(); @@ -19,11 +18,14 @@ class _ThemeColorSelectorState extends State { padding: EdgeInsets.all(4), color: Colors.black, child: ColorSelector( - color: NeumorphicTheme.baseColor(widget.customContext ?? context), + color: NeumorphicTheme.baseColor(widget.customContext), onColorChanged: (color) { setState(() { - NeumorphicTheme.update(widget.customContext ?? context, - (current) => current.copyWith(baseColor: color)); + NeumorphicTheme.update( + widget.customContext, + (current) => + current?.copyWith(baseColor: color) ?? + NeumorphicThemeData(baseColor: color)); }); }, ), diff --git a/example/lib/lib/ThemeConfigurator.dart b/example/lib/lib/ThemeConfigurator.dart index d6f6000e..f8072290 100644 --- a/example/lib/lib/ThemeConfigurator.dart +++ b/example/lib/lib/ThemeConfigurator.dart @@ -1,4 +1,3 @@ -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; import 'ThemeColorSelector.dart'; @@ -50,7 +49,7 @@ class ThemeConfigurator extends StatelessWidget { class _ThemeConfiguratorDialog extends StatefulWidget { final BuildContext contextContainingTheme; - _ThemeConfiguratorDialog({this.contextContainingTheme}); + _ThemeConfiguratorDialog({required this.contextContainingTheme}); @override _ThemeConfiguratorState createState() => _ThemeConfiguratorState(); @@ -82,14 +81,14 @@ class _ThemeConfiguratorState extends State<_ThemeConfiguratorDialog> { child: Slider( min: Neumorphic.MIN_INTENSITY, //in case of != 0 max: Neumorphic.MAX_INTENSITY, - value: intensity, + value: intensity ?? 0, onChanged: (value) { setState(() { NeumorphicTheme.update( widget.contextContainingTheme, - (current) => current.copyWith( - intensity: value, - ), + (current) => + current?.copyWith(intensity: value) ?? + NeumorphicThemeData(intensity: value), ); }); }, @@ -99,7 +98,7 @@ class _ThemeConfiguratorState extends State<_ThemeConfiguratorDialog> { padding: EdgeInsets.only(right: 12), child: Container( width: 40, - child: Text(((intensity * 100).floor() / 100).toString()), + child: Text(((intensity ?? 0 * 100).floor() / 100).toString()), ), ), ], @@ -119,12 +118,14 @@ class _ThemeConfiguratorState extends State<_ThemeConfiguratorDialog> { child: Slider( min: Neumorphic.MIN_DEPTH, max: Neumorphic.MAX_DEPTH, - value: depth, + value: depth ?? 0, onChanged: (value) { setState(() { NeumorphicTheme.update( widget.contextContainingTheme, - (current) => current.copyWith(depth: value), + (current) => + current?.copyWith(depth: value) ?? + NeumorphicThemeData(depth: value), ); }); }, @@ -134,7 +135,7 @@ class _ThemeConfiguratorState extends State<_ThemeConfiguratorDialog> { padding: EdgeInsets.only(right: 12), child: Container( width: 40, - child: Text(depth.floor().toString()), + child: Text((depth ?? 0).floor().toString()), ), ), ], diff --git a/example/lib/lib/back_button.dart b/example/lib/lib/back_button.dart index 6f0b876a..79453357 100644 --- a/example/lib/lib/back_button.dart +++ b/example/lib/lib/back_button.dart @@ -1,5 +1,3 @@ -import 'package:flutter/material.dart'; -import 'package:flutter/widgets.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class NeumorphicBack extends StatelessWidget { diff --git a/example/lib/lib/color_selector.dart b/example/lib/lib/color_selector.dart index 44133300..56611b92 100644 --- a/example/lib/lib/color_selector.dart +++ b/example/lib/lib/color_selector.dart @@ -1,7 +1,4 @@ -import 'dart:ui'; - import 'package:flutter/material.dart'; -import 'package:flutter/widgets.dart'; import 'package:flutter_colorpicker/flutter_colorpicker.dart'; @immutable @@ -12,7 +9,10 @@ class ColorSelector extends StatelessWidget { final double width; const ColorSelector( - {this.height = 40, this.width = 40, this.color, this.onColorChanged}); + {this.height = 40, + this.width = 40, + required this.color, + required this.onColorChanged}); @override Widget build(BuildContext context) { @@ -44,12 +44,16 @@ class ColorSelector extends StatelessWidget { child: ColorPicker( pickerColor: color, onColorChanged: this.onColorChanged, - showLabel: true, pickerAreaHeightPercent: 0.8, ), ), actions: [ - FlatButton( + ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12), + ), + ), child: const Text('Close'), onPressed: () { Navigator.of(context).pop(); diff --git a/example/lib/lib/top_bar.dart b/example/lib/lib/top_bar.dart index a96d23c2..a8a6be7f 100644 --- a/example/lib/lib/top_bar.dart +++ b/example/lib/lib/top_bar.dart @@ -1,5 +1,3 @@ -import 'package:flutter/material.dart'; -import 'package:flutter/widgets.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; import 'back_button.dart'; @@ -10,7 +8,7 @@ class TopBar extends StatelessWidget implements PreferredSizeWidget { static const double kToolbarHeight = 110.0; - const TopBar({this.title = "", this.actions}); + const TopBar({this.title = "", this.actions = const []}); @override Widget build(BuildContext context) { @@ -36,7 +34,7 @@ class TopBar extends StatelessWidget implements PreferredSizeWidget { alignment: Alignment.centerRight, child: Row( mainAxisSize: MainAxisSize.min, - children: actions ?? [], + children: actions, )), ], ), diff --git a/example/lib/main.dart b/example/lib/main.dart index 0ae45ac6..84f2d266 100644 --- a/example/lib/main.dart +++ b/example/lib/main.dart @@ -28,7 +28,7 @@ class MyApp extends StatelessWidget { } class MyHomePage extends StatelessWidget { - MyHomePage({Key key}) : super(key: key); + MyHomePage({Key? key}) : super(key: key); Widget build(BuildContext context) { return Scaffold( @@ -58,7 +58,7 @@ class MyHomePage extends StatelessWidget { NeumorphicButton( margin: EdgeInsets.only(top: 12), onPressed: () { - NeumorphicTheme.of(context).themeMode = + NeumorphicTheme.of(context)?.themeMode = NeumorphicTheme.isUsingDark(context) ? ThemeMode.light : ThemeMode.dark; @@ -100,10 +100,10 @@ class MyHomePage extends StatelessWidget { Color _iconsColor(BuildContext context) { final theme = NeumorphicTheme.of(context); - if (theme.isUsingDark) { - return theme.current.accentColor; + if (theme?.isUsingDark ?? false) { + return theme?.current?.accentColor ?? Colors.black; } else { - return null; + return Colors.black; } } diff --git a/example/lib/main_home.dart b/example/lib/main_home.dart index b6d42dfb..aca75e78 100644 --- a/example/lib/main_home.dart +++ b/example/lib/main_home.dart @@ -1,6 +1,5 @@ import 'package:example/tips/tips_home.dart'; import 'package:example/widgets/widgets_home.dart'; -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; import 'accessibility/neumorphic_accessibility.dart'; @@ -24,7 +23,7 @@ class MyApp extends StatelessWidget { } class FullSampleHomePage extends StatelessWidget { - Widget _buildButton({String text, VoidCallback onClick}) { + Widget _buildButton({required String text, required VoidCallback onClick}) { return NeumorphicButton( margin: EdgeInsets.only(bottom: 12), padding: EdgeInsets.symmetric( diff --git a/example/lib/playground/neumorphic_playground.dart b/example/lib/playground/neumorphic_playground.dart index eb52041c..d04d629e 100644 --- a/example/lib/playground/neumorphic_playground.dart +++ b/example/lib/playground/neumorphic_playground.dart @@ -30,7 +30,7 @@ class _Page extends StatefulWidget { class __PageState extends State<_Page> { LightSource lightSource = LightSource.topLeft; NeumorphicShape shape = NeumorphicShape.flat; - NeumorphicBoxShape boxShape; + late NeumorphicBoxShape boxShape; double depth = 5; double intensity = 0.5; double surfaceIntensity = 0.5; @@ -68,10 +68,12 @@ class __PageState extends State<_Page> { children: [ Padding( padding: const EdgeInsets.only(left: 8.0, right: 8.0, top: 8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), - color: Theme.of(context).accentColor, + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12)), + backgroundColor: Theme.of(context).colorScheme.secondary, + ), child: Text( "back", style: TextStyle(color: Colors.white), @@ -102,11 +104,11 @@ class __PageState extends State<_Page> { int selectedConfiguratorIndex = 0; Widget _configurators() { - final Color buttonActiveColor = Theme.of(context).accentColor; + final Color buttonActiveColor = Theme.of(context).colorScheme.secondary; final Color buttonInnactiveColor = Colors.white; final Color textActiveColor = Colors.white; - final Color textInactiveColor = Colors.black.withOpacity(0.3); + final Color textInactiveColor = Colors.black.withValues(alpha: 0.3); return Card( margin: EdgeInsets.all(8), @@ -122,12 +124,14 @@ class __PageState extends State<_Page> { flex: 1, child: Padding( padding: const EdgeInsets.all(8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), - color: selectedConfiguratorIndex == 0 - ? buttonActiveColor - : buttonInnactiveColor, + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12)), + backgroundColor: selectedConfiguratorIndex == 0 + ? buttonActiveColor + : buttonInnactiveColor, + ), child: Text( "Style", style: TextStyle( @@ -148,9 +152,14 @@ class __PageState extends State<_Page> { flex: 1, child: Padding( padding: const EdgeInsets.all(8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12)), + backgroundColor: selectedConfiguratorIndex == 1 + ? buttonActiveColor + : buttonInnactiveColor, + ), child: Text( "Element", style: TextStyle( @@ -159,9 +168,6 @@ class __PageState extends State<_Page> { : textInactiveColor, ), ), - color: selectedConfiguratorIndex == 1 - ? buttonActiveColor - : buttonInnactiveColor, onPressed: () { setState(() { selectedConfiguratorIndex = 1; @@ -174,9 +180,14 @@ class __PageState extends State<_Page> { flex: 1, child: Padding( padding: const EdgeInsets.all(8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12)), + backgroundColor: selectedConfiguratorIndex == 2 + ? buttonActiveColor + : buttonInnactiveColor, + ), child: Text( "Child", style: TextStyle( @@ -185,9 +196,6 @@ class __PageState extends State<_Page> { : textInactiveColor, ), ), - color: selectedConfiguratorIndex == 2 - ? buttonActiveColor - : buttonInnactiveColor, onPressed: () { setState(() { selectedConfiguratorIndex = 2; @@ -208,15 +216,14 @@ class __PageState extends State<_Page> { switch (selectedConfiguratorIndex) { case 0: return styleCustomizer(); - break; + case 1: return elementCustomizer(); - break; + case 2: return childCustomizer(); - break; } - return null; + return const SizedBox.shrink(); } Widget styleCustomizer() { @@ -270,7 +277,7 @@ class __PageState extends State<_Page> { onColorChanged: (color) { setState(() { NeumorphicTheme.of(context) - .updateCurrentTheme(NeumorphicThemeData(baseColor: color)); + ?.updateCurrentTheme(NeumorphicThemeData(baseColor: color)); }); }, color: NeumorphicTheme.baseColor(context), @@ -307,7 +314,7 @@ class __PageState extends State<_Page> { width: width, child: haveNeumorphicChild ? neumorphicChild() - : Container( + : SizedBox( //color: Colors.blue, child: Center(child: Text("")), ), @@ -431,7 +438,7 @@ class __PageState extends State<_Page> { value: this.haveNeumorphicChild, onChanged: (value) { setState(() { - haveNeumorphicChild = value; + haveNeumorphicChild = value ?? false; }); }, ), @@ -457,7 +464,7 @@ class __PageState extends State<_Page> { value: this.drawAboveChild, onChanged: (value) { setState(() { - drawAboveChild = value; + drawAboveChild = value ?? false; }); }, ), @@ -483,7 +490,7 @@ class __PageState extends State<_Page> { value: this.childOppositeLightsourceChild, onChanged: (value) { setState(() { - childOppositeLightsourceChild = value; + childOppositeLightsourceChild = value ?? false; }); }, ), @@ -622,11 +629,11 @@ class __PageState extends State<_Page> { } Widget boxshapeWidget() { - final Color buttonActiveColor = Theme.of(context).accentColor; + final Color buttonActiveColor = Theme.of(context).colorScheme.secondary; final Color buttonInnactiveColor = Colors.white; final Color textActiveColor = Colors.white; - final Color textInactiveColor = Colors.black.withOpacity(0.3); + final Color textInactiveColor = Colors.black.withValues(alpha: 0.3); return Row( mainAxisSize: MainAxisSize.max, @@ -634,18 +641,17 @@ class __PageState extends State<_Page> { Expanded( child: Padding( padding: const EdgeInsets.all(8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12)), + ), onPressed: () { setState(() { boxShape = NeumorphicBoxShape.roundRect( BorderRadius.circular(this.cornerRadius)); }); }, - color: boxShape.isRoundRect - ? buttonActiveColor - : buttonInnactiveColor, child: Text( "Rect", style: TextStyle( @@ -659,17 +665,17 @@ class __PageState extends State<_Page> { Expanded( child: Padding( padding: const EdgeInsets.all(8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12)), + ), onPressed: () { setState(() { boxShape = NeumorphicBoxShape.beveled( BorderRadius.circular(this.cornerRadius)); }); }, - color: - boxShape.isBeveled ? buttonActiveColor : buttonInnactiveColor, child: Text( "Beveled", style: TextStyle( @@ -683,16 +689,19 @@ class __PageState extends State<_Page> { Expanded( child: Padding( padding: const EdgeInsets.all(8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12)), + backgroundColor: boxShape.isCircle + ? buttonActiveColor + : buttonInnactiveColor, + ), onPressed: () { setState(() { boxShape = NeumorphicBoxShape.circle(); }); }, - color: - boxShape.isCircle ? buttonActiveColor : buttonInnactiveColor, child: Text( "Circle", style: TextStyle( @@ -706,16 +715,19 @@ class __PageState extends State<_Page> { Expanded( child: Padding( padding: const EdgeInsets.all(8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12)), + backgroundColor: boxShape.isStadium + ? buttonActiveColor + : buttonInnactiveColor, + ), onPressed: () { setState(() { boxShape = NeumorphicBoxShape.stadium(); }); }, - color: - boxShape.isStadium ? buttonActiveColor : buttonInnactiveColor, child: Text( "Stadium", style: TextStyle( @@ -729,18 +741,20 @@ class __PageState extends State<_Page> { Expanded( child: Padding( padding: const EdgeInsets.all(8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12)), + backgroundColor: boxShape.isCustomPath + ? buttonActiveColor + : buttonInnactiveColor, + ), onPressed: () { setState(() { boxShape = NeumorphicBoxShape.path( NeumorphicFlutterLogoPathProvider()); }); }, - color: boxShape.isCustomPath - ? buttonActiveColor - : buttonInnactiveColor, child: Text( "Custom", style: TextStyle( @@ -756,11 +770,11 @@ class __PageState extends State<_Page> { } Widget shapeWidget() { - final Color buttonActiveColor = Theme.of(context).accentColor; + final Color buttonActiveColor = Theme.of(context).colorScheme.secondary; final Color buttonInnactiveColor = Colors.white; final Color iconActiveColor = Colors.white; - final Color iconInactiveColor = Colors.black.withOpacity(0.3); + final Color iconInactiveColor = Colors.black.withValues(alpha: 0.3); return Row( mainAxisSize: MainAxisSize.max, @@ -768,17 +782,19 @@ class __PageState extends State<_Page> { Expanded( child: Padding( padding: const EdgeInsets.all(8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12)), + backgroundColor: shape == NeumorphicShape.concave + ? buttonActiveColor + : buttonInnactiveColor, + ), onPressed: () { setState(() { shape = NeumorphicShape.concave; }); }, - color: shape == NeumorphicShape.concave - ? buttonActiveColor - : buttonInnactiveColor, child: Image.asset("assets/images/concave.png", color: shape == NeumorphicShape.concave ? iconActiveColor @@ -789,17 +805,19 @@ class __PageState extends State<_Page> { Expanded( child: Padding( padding: const EdgeInsets.all(8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12)), + backgroundColor: shape == NeumorphicShape.convex + ? buttonActiveColor + : buttonInnactiveColor, + ), onPressed: () { setState(() { shape = NeumorphicShape.convex; }); }, - color: shape == NeumorphicShape.convex - ? buttonActiveColor - : buttonInnactiveColor, child: Image.asset("assets/images/convex.png", color: shape == NeumorphicShape.convex ? iconActiveColor @@ -810,17 +828,19 @@ class __PageState extends State<_Page> { Expanded( child: Padding( padding: const EdgeInsets.all(8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12)), + backgroundColor: shape == NeumorphicShape.flat + ? buttonActiveColor + : buttonInnactiveColor, + ), onPressed: () { setState(() { shape = NeumorphicShape.flat; }); }, - color: shape == NeumorphicShape.flat - ? buttonActiveColor - : buttonInnactiveColor, child: Image.asset("assets/images/flat.png", color: shape == NeumorphicShape.flat ? iconActiveColor diff --git a/example/lib/playground/text_playground.dart b/example/lib/playground/text_playground.dart index f1a547cd..b5db9419 100644 --- a/example/lib/playground/text_playground.dart +++ b/example/lib/playground/text_playground.dart @@ -1,5 +1,4 @@ import 'package:example/lib/color_selector.dart'; -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class NeumorphicTextPlayground extends StatefulWidget { @@ -89,10 +88,12 @@ class __PageState extends State<_Page> { Padding( padding: const EdgeInsets.only(left: 8.0, right: 8.0, top: 8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), - color: Theme.of(context).accentColor, + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12)), + backgroundColor: Theme.of(context).colorScheme.secondary, + ), child: Text( "back", style: TextStyle(color: Colors.white), @@ -125,11 +126,11 @@ class __PageState extends State<_Page> { int selectedConfiguratorIndex = 0; Widget _configurators() { - final Color buttonActiveColor = Theme.of(context).accentColor; + final Color buttonActiveColor = Theme.of(context).colorScheme.secondary; final Color buttonInnactiveColor = Colors.white; final Color textActiveColor = Colors.white; - final Color textInactiveColor = Colors.black.withOpacity(0.3); + final Color textInactiveColor = Colors.black.withValues(alpha: 0.3); return Card( margin: EdgeInsets.all(8), @@ -145,12 +146,14 @@ class __PageState extends State<_Page> { flex: 1, child: Padding( padding: const EdgeInsets.all(8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), - color: selectedConfiguratorIndex == 0 - ? buttonActiveColor - : buttonInnactiveColor, + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12)), + backgroundColor: selectedConfiguratorIndex == 0 + ? buttonActiveColor + : buttonInnactiveColor, + ), child: Text( "Style", style: TextStyle( @@ -171,9 +174,14 @@ class __PageState extends State<_Page> { flex: 1, child: Padding( padding: const EdgeInsets.all(8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12)), + backgroundColor: selectedConfiguratorIndex == 1 + ? buttonActiveColor + : buttonInnactiveColor, + ), child: Text( "Element", style: TextStyle( @@ -182,9 +190,6 @@ class __PageState extends State<_Page> { : textInactiveColor, ), ), - color: selectedConfiguratorIndex == 1 - ? buttonActiveColor - : buttonInnactiveColor, onPressed: () { setState(() { selectedConfiguratorIndex = 1; @@ -205,12 +210,11 @@ class __PageState extends State<_Page> { switch (selectedConfiguratorIndex) { case 0: return styleCustomizer(); - break; + case 1: return elementCustomizer(); - break; } - return null; + return const SizedBox.shrink(); } Widget styleCustomizer() { @@ -238,11 +242,11 @@ class __PageState extends State<_Page> { } Widget shapeWidget() { - final Color buttonActiveColor = Theme.of(context).accentColor; + final Color buttonActiveColor = Theme.of(context).colorScheme.secondary; final Color buttonInnactiveColor = Colors.white; final Color iconActiveColor = Colors.white; - final Color iconInactiveColor = Colors.black.withOpacity(0.3); + final Color iconInactiveColor = Colors.black.withValues(alpha: 0.3); return Row( mainAxisSize: MainAxisSize.max, @@ -250,17 +254,19 @@ class __PageState extends State<_Page> { Expanded( child: Padding( padding: const EdgeInsets.all(8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12)), + backgroundColor: shape == NeumorphicShape.concave + ? buttonActiveColor + : buttonInnactiveColor, + ), onPressed: () { setState(() { shape = NeumorphicShape.concave; }); }, - color: shape == NeumorphicShape.concave - ? buttonActiveColor - : buttonInnactiveColor, child: Image.asset("assets/images/concave.png", color: shape == NeumorphicShape.concave ? iconActiveColor @@ -271,17 +277,19 @@ class __PageState extends State<_Page> { Expanded( child: Padding( padding: const EdgeInsets.all(8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12)), + backgroundColor: shape == NeumorphicShape.convex + ? buttonActiveColor + : buttonInnactiveColor, + ), onPressed: () { setState(() { shape = NeumorphicShape.convex; }); }, - color: shape == NeumorphicShape.convex - ? buttonActiveColor - : buttonInnactiveColor, child: Image.asset("assets/images/convex.png", color: shape == NeumorphicShape.convex ? iconActiveColor @@ -292,17 +300,19 @@ class __PageState extends State<_Page> { Expanded( child: Padding( padding: const EdgeInsets.all(8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12)), + backgroundColor: shape == NeumorphicShape.flat + ? buttonActiveColor + : buttonInnactiveColor, + ), onPressed: () { setState(() { shape = NeumorphicShape.flat; }); }, - color: shape == NeumorphicShape.flat - ? buttonActiveColor - : buttonInnactiveColor, child: Image.asset("assets/images/flat.png", color: shape == NeumorphicShape.flat ? iconActiveColor @@ -328,7 +338,7 @@ class __PageState extends State<_Page> { onColorChanged: (color) { setState(() { NeumorphicTheme.of(context) - .updateCurrentTheme(NeumorphicThemeData(baseColor: color)); + ?.updateCurrentTheme(NeumorphicThemeData(baseColor: color)); }); }, color: NeumorphicTheme.baseColor(context), @@ -444,7 +454,7 @@ class __PageState extends State<_Page> { } FontWeight _fontWeight() { - switch ((this.fontWeight / 100).toInt()) { + switch (this.fontWeight ~/ 100) { case 1: return FontWeight.w100; case 2: diff --git a/example/lib/sample_neumorphic_playground.dart b/example/lib/sample_neumorphic_playground.dart index afb309e7..155365fd 100644 --- a/example/lib/sample_neumorphic_playground.dart +++ b/example/lib/sample_neumorphic_playground.dart @@ -1,5 +1,3 @@ -import 'package:example/lib/color_selector.dart'; -import 'package:flutter/cupertino.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; void main() => runApp(NeumorphicPlayground()); @@ -85,11 +83,11 @@ class __PageState extends State<_Page> { } Widget _configurators() { - final Color buttonActiveColor = Theme.of(context).accentColor; - final Color buttonInnactiveColor = Colors.white; + // final Color buttonActiveColor = Theme.of(context).colorScheme.secondary; + // final Color buttonInnactiveColor = Colors.white; - final Color textActiveColor = Colors.white; - final Color textInactiveColor = Colors.black.withOpacity(0.3); + // final Color textActiveColor = Colors.white; + // final Color textInactiveColor = Colors.black.withValues(alpha: 0.3); return Column( children: [ @@ -138,7 +136,7 @@ class __PageState extends State<_Page> { width: width, child: haveNeumorphicChild ? neumorphicChild() - : Container( + : SizedBox( //color: Colors.blue, child: Center(child: Text("")), ), @@ -246,11 +244,11 @@ class __PageState extends State<_Page> { } Widget shapeWidget() { - final Color buttonActiveColor = Theme.of(context).accentColor; + final Color buttonActiveColor = Theme.of(context).colorScheme.secondary; final Color buttonInnactiveColor = Colors.white; final Color iconActiveColor = Colors.white; - final Color iconInactiveColor = Colors.black.withOpacity(0.3); + final Color iconInactiveColor = Colors.black.withValues(alpha: 0.3); return Row( mainAxisSize: MainAxisSize.max, @@ -258,17 +256,19 @@ class __PageState extends State<_Page> { Expanded( child: Padding( padding: const EdgeInsets.all(8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12)), + backgroundColor: shape == NeumorphicShape.concave + ? buttonActiveColor + : buttonInnactiveColor, + ), onPressed: () { setState(() { shape = NeumorphicShape.concave; }); }, - color: shape == NeumorphicShape.concave - ? buttonActiveColor - : buttonInnactiveColor, child: Image.asset("assets/images/concave.png", color: shape == NeumorphicShape.concave ? iconActiveColor @@ -279,17 +279,20 @@ class __PageState extends State<_Page> { Expanded( child: Padding( padding: const EdgeInsets.all(8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12), + ), + backgroundColor: shape == NeumorphicShape.convex + ? buttonActiveColor + : buttonInnactiveColor, + ), onPressed: () { setState(() { shape = NeumorphicShape.convex; }); }, - color: shape == NeumorphicShape.convex - ? buttonActiveColor - : buttonInnactiveColor, child: Image.asset("assets/images/convex.png", color: shape == NeumorphicShape.convex ? iconActiveColor @@ -300,17 +303,19 @@ class __PageState extends State<_Page> { Expanded( child: Padding( padding: const EdgeInsets.all(8.0), - child: RaisedButton( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12)), + child: ElevatedButton( + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12)), + backgroundColor: shape == NeumorphicShape.flat + ? buttonActiveColor + : buttonInnactiveColor, + ), onPressed: () { setState(() { shape = NeumorphicShape.flat; }); }, - color: shape == NeumorphicShape.flat - ? buttonActiveColor - : buttonInnactiveColor, child: Image.asset("assets/images/flat.png", color: shape == NeumorphicShape.flat ? iconActiveColor diff --git a/example/lib/samples/audio_player_sample.dart b/example/lib/samples/audio_player_sample.dart index fee9c066..7f2ad6f7 100644 --- a/example/lib/samples/audio_player_sample.dart +++ b/example/lib/samples/audio_player_sample.dart @@ -1,4 +1,3 @@ -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class AudioPlayerSample extends StatefulWidget { @@ -94,7 +93,7 @@ class __PageState extends State<_Page> { onPressed: () { setState(() { _useDark = !_useDark; - NeumorphicTheme.of(context).themeMode = + NeumorphicTheme.of(context)?.themeMode = _useDark ? ThemeMode.dark : ThemeMode.light; }); }, @@ -237,10 +236,10 @@ class __PageState extends State<_Page> { Color _iconsColor() { final theme = NeumorphicTheme.of(context); - if (theme.isUsingDark) { - return theme.current.accentColor; + if (theme?.isUsingDark ?? false) { + return theme?.current?.accentColor ?? Colors.black; } else { - return null; + return Colors.black; } } } diff --git a/example/lib/samples/calculator_sample.dart b/example/lib/samples/calculator_sample.dart index fabf9d36..76f33796 100644 --- a/example/lib/samples/calculator_sample.dart +++ b/example/lib/samples/calculator_sample.dart @@ -1,4 +1,3 @@ -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class CalculatorSample extends StatefulWidget { @@ -65,9 +64,10 @@ class WidgetCalcButton extends StatelessWidget { } Color _backgroundColor(BuildContext context) { - return button.backgroundAccent - ? NeumorphicTheme.accentColor(context) - : null; + if (button.backgroundAccent) { + return NeumorphicTheme.accentColor(context); + } + return Colors.transparent; } @override @@ -99,7 +99,7 @@ class _TopScreenWidget extends StatelessWidget { return Neumorphic( style: NeumorphicStyle( boxShape: NeumorphicBoxShape.roundRect(BorderRadius.circular(12)), - depth: -1 * NeumorphicTheme.of(context).current.depth, + depth: -1 * (NeumorphicTheme.of(context)?.current?.depth ?? 0), ), child: FractionallySizedBox( widthFactor: 1, @@ -198,11 +198,11 @@ class __PageContentState extends State<_PageContent> { ), Row( children: [ - RaisedButton( + ElevatedButton( onPressed: () { setState(() { NeumorphicTheme.of(context) - .updateCurrentTheme(NeumorphicThemeData( + ?.updateCurrentTheme(NeumorphicThemeData( depth: 1, intensity: 0.5, accentColor: Colors.cyan, @@ -213,11 +213,11 @@ class __PageContentState extends State<_PageContent> { "style 1", ), ), - RaisedButton( + ElevatedButton( onPressed: () { setState(() { NeumorphicTheme.of(context) - .updateCurrentTheme(NeumorphicThemeData( + ?.updateCurrentTheme(NeumorphicThemeData( depth: 8, intensity: 0.3, accentColor: Colors.greenAccent, diff --git a/example/lib/samples/clock/clock_sample.dart b/example/lib/samples/clock/clock_sample.dart index 05bc41e9..2197d8ca 100644 --- a/example/lib/samples/clock/clock_sample.dart +++ b/example/lib/samples/clock/clock_sample.dart @@ -1,5 +1,4 @@ import 'package:example/lib/top_bar.dart'; -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; import 'clock_second_sample.dart'; @@ -229,11 +228,11 @@ class NeumorphicClock extends StatelessWidget { } Widget _buildLine( - {BuildContext context, - double angle, - double width, + {required BuildContext context, + required double angle, + required double width, double height = 6, - Color color}) { + required Color color}) { return Transform.rotate( angle: angle, child: Center( diff --git a/example/lib/samples/clock/clock_second_sample.dart b/example/lib/samples/clock/clock_second_sample.dart index 91873349..bb630bb3 100644 --- a/example/lib/samples/clock/clock_second_sample.dart +++ b/example/lib/samples/clock/clock_second_sample.dart @@ -1,5 +1,4 @@ import 'package:example/lib/top_bar.dart'; -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class ClockAlarmPage extends StatelessWidget { @@ -230,8 +229,8 @@ class Alarm { final String label; const Alarm({ - @required this.enabled, - @required this.time, - @required this.label, + required this.enabled, + required this.time, + required this.label, }); } diff --git a/example/lib/samples/credit_card_sample.dart b/example/lib/samples/credit_card_sample.dart index de640f5b..37d25cce 100644 --- a/example/lib/samples/credit_card_sample.dart +++ b/example/lib/samples/credit_card_sample.dart @@ -1,7 +1,5 @@ import 'dart:ui'; -import 'package:flutter/material.dart'; -import 'package:flutter/widgets.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class CreditCardSample extends StatefulWidget { @@ -87,8 +85,8 @@ class __PageContentState extends State<_PageContent> { begin: Alignment.topRight, end: Alignment.bottomLeft, colors: [ - Colors.purple.withOpacity(0.5), - Colors.red.withOpacity(0.5) + Colors.purple.withValues(alpha: 0.5), + Colors.red.withValues(alpha: 0.5) ])), ), ), @@ -114,7 +112,7 @@ class __PageContentState extends State<_PageContent> { "1234 5678", style: TextStyle( fontSize: 30, - color: Colors.black.withOpacity(0.7)), + color: Colors.black.withValues(alpha: 0.7)), ), SizedBox( height: 3, @@ -123,7 +121,7 @@ class __PageContentState extends State<_PageContent> { "1234 5678", style: TextStyle( fontSize: 30, - color: Colors.black.withOpacity(0.7)), + color: Colors.black.withValues(alpha: 0.7)), ), ], ), @@ -158,7 +156,7 @@ class __PageContentState extends State<_PageContent> { "09/24", style: TextStyle( fontSize: 20, - color: Colors.white.withOpacity(0.7)), + color: Colors.white.withValues(alpha: 0.7)), ), SizedBox( height: 8, @@ -235,7 +233,7 @@ class __PageContentState extends State<_PageContent> { setState(() { _useDark = !_useDark; - NeumorphicTheme.of(context).themeMode = + NeumorphicTheme.of(context)?.themeMode = _useDark ? ThemeMode.dark : ThemeMode.light; }); }, @@ -328,7 +326,7 @@ class __PageContentState extends State<_PageContent> { value: 0, onChanged: (value) { setState(() { - _dotIndex = value; + _dotIndex = value ?? 0; }); }, style: NeumorphicRadioStyle( @@ -348,7 +346,7 @@ class __PageContentState extends State<_PageContent> { value: 1, onChanged: (value) { setState(() { - _dotIndex = value; + _dotIndex = value ?? 0; }); }, style: NeumorphicRadioStyle( @@ -368,7 +366,7 @@ class __PageContentState extends State<_PageContent> { value: 2, onChanged: (value) { setState(() { - _dotIndex = value; + _dotIndex = value ?? 0; }); }, style: NeumorphicRadioStyle( diff --git a/example/lib/samples/form_sample.dart b/example/lib/samples/form_sample.dart index 7d6af0cc..70dd5896 100644 --- a/example/lib/samples/form_sample.dart +++ b/example/lib/samples/form_sample.dart @@ -1,6 +1,5 @@ import 'package:example/lib/ThemeConfigurator.dart'; import 'package:example/lib/top_bar.dart'; -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class FormSample extends StatelessWidget { @@ -35,7 +34,7 @@ class __PageState extends State<_Page> { String firstName = ""; String lastName = ""; double age = 12; - Gender gender; + Gender gender = Gender.MALE; Set rides = Set(); @override @@ -170,7 +169,7 @@ class _AvatarField extends StatelessWidget { child: Icon( Icons.insert_emoticon, size: 120, - color: Colors.black.withOpacity(0.2), + color: Colors.black.withValues(alpha: 0.2), ), ), ); @@ -181,7 +180,7 @@ class _AgeField extends StatelessWidget { final double age; final ValueChanged onChanged; - _AgeField({@required this.age, this.onChanged}); + _AgeField({required this.age, required this.onChanged}); @override Widget build(BuildContext context) { @@ -230,14 +229,15 @@ class _TextField extends StatefulWidget { final ValueChanged onChanged; - _TextField({@required this.label, @required this.hint, this.onChanged}); + _TextField( + {required this.label, required this.hint, required this.onChanged}); @override __TextFieldState createState() => __TextFieldState(); } class __TextFieldState extends State<_TextField> { - TextEditingController _controller; + late TextEditingController _controller; @override void initState() { @@ -283,8 +283,8 @@ class _GenderField extends StatelessWidget { final ValueChanged onChanged; const _GenderField({ - @required this.gender, - @required this.onChanged, + required this.gender, + required this.onChanged, }); @override @@ -313,7 +313,7 @@ class _GenderField extends StatelessWidget { ), value: Gender.MALE, child: Icon(Icons.account_box), - onChanged: (value) => this.onChanged(value), + onChanged: (value) => this.onChanged(value ?? Gender.MALE), ), SizedBox(width: 12), NeumorphicRadio( @@ -324,7 +324,7 @@ class _GenderField extends StatelessWidget { ), value: Gender.FEMALE, child: Icon(Icons.pregnant_woman), - onChanged: (value) => this.onChanged(value), + onChanged: (value) => this.onChanged(value ?? Gender.FEMALE), ), SizedBox(width: 12), NeumorphicRadio( @@ -335,7 +335,7 @@ class _GenderField extends StatelessWidget { ), value: Gender.NON_BINARY, child: Icon(Icons.supervised_user_circle), - onChanged: (value) => this.onChanged(value), + onChanged: (value) => this.onChanged(value ?? Gender.NON_BINARY), ), SizedBox( width: 18, diff --git a/example/lib/samples/galaxy_sample.dart b/example/lib/samples/galaxy_sample.dart index 5bae0f8e..aca638ca 100644 --- a/example/lib/samples/galaxy_sample.dart +++ b/example/lib/samples/galaxy_sample.dart @@ -1,6 +1,5 @@ import 'package:example/lib/ThemeConfigurator.dart'; import 'package:example/lib/top_bar.dart'; -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class GalaxySample extends StatelessWidget { diff --git a/example/lib/samples/sample_home.dart b/example/lib/samples/sample_home.dart index e4e120a0..cb152b8a 100644 --- a/example/lib/samples/sample_home.dart +++ b/example/lib/samples/sample_home.dart @@ -5,14 +5,13 @@ import 'package:example/samples/clock/clock_sample.dart'; import 'package:example/samples/credit_card_sample.dart'; import 'package:example/samples/form_sample.dart'; import 'package:example/samples/testla_sample.dart'; -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; import 'galaxy_sample.dart'; import 'widgets_sample.dart'; class SamplesHome extends StatelessWidget { - Widget _buildButton({String text, VoidCallback onClick}) { + Widget _buildButton({required String text, required VoidCallback onClick}) { return NeumorphicButton( margin: EdgeInsets.only(bottom: 12), padding: EdgeInsets.symmetric( diff --git a/example/lib/samples/testla_sample.dart b/example/lib/samples/testla_sample.dart index 400ecf07..a9c69bfd 100644 --- a/example/lib/samples/testla_sample.dart +++ b/example/lib/samples/testla_sample.dart @@ -1,7 +1,3 @@ -import 'dart:ui'; - -import 'package:flutter/material.dart'; -import 'package:flutter/widgets.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class TeslaSample extends StatefulWidget { diff --git a/example/lib/samples/widgets_sample.dart b/example/lib/samples/widgets_sample.dart index a98f67fc..a45b88ac 100644 --- a/example/lib/samples/widgets_sample.dart +++ b/example/lib/samples/widgets_sample.dart @@ -1,15 +1,14 @@ -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class WidgetsSample extends StatefulWidget { - WidgetsSample({Key key}) : super(key: key); + WidgetsSample({Key? key}) : super(key: key); @override createState() => _ContainersListPageState(); } class _ContainersListPageState extends State { - int _groupValue; + int _groupValue = 0; bool _switchConcaveEnabled = false; bool _switchConvexEnabled = false; bool _switchFlatEnabled = false; @@ -125,7 +124,7 @@ class _ContainersListPageState extends State { groupValue: _groupValue, onChanged: (value) { setState(() { - _groupValue = value; + _groupValue = value ?? 0; }); }, ), @@ -145,7 +144,7 @@ class _ContainersListPageState extends State { groupValue: _groupValue, onChanged: (value) { setState(() { - _groupValue = value; + _groupValue = value ?? 0; }); }, ), @@ -165,7 +164,7 @@ class _ContainersListPageState extends State { groupValue: _groupValue, onChanged: (value) { setState(() { - _groupValue = value; + _groupValue = value ?? 0; }); }, ), diff --git a/example/lib/tips/border/tips_border.dart b/example/lib/tips/border/tips_border.dart index 69e04ea3..0e88e8ff 100644 --- a/example/lib/tips/border/tips_border.dart +++ b/example/lib/tips/border/tips_border.dart @@ -1,11 +1,10 @@ import 'package:example/lib/Code.dart'; import 'package:example/lib/ThemeConfigurator.dart'; import 'package:example/lib/top_bar.dart'; -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class TipsBorderPage extends StatefulWidget { - TipsBorderPage({Key key}) : super(key: key); + TipsBorderPage({Key? key}) : super(key: key); @override createState() => _WidgetPageState(); @@ -149,9 +148,9 @@ class _CustomWidget extends StatefulWidget { final NeumorphicStyle secondStyle; _CustomWidget( - {@required this.title, - @required this.firstStyle, - @required this.secondStyle}); + {required this.title, + required this.firstStyle, + required this.secondStyle}); @override createState() => _CustomWidgetState(); diff --git a/example/lib/tips/border/tips_emboss_inside_emboss.dart b/example/lib/tips/border/tips_emboss_inside_emboss.dart index c9e03ae8..a048deb1 100644 --- a/example/lib/tips/border/tips_emboss_inside_emboss.dart +++ b/example/lib/tips/border/tips_emboss_inside_emboss.dart @@ -1,11 +1,10 @@ import 'package:example/lib/Code.dart'; import 'package:example/lib/ThemeConfigurator.dart'; import 'package:example/lib/top_bar.dart'; -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class TipsRecursiveeEmbossPage extends StatefulWidget { - TipsRecursiveeEmbossPage({Key key}) : super(key: key); + TipsRecursiveeEmbossPage({Key? key}) : super(key: key); @override createState() => _WidgetPageState(); @@ -88,14 +87,16 @@ class _EmbossmbossWidgetState extends State<_EmbossmbossWidget> { } Widget _generateEmbosss( - {int number, Widget child, bool reverseEachPair = false}) { + {required int number, + required Widget child, + bool reverseEachPair = false}) { Widget element = child; for (int i = 0; i < number; ++i) { element = Neumorphic( padding: EdgeInsets.all(20), style: NeumorphicStyle( boxShape: NeumorphicBoxShape.circle(), - depth: -(NeumorphicTheme.depth(context).abs()), //force negative + depth: -(NeumorphicTheme.depth(context)?.abs() ?? 0), //force negative oppositeShadowLightSource: (reverseEachPair && i % 2 == 0), ), child: element, diff --git a/example/lib/tips/tips_home.dart b/example/lib/tips/tips_home.dart index 945a5e35..97d30530 100644 --- a/example/lib/tips/tips_home.dart +++ b/example/lib/tips/tips_home.dart @@ -1,12 +1,11 @@ import 'package:example/lib/top_bar.dart'; -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; import 'border/tips_border.dart'; import 'border/tips_emboss_inside_emboss.dart'; class TipsHome extends StatelessWidget { - Widget _buildButton({String text, VoidCallback onClick}) { + Widget _buildButton({required String text, required VoidCallback onClick}) { return NeumorphicButton( margin: EdgeInsets.only(bottom: 12), padding: EdgeInsets.symmetric( @@ -39,7 +38,9 @@ class TipsHome extends StatelessWidget { mainAxisAlignment: MainAxisAlignment.start, mainAxisSize: MainAxisSize.max, children: [ - TopBar(title: "Tips"), + TopBar( + title: "Tips", + ), _buildButton( text: "Border", onClick: () { diff --git a/example/lib/widgets/appbar/widget_app_bar.dart b/example/lib/widgets/appbar/widget_app_bar.dart index 6e4549e7..de6cf03b 100644 --- a/example/lib/widgets/appbar/widget_app_bar.dart +++ b/example/lib/widgets/appbar/widget_app_bar.dart @@ -1,9 +1,7 @@ -import 'package:flutter/material.dart'; -import 'package:flutter/rendering.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class AppBarWidgetPage extends StatelessWidget { - AppBarWidgetPage({Key key}) : super(key: key); + AppBarWidgetPage({Key? key}) : super(key: key); @override Widget build(BuildContext context) { @@ -152,7 +150,7 @@ class FirstThemeContent extends StatelessWidget { class _MyDrawer extends StatelessWidget { final bool isLead; - const _MyDrawer({Key key, this.isLead = true}) : super(key: key); + const _MyDrawer({Key? key, this.isLead = true}) : super(key: key); @override Widget build(BuildContext context) { diff --git a/example/lib/widgets/background/widget_background.dart b/example/lib/widgets/background/widget_background.dart index aa35b588..c32edccc 100644 --- a/example/lib/widgets/background/widget_background.dart +++ b/example/lib/widgets/background/widget_background.dart @@ -1,11 +1,10 @@ import 'package:example/lib/Code.dart'; import 'package:example/lib/ThemeConfigurator.dart'; import 'package:example/lib/top_bar.dart'; -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class BackgroundWidgetPage extends StatefulWidget { - BackgroundWidgetPage({Key key}) : super(key: key); + BackgroundWidgetPage({Key? key}) : super(key: key); @override createState() => _WidgetPageState(); diff --git a/example/lib/widgets/button/button.dart b/example/lib/widgets/button/button.dart index cb8e6319..e249678d 100644 --- a/example/lib/widgets/button/button.dart +++ b/example/lib/widgets/button/button.dart @@ -1,4 +1,3 @@ -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class ButtonSample extends StatefulWidget { @@ -42,17 +41,17 @@ class __PageState extends State<_Page> { child: Column( mainAxisAlignment: MainAxisAlignment.center, children: [ - RaisedButton( + ElevatedButton( onPressed: () { Navigator.of(context).pop(); }, child: Text("back"), ), - RaisedButton( + ElevatedButton( onPressed: () { setState(() { _useDark = !_useDark; - NeumorphicTheme.of(context).themeMode = + NeumorphicTheme.of(context)?.themeMode = _useDark ? ThemeMode.dark : ThemeMode.light; }); }, @@ -89,10 +88,10 @@ class __PageState extends State<_Page> { Color _iconsColor() { final theme = NeumorphicTheme.of(context); - if (theme.isUsingDark) { - return theme.current.accentColor; + if (theme?.isUsingDark ?? false) { + return theme?.current?.accentColor ?? Colors.black; } else { - return null; + return Colors.black; } } } diff --git a/example/lib/widgets/button/widget_button.dart b/example/lib/widgets/button/widget_button.dart index 117225b3..8e42d960 100644 --- a/example/lib/widgets/button/widget_button.dart +++ b/example/lib/widgets/button/widget_button.dart @@ -2,11 +2,10 @@ import 'package:example/lib/Code.dart'; import 'package:example/lib/ThemeConfigurator.dart'; import 'package:example/lib/color_selector.dart'; import 'package:example/lib/top_bar.dart'; -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class ButtonWidgetPage extends StatefulWidget { - ButtonWidgetPage({Key key}) : super(key: key); + ButtonWidgetPage({Key? key}) : super(key: key); @override createState() => _WidgetPageState(); @@ -78,7 +77,7 @@ class _DefaultWidgetState extends State<_DefaultWidget> { return Code(""" NeumorphicButton( onPressed: () { - + }, child: Text("Click me"), ), @@ -129,7 +128,7 @@ class _CircleWidgetState extends State<_CircleWidget> { NeumorphicButton( boxShape: NeumorphicBoxShape.circle(), onPressed: () { - + }, padding: EdgeInsets.all(18.0), child: Icon(Icons.play_arrow), @@ -186,7 +185,7 @@ NeumorphicButton( boxShape: NeumorphicBoxShape.circle(), minDistance: -5.0, onPressed: () { - + }, padding: EdgeInsets.all(18.0), child: Icon(Icons.play_arrow), @@ -333,12 +332,12 @@ class _EnabledDisabledWidgetState extends State<_EnabledDisabledWidget> { } Widget _buildCode(BuildContext context) { - return Code(""" + return Code(""" NeumorphicButton( isEnabled: false, child: Text("Second"), onPressed: () { - + }, ), """); @@ -423,11 +422,11 @@ class _FlatConcaveConvexWidgetState extends State<_FlatConcaveConvexWidget> { return Code(""" NeumorphicButton( style: NeumorphicStyle( - shape: NeumorphicShape.flat + shape: NeumorphicShape.flat //or convex, concave ), onPressed: () { - + }, child: ... ), diff --git a/example/lib/widgets/checkbox/widget_checkbox.dart b/example/lib/widgets/checkbox/widget_checkbox.dart index 1412294c..d9e136c8 100644 --- a/example/lib/widgets/checkbox/widget_checkbox.dart +++ b/example/lib/widgets/checkbox/widget_checkbox.dart @@ -2,11 +2,10 @@ import 'package:example/lib/Code.dart'; import 'package:example/lib/ThemeConfigurator.dart'; import 'package:example/lib/color_selector.dart'; import 'package:example/lib/top_bar.dart'; -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class CheckboxWidgetPage extends StatefulWidget { - CheckboxWidgetPage({Key key}) : super(key: key); + CheckboxWidgetPage({Key? key}) : super(key: key); @override createState() => _WidgetPageState(); @@ -76,8 +75,8 @@ class _DefaultWidgetState extends State<_DefaultWidget> { Widget _buildCode(BuildContext context) { return Code(""" - -bool isChecked = false; + +bool isChecked = false; NeumorphicCheckbox( value: isChecked, @@ -209,8 +208,8 @@ class _ColorWidgetState extends State<_ColorWidget> { Widget _buildCode(BuildContext context) { return Code(""" - -bool isChecked = false; + +bool isChecked = false; NeumorphicCheckbox( value: isChecked, @@ -286,8 +285,8 @@ class _EnabledDisabledWidgetState extends State<_EnabledDisabledWidget> { Widget _buildCode(BuildContext context) { return Code(""" - -bool isChecked = false; + +bool isChecked = false; NeumorphicCheckbox( isEnabled: false, diff --git a/example/lib/widgets/container/widget_container.dart b/example/lib/widgets/container/widget_container.dart index 90cafbf4..0072c236 100644 --- a/example/lib/widgets/container/widget_container.dart +++ b/example/lib/widgets/container/widget_container.dart @@ -2,11 +2,10 @@ import 'package:example/lib/Code.dart'; import 'package:example/lib/ThemeConfigurator.dart'; import 'package:example/lib/color_selector.dart'; import 'package:example/lib/top_bar.dart'; -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class ContainerWidgetPage extends StatefulWidget { - ContainerWidgetPage({Key key}) : super(key: key); + ContainerWidgetPage({Key? key}) : super(key: key); @override createState() => _WidgetPageState(); @@ -236,7 +235,7 @@ Neumorphic( boxShape: NeumorphicBoxShape.circle() ), child: SizedBox( - height: 100, + height: 100, width: 100, ), ), @@ -298,10 +297,10 @@ class _FlatConcaveConvexWidgetState extends State<_FlatConcaveConvexWidget> { return Code(""" Neumorphic( style: NeumorphicStyle( - shape: NeumorphicShape.flat + shape: NeumorphicShape.flat //or convex, concave ), - + child: ... ), """); diff --git a/example/lib/widgets/icon/widget_icon.dart b/example/lib/widgets/icon/widget_icon.dart index deb111ed..e5067032 100644 --- a/example/lib/widgets/icon/widget_icon.dart +++ b/example/lib/widgets/icon/widget_icon.dart @@ -1,10 +1,9 @@ import 'package:example/lib/ThemeConfigurator.dart'; import 'package:example/lib/top_bar.dart'; -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class IconWidgetPage extends StatefulWidget { - IconWidgetPage({Key key}) : super(key: key); + IconWidgetPage({Key? key}) : super(key: key); @override createState() => _WidgetPageState(); @@ -741,7 +740,7 @@ class _PageState extends State<_Page> { Icons.picture_in_picture, Icons.picture_in_picture_alt, Icons.pie_chart, - Icons.pie_chart_outlined, + Icons.pie_chart_outline, Icons.pin_drop, Icons.place, Icons.play_arrow, diff --git a/example/lib/widgets/indeterminate_progress/widget_indeterminate_progress.dart b/example/lib/widgets/indeterminate_progress/widget_indeterminate_progress.dart index 09f2b289..95ccf5d6 100644 --- a/example/lib/widgets/indeterminate_progress/widget_indeterminate_progress.dart +++ b/example/lib/widgets/indeterminate_progress/widget_indeterminate_progress.dart @@ -2,11 +2,10 @@ import 'package:example/lib/Code.dart'; import 'package:example/lib/ThemeConfigurator.dart'; import 'package:example/lib/color_selector.dart'; import 'package:example/lib/top_bar.dart'; -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class IndeterminateProgressWidgetPage extends StatefulWidget { - IndeterminateProgressWidgetPage({Key key}) : super(key: key); + IndeterminateProgressWidgetPage({Key? key}) : super(key: key); @override createState() => _WidgetPageState(); diff --git a/example/lib/widgets/indicator/widget_indicator.dart b/example/lib/widgets/indicator/widget_indicator.dart index a5c42247..f6e63903 100644 --- a/example/lib/widgets/indicator/widget_indicator.dart +++ b/example/lib/widgets/indicator/widget_indicator.dart @@ -1,14 +1,13 @@ +import 'dart:math' show Random; + import 'package:example/lib/Code.dart'; import 'package:example/lib/ThemeConfigurator.dart'; import 'package:example/lib/color_selector.dart'; import 'package:example/lib/top_bar.dart'; -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; -import 'dart:math' show Random; - class IndicatorWidgetPage extends StatefulWidget { - IndicatorWidgetPage({Key key}) : super(key: key); + IndicatorWidgetPage({Key? key}) : super(key: key); @override createState() => _WidgetPageState(); @@ -102,7 +101,7 @@ NeumorphicIndicator( percent: percent, ), SizedBox(width: 12), - FlatButton( + ElevatedButton( child: Text('Update'), onPressed: () { setState(() { @@ -298,7 +297,7 @@ NeumorphicIndicator( duration: Duration(seconds: 1), ), SizedBox(width: 12), - FlatButton( + ElevatedButton( child: Text('Update'), onPressed: () { setState(() { @@ -356,7 +355,7 @@ NeumorphicIndicator( percent: percent, curve: Curves.bounceOut), SizedBox(width: 12), - FlatButton( + ElevatedButton( child: Text('Update'), onPressed: () { setState(() { diff --git a/example/lib/widgets/progress/widget_progress.dart b/example/lib/widgets/progress/widget_progress.dart index 7867cb06..c8ad20ad 100644 --- a/example/lib/widgets/progress/widget_progress.dart +++ b/example/lib/widgets/progress/widget_progress.dart @@ -1,13 +1,12 @@ +import 'dart:math' show Random; + import 'package:example/lib/Code.dart'; import 'package:example/lib/color_selector.dart'; import 'package:example/lib/top_bar.dart'; -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; -import 'dart:math' show Random; - class ProgressWidgetPage extends StatefulWidget { - ProgressWidgetPage({Key key}) : super(key: key); + ProgressWidgetPage({Key? key}) : super(key: key); @override createState() => _WidgetPageState(); @@ -74,7 +73,7 @@ class _DefaultWidgetState extends State<_DefaultWidget> { Widget _buildCode(BuildContext context) { return Code(""" -double percent = 0.2; +double percent = 0.2; Expanded( child: NeumorphicProgress( @@ -110,7 +109,7 @@ Expanded( crossAxisAlignment: CrossAxisAlignment.stretch, children: [ _buildWidget(context), - FlatButton( + ElevatedButton( child: Text('Update'), onPressed: () { setState(() { @@ -133,7 +132,7 @@ class _ColorWidgetState extends State<_ColorWidget> { Widget _buildCode(BuildContext context) { return Code(""" -double percent = 0.5; +double percent = 0.5; Expanded( child: NeumorphicProgress( @@ -225,7 +224,7 @@ class _SizedWidgetState extends State<_SizedWidget> { Widget _buildCode(BuildContext context) { return Code(""" -double percent = 0.5; +double percent = 0.5; Expanded( child: NeumorphicProgress( @@ -285,7 +284,7 @@ class _DurationWidgetState extends State<_DurationWidget> { Widget _buildCode(BuildContext context) { return Code(""" -double percent = 0.2; +double percent = 0.2; Expanded( child: NeumorphicProgress( @@ -323,7 +322,7 @@ Expanded( crossAxisAlignment: CrossAxisAlignment.stretch, children: [ _buildWidget(context), - FlatButton( + ElevatedButton( child: Text('Update'), onPressed: () { setState(() { @@ -346,7 +345,7 @@ class _CurveWidgetState extends State<_CurveWidget> { Widget _buildCode(BuildContext context) { return Code(""" -double percent = 0.2; +double percent = 0.2; Expanded( child: NeumorphicProgress( @@ -384,7 +383,7 @@ Expanded( crossAxisAlignment: CrossAxisAlignment.stretch, children: [ _buildWidget(context), - FlatButton( + ElevatedButton( child: Text('Update'), onPressed: () { setState(() { diff --git a/example/lib/widgets/radiobutton/widget_radio_button.dart b/example/lib/widgets/radiobutton/widget_radio_button.dart index f8e1434f..05a8e296 100644 --- a/example/lib/widgets/radiobutton/widget_radio_button.dart +++ b/example/lib/widgets/radiobutton/widget_radio_button.dart @@ -1,11 +1,10 @@ import 'package:example/lib/Code.dart'; import 'package:example/lib/ThemeConfigurator.dart'; import 'package:example/lib/top_bar.dart'; -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class RadioButtonWidgetPage extends StatefulWidget { - RadioButtonWidgetPage({Key key}) : super(key: key); + RadioButtonWidgetPage({Key? key}) : super(key: key); @override createState() => _WidgetPageState(); @@ -69,7 +68,7 @@ class _DefaultWidget extends StatefulWidget { } class _DefaultWidgetState extends State<_DefaultWidget> { - int groupValue; + int groupValue = 0; Widget _buildCode(BuildContext context) { return Code(""" @@ -108,7 +107,7 @@ NeumorphicRadio( value: 1991, onChanged: (value) { setState(() { - groupValue = value; + groupValue = value ?? 0; }); }, padding: EdgeInsets.all(8.0), @@ -120,7 +119,7 @@ NeumorphicRadio( groupValue: groupValue, onChanged: (value) { setState(() { - groupValue = value; + groupValue = value ?? 0; }); }, padding: EdgeInsets.all(8.0), @@ -132,7 +131,7 @@ NeumorphicRadio( value: 2012, onChanged: (value) { setState(() { - groupValue = value; + groupValue = value ?? 0; }); }, padding: EdgeInsets.all(8.0), @@ -160,7 +159,7 @@ class CircleRadios extends StatefulWidget { } class _CircleRadiosState extends State { - String groupValue; + String groupValue = ""; Widget _buildCode(BuildContext context) { return Code(""" @@ -198,7 +197,7 @@ NeumorphicRadio( value: "A", onChanged: (value) { setState(() { - groupValue = value; + groupValue = value ?? ""; }); }, padding: EdgeInsets.all(18.0), @@ -213,7 +212,7 @@ NeumorphicRadio( groupValue: groupValue, onChanged: (value) { setState(() { - groupValue = value; + groupValue = value ?? ""; }); }, padding: EdgeInsets.all(18.0), @@ -228,7 +227,7 @@ NeumorphicRadio( value: "C", onChanged: (value) { setState(() { - groupValue = value; + groupValue = value ?? ""; }); }, padding: EdgeInsets.all(18.0), @@ -256,7 +255,7 @@ class _EnabledDisabledWidget extends StatefulWidget { } class _EnabledDisabledWidgetState extends State<_EnabledDisabledWidget> { - int groupValue; + int groupValue = 0; Widget _buildWidget(BuildContext context) { return Padding( @@ -275,7 +274,7 @@ class _EnabledDisabledWidgetState extends State<_EnabledDisabledWidget> { child: Text("First"), onChanged: (value) { setState(() { - groupValue = value; + groupValue = value ?? 0; }); }, ), @@ -293,7 +292,7 @@ class _EnabledDisabledWidgetState extends State<_EnabledDisabledWidget> { child: Text("Second"), onChanged: (value) { setState(() { - groupValue = value; + groupValue = value ?? 0; }); }, ), @@ -303,7 +302,7 @@ class _EnabledDisabledWidgetState extends State<_EnabledDisabledWidget> { } Widget _buildCode(BuildContext context) { - return Code(""" + return Code(""" int groupValue; NeumorphicRadio( diff --git a/example/lib/widgets/range_slider/widget_range_slider.dart b/example/lib/widgets/range_slider/widget_range_slider.dart index c8c312f3..2b04e7f0 100644 --- a/example/lib/widgets/range_slider/widget_range_slider.dart +++ b/example/lib/widgets/range_slider/widget_range_slider.dart @@ -2,11 +2,10 @@ import 'package:example/lib/Code.dart'; import 'package:example/lib/ThemeConfigurator.dart'; import 'package:example/lib/color_selector.dart'; import 'package:example/lib/top_bar.dart'; -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class RangeSliderWidgetPage extends StatefulWidget { - RangeSliderWidgetPage({Key key}) : super(key: key); + RangeSliderWidgetPage({Key? key}) : super(key: key); @override createState() => _RangeWidgetPageState(); diff --git a/example/lib/widgets/slider/widget_slider.dart b/example/lib/widgets/slider/widget_slider.dart index 522c9c30..07094edd 100644 --- a/example/lib/widgets/slider/widget_slider.dart +++ b/example/lib/widgets/slider/widget_slider.dart @@ -2,11 +2,10 @@ import 'package:example/lib/Code.dart'; import 'package:example/lib/ThemeConfigurator.dart'; import 'package:example/lib/color_selector.dart'; import 'package:example/lib/top_bar.dart'; -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class SliderWidgetPage extends StatefulWidget { - SliderWidgetPage({Key key}) : super(key: key); + SliderWidgetPage({Key? key}) : super(key: key); @override createState() => _WidgetPageState(); @@ -73,7 +72,7 @@ class _DefaultWidgetState extends State<_DefaultWidget> { Widget _buildCode(BuildContext context) { return Code(""" -double age = 20; +double age = 20; Expanded( child: NeumorphicSlider( @@ -143,7 +142,7 @@ class _ColorWidgetState extends State<_ColorWidget> { Widget _buildCode(BuildContext context) { return Code(""" -double age = 50; +double age = 50; Expanded( child: NeumorphicSlider( diff --git a/example/lib/widgets/switch/widget_switch.dart b/example/lib/widgets/switch/widget_switch.dart index cb26b465..8fd568c1 100644 --- a/example/lib/widgets/switch/widget_switch.dart +++ b/example/lib/widgets/switch/widget_switch.dart @@ -2,11 +2,10 @@ import 'package:example/lib/Code.dart'; import 'package:example/lib/ThemeConfigurator.dart'; import 'package:example/lib/color_selector.dart'; import 'package:example/lib/top_bar.dart'; -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class SwitchWidgetPage extends StatefulWidget { - SwitchWidgetPage({Key key}) : super(key: key); + SwitchWidgetPage({Key? key}) : super(key: key); @override createState() => _WidgetPageState(); @@ -110,7 +109,7 @@ NeumorphicSwitch( }, ), SizedBox(width: 12), - FlatButton( + ElevatedButton( onPressed: () { setState(() { isEnabled = !isEnabled; @@ -148,7 +147,7 @@ bool isChecked; NeumorphicSwitch( value: isChecked, style: NeumorphicSwitchStyle( - thumbShape: NeumorphicShape.flat + thumbShape: NeumorphicShape.flat //or convex, concave ), onChanged: (value) { diff --git a/example/lib/widgets/toggle/widget_toggle.dart b/example/lib/widgets/toggle/widget_toggle.dart index c2ebbf80..19afb18c 100644 --- a/example/lib/widgets/toggle/widget_toggle.dart +++ b/example/lib/widgets/toggle/widget_toggle.dart @@ -1,11 +1,10 @@ import 'package:example/lib/Code.dart'; import 'package:example/lib/ThemeConfigurator.dart'; import 'package:example/lib/top_bar.dart'; -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class ToggleWidgetPage extends StatefulWidget { - ToggleWidgetPage({Key key}) : super(key: key); + ToggleWidgetPage({Key? key}) : super(key: key); @override createState() => _WidgetPageState(); @@ -272,7 +271,7 @@ NeumorphicToggle( ), onAnimationChangedFinished: (value) { if (value == 0) { - Scaffold.of(context) + ScaffoldMessenger.of(context) .showSnackBar(SnackBar(content: Text('on back !'))); print("onAnimationChangedFinished: $_selectedIndex"); } diff --git a/example/lib/widgets/widgets_home.dart b/example/lib/widgets/widgets_home.dart index 4cea506b..26af8ff1 100644 --- a/example/lib/widgets/widgets_home.dart +++ b/example/lib/widgets/widgets_home.dart @@ -1,7 +1,6 @@ import 'package:example/lib/top_bar.dart'; import 'package:example/widgets/appbar/widget_app_bar.dart'; import 'package:example/widgets/toggle/widget_toggle.dart'; -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; import 'background/widget_background.dart'; @@ -18,7 +17,7 @@ import 'slider/widget_slider.dart'; import 'switch/widget_switch.dart'; class WidgetsHome extends StatelessWidget { - Widget _buildButton({String text, VoidCallback onClick}) { + Widget _buildButton({required String text, required VoidCallback onClick}) { return NeumorphicButton( margin: EdgeInsets.only(bottom: 12), padding: EdgeInsets.symmetric( diff --git a/example/macos/Flutter/GeneratedPluginRegistrant.swift b/example/macos/Flutter/GeneratedPluginRegistrant.swift index cf981460..cccf817a 100644 --- a/example/macos/Flutter/GeneratedPluginRegistrant.swift +++ b/example/macos/Flutter/GeneratedPluginRegistrant.swift @@ -2,8 +2,6 @@ // Generated file. Do not edit. // -// clang-format off - import FlutterMacOS import Foundation diff --git a/example/pubspec.yaml b/example/pubspec.yaml index 5f19d033..ee30b399 100644 --- a/example/pubspec.yaml +++ b/example/pubspec.yaml @@ -14,7 +14,7 @@ description: A new Flutter project. version: 1.0.0+1 environment: - sdk: ">=2.6.0 <3.0.0" + sdk: '>=3.2.6 <4.0.0' dependencies: flutter: @@ -23,7 +23,7 @@ dependencies: flutter_neumorphic: path: ../ - flutter_colorpicker: ^0.4.0 + flutter_colorpicker: ^1.1.0 dev_dependencies: flutter_test: diff --git a/lib/src/colors.dart b/lib/src/colors.dart index 84f3533d..c30e2970 100644 --- a/lib/src/colors.dart +++ b/lib/src/colors.dart @@ -85,11 +85,11 @@ class NeumorphicColors { static Color _applyPercentageOnOpacity( {required Color maxColor, required double percent}) { - final maxOpacity = maxColor.opacity; + final maxOpacity = maxColor.a; final maxIntensity = Neumorphic.MAX_INTENSITY; final newOpacity = percent * maxOpacity / maxIntensity; final newColor = - maxColor.withOpacity(newOpacity); //<-- intensity act on opacity; + maxColor.withValues(alpha: newOpacity); //<-- intensity act on opacity; return newColor; } } diff --git a/lib/src/decoration/cache/abstract_neumorphic_painter_cache.dart b/lib/src/decoration/cache/abstract_neumorphic_painter_cache.dart index 9b2b235b..518067a0 100644 --- a/lib/src/decoration/cache/abstract_neumorphic_painter_cache.dart +++ b/lib/src/decoration/cache/abstract_neumorphic_painter_cache.dart @@ -1,5 +1,4 @@ import 'dart:math'; -import 'dart:ui'; import '../../../flutter_neumorphic.dart'; diff --git a/lib/src/decoration/cache/neumorphic_emboss_painter_cache.dart b/lib/src/decoration/cache/neumorphic_emboss_painter_cache.dart index 59f9b5c7..9cc93d47 100644 --- a/lib/src/decoration/cache/neumorphic_emboss_painter_cache.dart +++ b/lib/src/decoration/cache/neumorphic_emboss_painter_cache.dart @@ -1,5 +1,3 @@ -import 'dart:ui'; - import '../../../flutter_neumorphic.dart'; import 'abstract_neumorphic_painter_cache.dart'; diff --git a/lib/src/decoration/cache/neumorphic_painter_cache.dart b/lib/src/decoration/cache/neumorphic_painter_cache.dart index e63daa1c..85d9d8ab 100644 --- a/lib/src/decoration/cache/neumorphic_painter_cache.dart +++ b/lib/src/decoration/cache/neumorphic_painter_cache.dart @@ -1,5 +1,3 @@ -import 'dart:ui'; - import '../../../flutter_neumorphic.dart'; import 'abstract_neumorphic_painter_cache.dart'; diff --git a/lib/src/decoration/neumorphic_decoration_painter.dart b/lib/src/decoration/neumorphic_decoration_painter.dart index 36de0f2c..940ba4b6 100644 --- a/lib/src/decoration/neumorphic_decoration_painter.dart +++ b/lib/src/decoration/neumorphic_decoration_painter.dart @@ -1,4 +1,3 @@ -import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter/painting.dart'; diff --git a/lib/src/decoration/neumorphic_emboss_decoration_painter.dart b/lib/src/decoration/neumorphic_emboss_decoration_painter.dart index 299a9694..f849f417 100644 --- a/lib/src/decoration/neumorphic_emboss_decoration_painter.dart +++ b/lib/src/decoration/neumorphic_emboss_decoration_painter.dart @@ -1,8 +1,4 @@ -import 'dart:ui'; - -import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; -import 'package:flutter/painting.dart'; import '../neumorphic_box_shape.dart'; import '../theme/theme.dart'; @@ -134,6 +130,7 @@ class NeumorphicEmbossDecorationPainter extends BoxPainter { void _paintShadows(Canvas canvas, Path path) { final Matrix4 matrix4 = Matrix4.identity() + // ignore: deprecated_member_use ..scale(_cache.scaleX, _cache.scaleY); canvas diff --git a/lib/src/decoration/neumorphic_text_decoration_painter.dart b/lib/src/decoration/neumorphic_text_decoration_painter.dart index 72ec6696..f5582c58 100644 --- a/lib/src/decoration/neumorphic_text_decoration_painter.dart +++ b/lib/src/decoration/neumorphic_text_decoration_painter.dart @@ -1,6 +1,5 @@ import 'dart:ui' as ui; -import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter/painting.dart'; diff --git a/lib/src/neumorphic_box_shape.dart b/lib/src/neumorphic_box_shape.dart index 10b927e6..d2ca3a77 100644 --- a/lib/src/neumorphic_box_shape.dart +++ b/lib/src/neumorphic_box_shape.dart @@ -1,11 +1,9 @@ -import 'package:flutter/widgets.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; import 'package:flutter_neumorphic/src/shape/rrect_path_provider.dart'; import 'package:flutter_neumorphic/src/shape/stadium_path_provider.dart'; import 'shape/beveled_path_provider.dart'; import 'shape/circle_path_provider.dart'; -import 'shape/neumorphic_path_provider.dart'; import 'shape/rect_path_provider.dart'; export 'shape/path/flutter_logo_path_provider.dart'; diff --git a/lib/src/shape/beveled_path_provider.dart b/lib/src/shape/beveled_path_provider.dart index d4bb4745..bd95a618 100644 --- a/lib/src/shape/beveled_path_provider.dart +++ b/lib/src/shape/beveled_path_provider.dart @@ -1,7 +1,7 @@ -import '../../flutter_neumorphic.dart'; -import 'neumorphic_path_provider.dart'; import 'dart:math' as math; +import '../../flutter_neumorphic.dart'; + class BeveledPathProvider extends NeumorphicPathProvider { final BorderRadius borderRadius; diff --git a/lib/src/shape/circle_path_provider.dart b/lib/src/shape/circle_path_provider.dart index 59980509..c4c304ce 100644 --- a/lib/src/shape/circle_path_provider.dart +++ b/lib/src/shape/circle_path_provider.dart @@ -1,7 +1,6 @@ import 'dart:math'; import '../../flutter_neumorphic.dart'; -import 'neumorphic_path_provider.dart'; class CirclePathProvider extends NeumorphicPathProvider { const CirclePathProvider({Listenable? reclip}); diff --git a/lib/src/shape/rect_path_provider.dart b/lib/src/shape/rect_path_provider.dart index 8d8625a0..af4fa773 100644 --- a/lib/src/shape/rect_path_provider.dart +++ b/lib/src/shape/rect_path_provider.dart @@ -1,5 +1,4 @@ import '../../flutter_neumorphic.dart'; -import 'neumorphic_path_provider.dart'; class RectPathProvider extends NeumorphicPathProvider { const RectPathProvider({Listenable? reclip}); diff --git a/lib/src/shape/rrect_path_provider.dart b/lib/src/shape/rrect_path_provider.dart index 6e1e702e..a83a46df 100644 --- a/lib/src/shape/rrect_path_provider.dart +++ b/lib/src/shape/rrect_path_provider.dart @@ -1,5 +1,4 @@ import '../../flutter_neumorphic.dart'; -import 'neumorphic_path_provider.dart'; class RRectPathProvider extends NeumorphicPathProvider { final BorderRadius borderRadius; diff --git a/lib/src/theme/app_bar.dart b/lib/src/theme/app_bar.dart index d4e1b8f7..25accccf 100644 --- a/lib/src/theme/app_bar.dart +++ b/lib/src/theme/app_bar.dart @@ -1,8 +1,5 @@ import 'dart:io'; -import 'package:flutter/material.dart'; -import 'package:flutter/widgets.dart'; - import 'package:flutter_neumorphic/flutter_neumorphic.dart'; @immutable diff --git a/lib/src/theme/inherited_neumorphic_theme.dart b/lib/src/theme/inherited_neumorphic_theme.dart index d86145cd..b11ee29f 100644 --- a/lib/src/theme/inherited_neumorphic_theme.dart +++ b/lib/src/theme/inherited_neumorphic_theme.dart @@ -1,10 +1,5 @@ -import 'package:flutter/foundation.dart'; -import 'package:flutter/widgets.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; -import 'theme.dart'; -import 'theme_wrapper.dart'; - export 'theme.dart'; export 'theme_wrapper.dart'; diff --git a/lib/src/theme/neumorphic_theme.dart b/lib/src/theme/neumorphic_theme.dart index 034fca3f..a0ac754f 100644 --- a/lib/src/theme/neumorphic_theme.dart +++ b/lib/src/theme/neumorphic_theme.dart @@ -1,10 +1,4 @@ -import 'package:flutter/material.dart'; -import 'package:flutter/widgets.dart'; - import '../../flutter_neumorphic.dart'; -import 'inherited_neumorphic_theme.dart'; -import 'theme.dart'; -import 'theme_wrapper.dart'; export 'inherited_neumorphic_theme.dart'; export 'theme.dart'; @@ -106,7 +100,6 @@ class NeumorphicTheme extends StatefulWidget { } static double? embossDepth(BuildContext context) { - if (currentTheme(context).depth == null) return null; return -currentTheme(context).depth.abs(); } diff --git a/lib/src/theme/theme.dart b/lib/src/theme/theme.dart index 8da325c2..92efa86d 100644 --- a/lib/src/theme/theme.dart +++ b/lib/src/theme/theme.dart @@ -1,15 +1,6 @@ import 'dart:ui'; -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart' show IconThemeData, TextTheme; -import 'package:flutter/painting.dart'; -import 'package:flutter_neumorphic/src/theme/app_bar.dart'; -import 'package:flutter_neumorphic/src/widget/container.dart'; - import '../../flutter_neumorphic.dart'; -import '../colors.dart'; -import '../light_source.dart'; -import '../shape.dart'; export '../colors.dart'; export '../light_source.dart'; diff --git a/lib/src/theme/theme_wrapper.dart b/lib/src/theme/theme_wrapper.dart index e7241b2b..41230884 100644 --- a/lib/src/theme/theme_wrapper.dart +++ b/lib/src/theme/theme_wrapper.dart @@ -1,5 +1,3 @@ -import 'dart:ui'; - import 'package:flutter/material.dart'; import 'theme.dart'; @@ -25,7 +23,9 @@ class ThemeWrapper { themeMode == ThemeMode.dark || //The setting indicating the current brightness mode of the host platform. If the platform has no preference, platformBrightness defaults to Brightness.light. (themeMode == ThemeMode.system && - window.platformBrightness == Brightness.dark); + WidgetsBinding.instance.platformDispatcher.views.first + .platformDispatcher.platformBrightness == + Brightness.dark); NeumorphicThemeData? get current { if (useDark) { diff --git a/lib/src/widget/app.dart b/lib/src/widget/app.dart index 70948b8d..72b88b2b 100644 --- a/lib/src/widget/app.dart +++ b/lib/src/widget/app.dart @@ -1,4 +1,3 @@ -import 'package:flutter/material.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class NeumorphicApp extends StatelessWidget { @@ -86,13 +85,8 @@ class NeumorphicApp extends StatelessWidget { return ThemeData( primaryColor: theme.accentColor, - accentColor: theme.variantColor, iconTheme: theme.iconTheme, brightness: ThemeData.estimateBrightnessForColor(theme.baseColor), - primaryColorBrightness: - ThemeData.estimateBrightnessForColor(theme.accentColor), - accentColorBrightness: - ThemeData.estimateBrightnessForColor(theme.variantColor), textTheme: theme.textTheme, scaffoldBackgroundColor: theme.baseColor, ); diff --git a/lib/src/widget/app_bar.dart b/lib/src/widget/app_bar.dart index 75768744..c2219ed9 100644 --- a/lib/src/widget/app_bar.dart +++ b/lib/src/widget/app_bar.dart @@ -1,7 +1,4 @@ -import 'package:flutter/material.dart'; -import 'package:flutter/widgets.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; -import 'package:flutter_neumorphic/src/widget/back_button.dart'; class NeumorphicAppBar extends StatefulWidget implements PreferredSizeWidget { static const toolbarHeight = kToolbarHeight + 16 * 2; @@ -102,9 +99,9 @@ class NeumorphicAppBar extends StatefulWidget implements PreferredSizeWidget { @override NeumorphicAppBarState createState() => NeumorphicAppBarState(); - bool _getEffectiveCenterTitle(ThemeData theme, NeumorphicThemeData nTheme) { - if (centerTitle != null || nTheme.appBarTheme.centerTitle != null) - return centerTitle ?? nTheme.appBarTheme.centerTitle!; + bool _getEffectiveCenterTitle(ThemeData theme, NeumorphicThemeData? nTheme) { + if (centerTitle != null || nTheme?.appBarTheme.centerTitle != null) + return centerTitle ?? nTheme?.appBarTheme.centerTitle ?? false; switch (theme.platform) { case TargetPlatform.android: case TargetPlatform.fuchsia: @@ -178,11 +175,12 @@ class NeumorphicAppBarState extends State { Widget? title = widget.title; if (title != null) { - final AppBarTheme appBarTheme = AppBarTheme.of(context); title = DefaultTextStyle( - style: (appBarTheme.textTheme?.headline5 ?? - Theme.of(context).textTheme.headline5!) - .merge(widget.textStyle ?? nTheme?.current?.appBarTheme.textStyle), + style: (AppBarTheme.of(context).titleTextStyle ?? + Theme.of(context).textTheme.titleMedium!) + .merge(widget.textStyle ?? + nTheme?.current?.appBarTheme.textStyle ?? + const TextStyle()), softWrap: false, overflow: TextOverflow.ellipsis, child: title, @@ -235,7 +233,7 @@ class NeumorphicAppBarState extends State { middle: title, trailing: actions, centerMiddle: - widget._getEffectiveCenterTitle(theme, nTheme!.current!), + widget._getEffectiveCenterTitle(theme, nTheme?.current), middleSpacing: widget.titleSpacing, ), ), diff --git a/lib/src/widget/back_button.dart b/lib/src/widget/back_button.dart index 8757160c..ae74031c 100644 --- a/lib/src/widget/back_button.dart +++ b/lib/src/widget/back_button.dart @@ -1,5 +1,3 @@ -import 'package:flutter/material.dart'; -import 'package:flutter/widgets.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class NeumorphicBackButton extends StatelessWidget { diff --git a/lib/src/widget/button.dart b/lib/src/widget/button.dart index 5bf02bbb..5479b96b 100644 --- a/lib/src/widget/button.dart +++ b/lib/src/widget/button.dart @@ -1,11 +1,7 @@ -import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; -import 'package:flutter/widgets.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; -import '../theme/neumorphic_theme.dart'; -import '../widget/app_bar.dart'; + import 'animation/animated_scale.dart' as animationScale; -import 'container.dart'; typedef void NeumorphicButtonClickListener(); diff --git a/lib/src/widget/checkbox.dart b/lib/src/widget/checkbox.dart index 5f3959cc..431a7883 100644 --- a/lib/src/widget/checkbox.dart +++ b/lib/src/widget/checkbox.dart @@ -2,8 +2,6 @@ import 'package:flutter/widgets.dart'; import 'package:flutter_neumorphic/src/neumorphic_icons.dart'; import 'package:flutter_neumorphic/src/widget/container.dart'; -import '../neumorphic_box_shape.dart'; -import '../theme/neumorphic_theme.dart'; import 'button.dart'; typedef void NeumorphicCheckboxListener(T value); diff --git a/lib/src/widget/close_button.dart b/lib/src/widget/close_button.dart index f9e087f6..a11c1d65 100644 --- a/lib/src/widget/close_button.dart +++ b/lib/src/widget/close_button.dart @@ -1,5 +1,3 @@ -import 'package:flutter/material.dart'; -import 'package:flutter/widgets.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; class NeumorphicCloseButton extends StatelessWidget { diff --git a/lib/src/widget/container.dart b/lib/src/widget/container.dart index 9e1e94fa..10180926 100644 --- a/lib/src/widget/container.dart +++ b/lib/src/widget/container.dart @@ -1,13 +1,13 @@ import 'package:flutter/material.dart' as material; import 'package:flutter/widgets.dart'; -import '../neumorphic_box_shape.dart'; import '../decoration/neumorphic_decorations.dart'; +import '../neumorphic_box_shape.dart'; import '../theme/neumorphic_theme.dart'; import 'clipper/neumorphic_box_shape_clipper.dart'; -export '../neumorphic_box_shape.dart'; export '../decoration/neumorphic_decorations.dart'; +export '../neumorphic_box_shape.dart'; export '../theme/neumorphic_theme.dart'; /// The main container of the Neumorphic UI KIT @@ -118,7 +118,7 @@ class _NeumorphicContainer extends StatelessWidget { final shape = this.style.boxShape ?? NeumorphicBoxShape.rect(); return DefaultTextStyle( - style: this.textStyle ?? material.Theme.of(context).textTheme.bodyText2!, + style: this.textStyle ?? material.Theme.of(context).textTheme.bodyMedium!, child: AnimatedContainer( margin: this.margin, duration: this.duration, diff --git a/lib/src/widget/icon.dart b/lib/src/widget/icon.dart index 507af0cd..33afbbe5 100644 --- a/lib/src/widget/icon.dart +++ b/lib/src/widget/icon.dart @@ -1,7 +1,4 @@ -import 'package:flutter/widgets.dart'; - import '../../flutter_neumorphic.dart'; -import '../theme/neumorphic_theme.dart'; export '../decoration/neumorphic_decorations.dart'; export '../neumorphic_box_shape.dart'; diff --git a/lib/src/widget/indicator.dart b/lib/src/widget/indicator.dart index 35e43d2f..a28cea95 100644 --- a/lib/src/widget/indicator.dart +++ b/lib/src/widget/indicator.dart @@ -1,5 +1,3 @@ -import 'dart:ui'; - import 'package:flutter/widgets.dart'; import 'container.dart'; diff --git a/lib/src/widget/progress.dart b/lib/src/widget/progress.dart index c5e00de6..551251b6 100644 --- a/lib/src/widget/progress.dart +++ b/lib/src/widget/progress.dart @@ -1,5 +1,3 @@ -import 'dart:ui'; - import 'package:flutter/widgets.dart'; import 'container.dart'; diff --git a/lib/src/widget/radio.dart b/lib/src/widget/radio.dart index f2fc0ab5..20a8e4b0 100644 --- a/lib/src/widget/radio.dart +++ b/lib/src/widget/radio.dart @@ -1,7 +1,5 @@ import 'package:flutter/widgets.dart'; -import '../neumorphic_box_shape.dart'; -import '../theme/neumorphic_theme.dart'; import 'button.dart'; import 'container.dart'; diff --git a/lib/src/widget/range_slider.dart b/lib/src/widget/range_slider.dart index 2c8a718b..79d363ee 100644 --- a/lib/src/widget/range_slider.dart +++ b/lib/src/widget/range_slider.dart @@ -1,10 +1,5 @@ -import 'package:flutter/rendering.dart'; -import 'package:flutter/widgets.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; -import 'container.dart'; -import 'progress.dart'; - typedef void NeumorphicRangeSliderLowListener(double percent); typedef void NeumorphicRangeSliderHighListener(double percent); diff --git a/lib/src/widget/slider.dart b/lib/src/widget/slider.dart index 4e5a5eed..45abac72 100644 --- a/lib/src/widget/slider.dart +++ b/lib/src/widget/slider.dart @@ -1,9 +1,5 @@ -import 'package:flutter/widgets.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; -import 'container.dart'; -import 'progress.dart'; - typedef void NeumorphicSliderListener(double percent); /// A style to customize the [NeumorphicSlider] diff --git a/lib/src/widget/switch.dart b/lib/src/widget/switch.dart index 25cb6824..56614d3e 100644 --- a/lib/src/widget/switch.dart +++ b/lib/src/widget/switch.dart @@ -1,11 +1,7 @@ -import 'package:flutter/widgets.dart'; import 'package:flutter_neumorphic/src/widget/animation/animated_scale.dart' as animationScale; import '../../flutter_neumorphic.dart'; -import '../neumorphic_box_shape.dart'; -import '../theme/neumorphic_theme.dart'; -import 'container.dart'; /// A style to customize the [NeumorphicSwitch] /// diff --git a/lib/src/widget/text.dart b/lib/src/widget/text.dart index bc7765fd..573b93f9 100644 --- a/lib/src/widget/text.dart +++ b/lib/src/widget/text.dart @@ -1,11 +1,9 @@ import 'dart:ui' as ui show FontFeature; import 'package:flutter/material.dart' as material; -import 'package:flutter/widgets.dart'; import 'package:flutter_neumorphic/src/decoration/neumorphic_text_decorations.dart'; import '../../flutter_neumorphic.dart'; -import '../theme/neumorphic_theme.dart'; export '../decoration/neumorphic_decorations.dart'; export '../neumorphic_box_shape.dart'; diff --git a/lib/src/widget/toggle.dart b/lib/src/widget/toggle.dart index cfb560e0..620282c4 100644 --- a/lib/src/widget/toggle.dart +++ b/lib/src/widget/toggle.dart @@ -1,11 +1,5 @@ -import 'package:flutter/material.dart'; -import 'package:flutter/widgets.dart'; import 'package:flutter_neumorphic/flutter_neumorphic.dart'; -import '../neumorphic_box_shape.dart'; -import '../theme/neumorphic_theme.dart'; -import 'container.dart'; - class NeumorphicToggleStyle { final double? depth; final bool? disableDepth; diff --git a/pubspec.yaml b/pubspec.yaml index 5044f0f8..66c31db0 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -10,8 +10,8 @@ homepage: https://github.com/Idean/Flutter-Neumorphic issue_tracker: https://github.com/Idean/Flutter-Neumorphic/issues environment: - sdk: ">=2.12.0 <3.0.0" - flutter: ">=1.13.18" + sdk: '>=3.2.6 <4.0.0' + flutter: '>=1.13.18' dependencies: flutter: @@ -23,6 +23,6 @@ dev_dependencies: flutter: fonts: - - family: NeumorphicIcons - fonts: - - asset: fonts/NeumorphicIcons.ttf \ No newline at end of file + - family: NeumorphicIcons + fonts: + - asset: fonts/NeumorphicIcons.ttf