hacktons / convex_bottom_bar

A Flutter package which implements a ConvexAppBar to show a convex tab in the bottom bar. Theming supported.
https://bar.hacktons.cn
Apache License 2.0
791 stars 147 forks source link

DefaultTabController Error after Flutter 3.7.0 upgrade #188

Closed JacoFourie closed 1 year ago

JacoFourie commented 1 year ago

Hi all was working fine for years. I upgraded to Flutter 3.7.0 and now I get this issue.

======== Exception caught by widgets library ======================================================= The following assertion was thrown building MediaQuery(MediaQueryData(size: Size(360.0, 692.0), devicePixelRatio: 2.0, textScaleFactor: 1.0, platformBrightness: Brightness.dark, padding: EdgeInsets.zero, viewPadding: EdgeInsets.zero, viewInsets: EdgeInsets.zero, alwaysUse24HourFormat: true, accessibleNavigation: false, highContrast: false, disableAnimations: false, invertColors: false, boldText: false, navigationMode: traditional, gestureSettings: DeviceGestureSettings(touchSlop: 8.0), displayFeatures: [])): DefaultTabController.of() was called with a context that does not contain a DefaultTabController widget.

No DefaultTabController widget ancestor could be found starting from the context that was passed to DefaultTabController.of(). This can happen because you are using a widget that looks for a DefaultTabController ancestor, but no such ancestor exists. The context used was: ConvexAppBar(dirty, state: ConvexAppBarState#41e92(lifecycle state: initialized)) The relevant error-causing widget was: Scaffold Scaffold:file:///D:/FlutterCourse/smh/lib/screens/load_screen.dart:138:12 When the exception was thrown, this was the stack:

0 DefaultTabController.of. (package:flutter/src/material/tab_controller.dart:423:9)

1 DefaultTabController.of (package:flutter/src/material/tab_controller.dart:435:6)

2 ConvexAppBarState._currentControllerRef (package:convex_bottom_bar/src/bar.dart:478:54)

3 ConvexAppBarState.didChangeDependencies (package:convex_bottom_bar/src/bar.dart:514:24)

4 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:5119:11)

5 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4944:5)

... Normal element mounting (13 frames)

18 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3953:16)

19 MultiChildRenderObjectElement.inflateWidget (package:flutter/src/widgets/framework.dart:6512:36)

20 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:6524:32)

... Normal element mounting (326 frames)

346 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3953:16)

347 MultiChildRenderObjectElement.inflateWidget (package:flutter/src/widgets/framework.dart:6512:36)

348 Element.updateChild (package:flutter/src/widgets/framework.dart:3682:18)

349 RenderObjectElement.updateChildren (package:flutter/src/widgets/framework.dart:6041:32)

350 MultiChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6537:17)

351 Element.updateChild (package:flutter/src/widgets/framework.dart:3660:15)

352 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4993:16)

353 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5133:11)

354 Element.rebuild (package:flutter/src/widgets/framework.dart:4690:5)

355 StatefulElement.update (package:flutter/src/widgets/framework.dart:5156:5)

356 Element.updateChild (package:flutter/src/widgets/framework.dart:3660:15)

357 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4993:16)

358 Element.rebuild (package:flutter/src/widgets/framework.dart:4690:5)

359 ProxyElement.update (package:flutter/src/widgets/framework.dart:5301:5)

360 Element.updateChild (package:flutter/src/widgets/framework.dart:3660:15)

361 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4993:16)

362 Element.rebuild (package:flutter/src/widgets/framework.dart:4690:5)

363 ProxyElement.update (package:flutter/src/widgets/framework.dart:5301:5)

364 _InheritedNotifierElement.update (package:flutter/src/widgets/inherited_notifier.dart:107:11)

365 Element.updateChild (package:flutter/src/widgets/framework.dart:3660:15)

366 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4993:16)

367 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5133:11)

368 Element.rebuild (package:flutter/src/widgets/framework.dart:4690:5)

369 StatefulElement.update (package:flutter/src/widgets/framework.dart:5156:5)

370 Element.updateChild (package:flutter/src/widgets/framework.dart:3660:15)

371 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4993:16)

372 Element.rebuild (package:flutter/src/widgets/framework.dart:4690:5)

373 ProxyElement.update (package:flutter/src/widgets/framework.dart:5301:5)

374 _InheritedNotifierElement.update (package:flutter/src/widgets/inherited_notifier.dart:107:11)

375 Element.updateChild (package:flutter/src/widgets/framework.dart:3660:15)

376 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4993:16)

377 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5133:11)

378 Element.rebuild (package:flutter/src/widgets/framework.dart:4690:5)

379 StatefulElement.update (package:flutter/src/widgets/framework.dart:5156:5)

380 Element.updateChild (package:flutter/src/widgets/framework.dart:3660:15)

381 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4993:16)

382 Element.rebuild (package:flutter/src/widgets/framework.dart:4690:5)

383 ProxyElement.update (package:flutter/src/widgets/framework.dart:5301:5)

384 Element.updateChild (package:flutter/src/widgets/framework.dart:3660:15)

385 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4993:16)

386 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5133:11)

387 Element.rebuild (package:flutter/src/widgets/framework.dart:4690:5)

388 StatefulElement.update (package:flutter/src/widgets/framework.dart:5156:5)

389 Element.updateChild (package:flutter/src/widgets/framework.dart:3660:15)

390 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6384:14)

391 Element.updateChild (package:flutter/src/widgets/framework.dart:3660:15)

392 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6384:14)

393 Element.updateChild (package:flutter/src/widgets/framework.dart:3660:15)

394 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4993:16)

395 Element.rebuild (package:flutter/src/widgets/framework.dart:4690:5)

396 ProxyElement.update (package:flutter/src/widgets/framework.dart:5301:5)

397 Element.updateChild (package:flutter/src/widgets/framework.dart:3660:15)

398 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4993:16)

399 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5133:11)

400 Element.rebuild (package:flutter/src/widgets/framework.dart:4690:5)

401 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2743:19)

402 WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:863:21)

403 RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:381:5)

404 SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1289:15)

405 SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1218:9)

406 SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:1076:5)

407 _invoke (dart:ui/hooks.dart:145:13)

408 PlatformDispatcher._drawFrame (dart:ui/platform_dispatcher.dart:338:5)

409 _drawFrame (dart:ui/hooks.dart:112:31)

JacoFourie commented 1 year ago

OK I found this issue and also added the property

disableDefaultTabController: true,

Seems to be working now.

https://github.com/hacktons/convex_bottom_bar/issues/183

ArivhaySoft commented 1 year ago

OK I found this issue and also added the property

disableDefaultTabController: true,

Seems to be working now.

183

nice, work for me

avenwu commented 1 year ago

You may also update to 3.2.0 which fix the compiling error when using flutter 3.7

linoqui14 commented 1 year ago

I still have an error :( I currently have 3.2 version Flutter version is not yet 3.7