diff --git a/examples/ui_3d/android/app/src/main/AndroidManifest.xml b/examples/ui_3d/android/app/src/main/AndroidManifest.xml index da3263e..b763e59 100644 --- a/examples/ui_3d/android/app/src/main/AndroidManifest.xml +++ b/examples/ui_3d/android/app/src/main/AndroidManifest.xml @@ -6,7 +6,6 @@ additional functionality it is fine to subclass or reimplement FlutterApplication and put your custom class here. --> with TickerProviderStateMixin { - AnimationController animationController; + AnimationController? animationController; @override void initState() { @@ -29,14 +29,14 @@ class _ZUiState extends State with TickerProviderStateMixin { vsync: this, ); Future.delayed(Duration(seconds: 3), - () => {animationController.repeat(reverse: true)}); + () => {animationController?.repeat(reverse: true)}); super.initState(); } @override void dispose() { - animationController.dispose(); + animationController?.dispose(); super.dispose(); } @@ -44,7 +44,7 @@ class _ZUiState extends State with TickerProviderStateMixin { @override Widget build(BuildContext context) { final curve = CurvedAnimation( - parent: animationController, curve: Curves.easeInOutSine); + parent: animationController!, curve: Curves.easeInOutSine); final mediaQuery = MediaQuery.of(context); final height = mediaQuery.size.height; @@ -53,7 +53,7 @@ class _ZUiState extends State with TickerProviderStateMixin { return Material( color: Colors.black, child: AnimatedBuilder( - animation: animationController, + animation: animationController!, builder: (context, _) { final progress = 1 - curve.value; final appBarProgress = @@ -138,7 +138,7 @@ class ZAppBar extends StatelessWidget { height: appBar, width: width, depth: depth, - color: Colors.blueAccent[400], + color: Colors.blueAccent[400]!, ), ), ZToBoxAdapter( @@ -162,7 +162,7 @@ class ZFloatingButton extends StatelessWidget { child: ZCylinder( diameter: floatingButtonSize, length: depth, - color: Colors.blueAccent[400], + color: Colors.blueAccent[400]!, )), ZToBoxAdapter( height: floatingButtonSize, @@ -179,9 +179,9 @@ class ZFloatingButton extends StatelessWidget { } class ZListTile extends StatelessWidget { - final int index; + final int? index; - const ZListTile({Key key, this.index}) : super(key: key); + const ZListTile({Key? key, this.index}) : super(key: key); @override Widget build(BuildContext context) { @@ -194,7 +194,7 @@ class ZListTile extends StatelessWidget { depth: titleDepth / 2, height: tileHeight, width: width, - color: Colors.grey[100], + color: Colors.grey[100]!, )), ZToBoxAdapter( height: tileHeight, diff --git a/examples/ui_3d/pubspec.lock b/examples/ui_3d/pubspec.lock index c1dca3c..4c5ca7c 100644 --- a/examples/ui_3d/pubspec.lock +++ b/examples/ui_3d/pubspec.lock @@ -5,58 +5,58 @@ packages: dependency: transitive description: name: async - url: "https://pub.dartlang.org" + sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" + url: "https://pub.flutter-io.cn" source: hosted - version: "2.8.2" + version: "2.11.0" boolean_selector: dependency: transitive description: name: boolean_selector - url: "https://pub.dartlang.org" + sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" + url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.0" + version: "2.1.1" characters: dependency: transitive description: name: characters - url: "https://pub.dartlang.org" + sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" + url: "https://pub.flutter-io.cn" source: hosted - version: "1.2.0" - charcode: - dependency: transitive - description: - name: charcode - url: "https://pub.dartlang.org" - source: hosted - version: "1.3.1" + version: "1.3.0" clock: dependency: transitive description: name: clock - url: "https://pub.dartlang.org" + sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf + url: "https://pub.flutter-io.cn" source: hosted - version: "1.1.0" + version: "1.1.1" collection: dependency: transitive description: name: collection - url: "https://pub.dartlang.org" + sha256: f092b211a4319e98e5ff58223576de6c2803db36221657b46c82574721240687 + url: "https://pub.flutter-io.cn" source: hosted - version: "1.15.0" + version: "1.17.2" cupertino_icons: dependency: "direct main" description: name: cupertino_icons - url: "https://pub.dartlang.org" + sha256: e35129dc44c9118cee2a5603506d823bab99c68393879edb440e0090d07586be + url: "https://pub.flutter-io.cn" source: hosted - version: "0.1.3" + version: "1.0.5" fake_async: dependency: transitive description: name: fake_async - url: "https://pub.dartlang.org" + sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" + url: "https://pub.flutter-io.cn" source: hosted - version: "1.2.0" + version: "1.3.1" flutter: dependency: "direct main" description: flutter @@ -71,30 +71,34 @@ packages: dependency: transitive description: name: matcher - url: "https://pub.dartlang.org" + sha256: "1803e76e6653768d64ed8ff2e1e67bea3ad4b923eb5c56a295c3e634bad5960e" + url: "https://pub.flutter-io.cn" + source: hosted + version: "0.12.16" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: "9528f2f296073ff54cb9fee677df673ace1218163c3bc7628093e7eed5203d41" + url: "https://pub.flutter-io.cn" source: hosted - version: "0.12.11" + version: "0.5.0" meta: dependency: transitive description: name: meta - url: "https://pub.dartlang.org" + sha256: "3c74dbf8763d36539f114c799d8a2d87343b5067e9d796ca22b5eb8437090ee3" + url: "https://pub.flutter-io.cn" source: hosted - version: "1.7.0" + version: "1.9.1" path: dependency: transitive description: name: path - url: "https://pub.dartlang.org" - source: hosted - version: "1.8.0" - quiver: - dependency: transitive - description: - name: quiver - url: "https://pub.dartlang.org" + sha256: "8829d8a55c13fc0e37127c29fedf290c102f4e40ae94ada574091fe0ff96c917" + url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.5" + version: "1.8.3" sky_engine: dependency: transitive description: flutter @@ -104,64 +108,72 @@ packages: dependency: transitive description: name: source_span - url: "https://pub.dartlang.org" + sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" + url: "https://pub.flutter-io.cn" source: hosted - version: "1.8.1" + version: "1.10.0" stack_trace: dependency: transitive description: name: stack_trace - url: "https://pub.dartlang.org" + sha256: c3c7d8edb15bee7f0f74debd4b9c5f3c2ea86766fe4178eb2a18eb30a0bdaed5 + url: "https://pub.flutter-io.cn" source: hosted - version: "1.10.0" + version: "1.11.0" stream_channel: dependency: transitive description: name: stream_channel - url: "https://pub.dartlang.org" + sha256: "83615bee9045c1d322bbbd1ba209b7a749c2cbcdcb3fdd1df8eb488b3279c1c8" + url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.0" + version: "2.1.1" string_scanner: dependency: transitive description: name: string_scanner - url: "https://pub.dartlang.org" + sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" + url: "https://pub.flutter-io.cn" source: hosted - version: "1.1.0" + version: "1.2.0" term_glyph: dependency: transitive description: name: term_glyph - url: "https://pub.dartlang.org" + sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 + url: "https://pub.flutter-io.cn" source: hosted - version: "1.2.0" + version: "1.2.1" test_api: dependency: transitive description: name: test_api - url: "https://pub.dartlang.org" + sha256: "75760ffd7786fffdfb9597c35c5b27eaeec82be8edfb6d71d32651128ed7aab8" + url: "https://pub.flutter-io.cn" source: hosted - version: "0.4.3" - typed_data: + version: "0.6.0" + vector_math: dependency: transitive description: - name: typed_data - url: "https://pub.dartlang.org" + name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.flutter-io.cn" source: hosted - version: "1.3.0" - vector_math: + version: "2.1.4" + web: dependency: transitive description: - name: vector_math - url: "https://pub.dartlang.org" + name: web + sha256: dc8ccd225a2005c1be616fe02951e2e342092edf968cf0844220383757ef8f10 + url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.1" + version: "0.1.4-beta" zflutter: dependency: "direct main" description: path: "../../zflutter" relative: true source: path - version: "0.0.1+2" + version: "0.0.1+3" sdks: - dart: ">=2.14.0 <3.0.0" + dart: ">=3.1.0-185.0.dev <4.0.0" diff --git a/examples/ui_3d/pubspec.yaml b/examples/ui_3d/pubspec.yaml index 5e0d1a6..b9e9496 100644 --- a/examples/ui_3d/pubspec.yaml +++ b/examples/ui_3d/pubspec.yaml @@ -18,7 +18,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev version: 1.0.0+1 environment: - sdk: ">=2.7.0 <3.0.0" + sdk: ">=2.12.0 <3.0.0" dependencies: flutter: @@ -29,7 +29,7 @@ dependencies: # The following adds the Cupertino Icons font to your application. # Use with the CupertinoIcons class for iOS style icons. - cupertino_icons: ^0.1.3 + cupertino_icons: ^1.0.4 dev_dependencies: flutter_test: diff --git a/zflutter/example/android/app/src/main/AndroidManifest.xml b/zflutter/example/android/app/src/main/AndroidManifest.xml index 55ca830..bfb7b47 100644 --- a/zflutter/example/android/app/src/main/AndroidManifest.xml +++ b/zflutter/example/android/app/src/main/AndroidManifest.xml @@ -6,7 +6,6 @@ additional functionality it is fine to subclass or reimplement FlutterApplication and put your custom class here. --> UIViewControllerBasedStatusBarAppearance + CADisableMinimumFrameDurationOnPhone + diff --git a/zflutter/example/lib/examples/device/cupertino_sheet.dart b/zflutter/example/lib/examples/device/cupertino_sheet.dart index d69c722..44369ac 100644 --- a/zflutter/example/lib/examples/device/cupertino_sheet.dart +++ b/zflutter/example/lib/examples/device/cupertino_sheet.dart @@ -1,7 +1,5 @@ import 'dart:ui'; -import 'package:flutter/rendering.dart'; -import 'package:flutter/widgets.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:slivers/slivers.dart'; diff --git a/zflutter/example/lib/examples/device/device.dart b/zflutter/example/lib/examples/device/device.dart index e4cc8ec..53df4ce 100644 --- a/zflutter/example/lib/examples/device/device.dart +++ b/zflutter/example/lib/examples/device/device.dart @@ -296,8 +296,7 @@ class FrameThemeData { const FrameThemeData.raw({ required this.frameColor, required this.statusBarBrightness, - }) : assert(frameColor != null), - assert(statusBarBrightness != null); + }); Color get statusBarColor => statusBarBrightness == Brightness.dark ? Colors.white : Colors.black; diff --git a/zflutter/example/lib/examples/getting_started.dart b/zflutter/example/lib/examples/getting_started.dart index 3f64b11..8e658b1 100644 --- a/zflutter/example/lib/examples/getting_started.dart +++ b/zflutter/example/lib/examples/getting_started.dart @@ -1,5 +1,3 @@ -import 'dart:math'; - import 'package:flutter/material.dart'; import 'package:z_flutter_example/spin.dart'; import 'package:zflutter/zflutter.dart'; diff --git a/zflutter/example/lib/examples/ink_well.dart b/zflutter/example/lib/examples/ink_well.dart index 183280d..0fc19f6 100644 --- a/zflutter/example/lib/examples/ink_well.dart +++ b/zflutter/example/lib/examples/ink_well.dart @@ -1,4 +1,3 @@ -import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:zflutter/zflutter.dart'; import 'dart:math' as math; diff --git a/zflutter/example/lib/examples/on_the_go.dart b/zflutter/example/lib/examples/on_the_go.dart index b11e65f..f6647d4 100644 --- a/zflutter/example/lib/examples/on_the_go.dart +++ b/zflutter/example/lib/examples/on_the_go.dart @@ -1,9 +1,6 @@ -import 'dart:ui'; - import 'dart:math' as math; import 'package:flutter/material.dart'; -import 'package:flutter/widgets.dart'; import 'package:zflutter/zflutter.dart'; const illoSize = 128; diff --git a/zflutter/example/lib/examples/z_fighting.dart b/zflutter/example/lib/examples/z_fighting.dart index 5ade8e3..73e7d7f 100644 --- a/zflutter/example/lib/examples/z_fighting.dart +++ b/zflutter/example/lib/examples/z_fighting.dart @@ -1,4 +1,3 @@ -import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:zflutter/zflutter.dart'; diff --git a/zflutter/example/lib/main.dart b/zflutter/example/lib/main.dart index 7ff651c..cca8fbc 100644 --- a/zflutter/example/lib/main.dart +++ b/zflutter/example/lib/main.dart @@ -1,6 +1,4 @@ -import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; -import 'package:zflutter/zflutter.dart'; import 'examples/examples.dart'; import 'examples/getting_started.dart'; diff --git a/zflutter/example/pubspec.lock b/zflutter/example/pubspec.lock index a3b20f1..c6c2b9b 100644 --- a/zflutter/example/pubspec.lock +++ b/zflutter/example/pubspec.lock @@ -42,21 +42,21 @@ packages: name: collection url: "https://pub.dartlang.org" source: hosted - version: "1.15.0" + version: "1.16.0" cupertino_icons: dependency: "direct main" description: name: cupertino_icons url: "https://pub.dartlang.org" source: hosted - version: "1.0.4" + version: "1.0.5" fake_async: dependency: transitive description: name: fake_async url: "https://pub.dartlang.org" source: hosted - version: "1.2.0" + version: "1.3.0" flutter: dependency: "direct main" description: flutter @@ -80,7 +80,7 @@ packages: name: material_color_utilities url: "https://pub.dartlang.org" source: hosted - version: "0.1.3" + version: "0.1.4" meta: dependency: transitive description: @@ -94,14 +94,14 @@ packages: name: modal_bottom_sheet url: "https://pub.dartlang.org" source: hosted - version: "2.0.0" + version: "2.1.0" path: dependency: transitive description: name: path url: "https://pub.dartlang.org" source: hosted - version: "1.8.0" + version: "1.8.1" sky_engine: dependency: transitive description: flutter @@ -120,7 +120,7 @@ packages: name: source_span url: "https://pub.dartlang.org" source: hosted - version: "1.8.1" + version: "1.8.2" stack_trace: dependency: transitive description: @@ -155,21 +155,14 @@ packages: name: test_api url: "https://pub.dartlang.org" source: hosted - version: "0.4.8" - typed_data: - dependency: transitive - description: - name: typed_data - url: "https://pub.dartlang.org" - source: hosted - version: "1.3.0" + version: "0.4.9" vector_math: dependency: transitive description: name: vector_math url: "https://pub.dartlang.org" source: hosted - version: "2.1.1" + version: "2.1.2" zflutter: dependency: "direct main" description: @@ -178,5 +171,5 @@ packages: source: path version: "0.0.1+3" sdks: - dart: ">=2.14.0 <3.0.0" - flutter: ">=1.17.0" + dart: ">=2.17.0 <3.0.0" + flutter: ">=3.0.0" diff --git a/zflutter/lib/src/core/renderer.dart b/zflutter/lib/src/core/renderer.dart index 9989ab8..9de3436 100644 --- a/zflutter/lib/src/core/renderer.dart +++ b/zflutter/lib/src/core/renderer.dart @@ -1,7 +1,6 @@ //@dart=2.12 import 'package:flutter/material.dart'; import 'package:zflutter/src/core/core.dart'; -import 'package:vector_math/vector_math_64.dart' as vector; class ZRenderer { Paint paint = Paint() diff --git a/zflutter/lib/src/core/widgets/positioned.dart b/zflutter/lib/src/core/widgets/positioned.dart index d54e188..9f8da7c 100644 --- a/zflutter/lib/src/core/widgets/positioned.dart +++ b/zflutter/lib/src/core/widgets/positioned.dart @@ -123,7 +123,7 @@ class ZPositioned extends ZUpdateParentDataWidget with ZWidget { if (needsLayout) { renderObject.markNeedsLayout(); - AbstractNode? targetParent = renderObject.parent; + RenderObject? targetParent = renderObject.parent; while (targetParent is RenderZBox) { targetParent.markNeedsLayout(); @@ -156,7 +156,7 @@ class ZPositioned extends ZUpdateParentDataWidget with ZWidget { } } - final AbstractNode? targetParent = renderObject.parent; + final RenderObject? targetParent = renderObject.parent; if (targetParent is RenderObject) targetParent.markNeedsLayout(); } diff --git a/zflutter/lib/src/core/widgets/shape.dart b/zflutter/lib/src/core/widgets/shape.dart index b6d5a79..7c94b25 100644 --- a/zflutter/lib/src/core/widgets/shape.dart +++ b/zflutter/lib/src/core/widgets/shape.dart @@ -3,8 +3,6 @@ import 'package:flutter/material.dart'; import 'package:flutter/rendering.dart'; import 'package:zflutter/zflutter.dart'; -import '../core.dart'; - /// A zWidget that paints a shape in a 3D space. /// /// zWidget are special-purpose widgets that can be combined using a diff --git a/zflutter/lib/src/widgets/figures/cone.dart b/zflutter/lib/src/widgets/figures/cone.dart index 6e4153c..b1b18ab 100644 --- a/zflutter/lib/src/widgets/figures/cone.dart +++ b/zflutter/lib/src/widgets/figures/cone.dart @@ -16,8 +16,7 @@ class ZCone extends ZCircle { double stroke = 1, bool fill = true, ZVector front = const ZVector.only(z: 1), - }) : assert(diameter != null), - super( + }) : super( key: key, color: color, backfaceColor: backfaceColor, @@ -91,9 +90,7 @@ class RenderZCone extends RenderZShape { bool fill = false, double stroke = 1, PathBuilder pathBuilder = PathBuilder.empty, - }) : assert(length != null), - assert(diameter != null), - _length = length, + }) : _length = length, _diameter = diameter, super( color: color, diff --git a/zflutter/lib/src/widgets/figures/hemisphere.dart b/zflutter/lib/src/widgets/figures/hemisphere.dart index 0a902dd..f09e606 100644 --- a/zflutter/lib/src/widgets/figures/hemisphere.dart +++ b/zflutter/lib/src/widgets/figures/hemisphere.dart @@ -1,9 +1,6 @@ -import 'dart:ui'; - import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; -import 'package:zflutter/src/widgets/group.dart'; import 'package:zflutter/zflutter.dart'; import 'dart:math' as math; diff --git a/zflutter/pubspec.lock b/zflutter/pubspec.lock index ba4781c..c516655 100644 --- a/zflutter/pubspec.lock +++ b/zflutter/pubspec.lock @@ -49,7 +49,7 @@ packages: name: collection url: "https://pub.dartlang.org" source: hosted - version: "1.15.0" + version: "1.16.0" equatable: dependency: transitive description: @@ -63,7 +63,7 @@ packages: name: fake_async url: "https://pub.dartlang.org" source: hosted - version: "1.2.0" + version: "1.3.0" flutter: dependency: "direct main" description: flutter @@ -87,7 +87,7 @@ packages: name: material_color_utilities url: "https://pub.dartlang.org" source: hosted - version: "0.1.3" + version: "0.1.4" meta: dependency: transitive description: @@ -101,7 +101,7 @@ packages: name: path url: "https://pub.dartlang.org" source: hosted - version: "1.8.0" + version: "1.8.1" sky_engine: dependency: transitive description: flutter @@ -113,7 +113,7 @@ packages: name: source_span url: "https://pub.dartlang.org" source: hosted - version: "1.8.1" + version: "1.8.2" stack_trace: dependency: transitive description: @@ -148,21 +148,14 @@ packages: name: test_api url: "https://pub.dartlang.org" source: hosted - version: "0.4.8" - typed_data: - dependency: transitive - description: - name: typed_data - url: "https://pub.dartlang.org" - source: hosted - version: "1.3.0" + version: "0.4.9" vector_math: dependency: transitive description: name: vector_math url: "https://pub.dartlang.org" source: hosted - version: "2.1.1" + version: "2.1.2" sdks: - dart: ">=2.15.0 <3.0.0" + dart: ">=2.17.0-0 <3.0.0" flutter: ">=2.8.1"