Skip to content

Cupertino Navigation Demo with rootNavigator - Multiple hero issue. #25362

@calvinmuller

Description

@calvinmuller

Steps to Reproduce

import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: PawzHome(),
    );
  }
}

class PawzHome extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return CupertinoTabScaffold(
      tabBar: CupertinoTabBar(
        items: const <BottomNavigationBarItem>[
          BottomNavigationBarItem(
            icon: Icon(CupertinoIcons.home),
            title: Text('Home'),
          ),
          BottomNavigationBarItem(
            icon: Icon(CupertinoIcons.conversation_bubble),
            title: Text('Support'),
          ),
        ],
      ),
      tabBuilder: (BuildContext context, int index) {
        switch (index) {
          case 0:
            return CupertinoTabView(
              builder: (BuildContext context) {
                return CupertinoDemoTab1();
              },
              defaultTitle: 'Colors',
            );
            break;
          case 1:
            return CupertinoTabView(
              builder: (BuildContext context) => CupertinoDemoTab2(),
              defaultTitle: 'Support Chat',
            );
            break;
        }
        return null;
      },
    );
  }
}

class CupertinoDemoTab1 extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return CupertinoPageScaffold(
      child: CustomScrollView(
        slivers: <Widget>[
          CupertinoSliverNavigationBar(),
          SliverList(
            delegate: SliverChildListDelegate([Tab1RowItem()]),
          ),
        ],
      ),
    );
  }
}

class Tab1RowItem extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return GestureDetector(
      behavior: HitTestBehavior.opaque,
      onTap: () {
        Navigator.of(context).push(CupertinoPageRoute<void>(
          title: "Click me",
          builder: (BuildContext context) => Tab1ItemPage(),
        ));
      },
      child: Padding(padding: EdgeInsets.all(10.0), child: Text("Click me")),
    );
  }
}

class Tab1ItemPage extends StatelessWidget {
  @override
  @override
  Widget build(BuildContext context) {
    return CupertinoPageScaffold(
        navigationBar: CupertinoNavigationBar(),
        child: Container(
          child: Center(
            child: CupertinoButton(
              child: const Text(
                'GET',
              ),
              onPressed: () {
                Navigator.of(context, rootNavigator: true).push(
                  CupertinoPageRoute<bool>(
                    fullscreenDialog: true,
                    builder: (BuildContext context) => Tab3Dialog(),
                  ),
                );
              },
            ),
          ),
        ));
  }
}

class CupertinoDemoTab2 extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return CupertinoPageScaffold(
        navigationBar: CupertinoNavigationBar(),
        child: Container(
          child: Center(
            child: Text("Tab 2"),
          ),
        ));
  }
}

class Tab3Dialog extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return CupertinoPageScaffold(
      navigationBar: CupertinoNavigationBar(
        leading: CupertinoButton(
          onPressed: () {
            Navigator.of(context).pop(false);
          },
          child: Text("Ok"),
        ),
      ),
      child: Center(
        child: CupertinoButton(
          color: CupertinoColors.activeBlue,
          child: const Text('Sign in'),
          onPressed: () {
            Navigator.pop(context);
          },
        ),
      ),
    );
  }
}
  1. Click "Click me"
  2. Click the "GET" button.

Logs

flutter: ══╡ EXCEPTION CAUGHT BY SCHEDULER LIBRARY ╞═════════════════════════════════════════════════════════
flutter: The following assertion was thrown during a scheduler callback:
flutter: There are multiple heroes that share the same tag within a subtree.
flutter: Within each subtree for which heroes are to be animated (typically a PageRoute subtree), each Hero
flutter: must have a unique non-null tag.
flutter: In this case, multiple heroes had the following tag: Default Hero tag for Cupertino navigation bars
flutter: with navigator NavigatorState#4e267(tickers: tracking 2 tickers)
flutter: Here is the subtree for one of the offending heroes:
flutter: # Hero(tag: Default Hero tag for Cupertino navigation bars with navigator NavigatorState#4e267(tickers: tracking 2 tickers), state: _HeroState#3711d)
flutter: # └KeyedSubtree-[GlobalKey#c479d]
flutter: #  └_TransitionableNavigationBar-[GlobalKey#f0eee Navigation bar render box]
flutter: #   └ClipRect(renderObject: RenderClipRect#a39d0 relayoutBoundary=up2)
flutter: #    └BackdropFilter(renderObject: RenderBackdropFilter#c6e85 relayoutBoundary=up3)
flutter: #     └DecoratedBox(bg: BoxDecoration(color: Color(0xccf8f8f8), border: Border(bottom: BorderSide(Color(0x4c000000), 0.0, BorderStyle.solid))), renderObject: RenderDecoratedBox#66c39 relayoutBoundary=up4)
flutter: #      └AnnotatedRegion<SystemUiOverlayStyle>(renderObject: RenderAnnotatedRegion<SystemUiOverlayStyle>#27d44 relayoutBoundary=up5)
flutter: #       └Stack(alignment: AlignmentDirectional.topStart, fit: expand, overflow: clip, renderObject: RenderStack#3165b relayoutBoundary=up6)
flutter: #        ├Positioned(left: 0.0, top: 64.0, right: 0.0, bottom: 0.0)
flutter: #        │└ClipRect(renderObject: RenderClipRect#78786)
flutter: #        │ └OverflowBox(alignment: AlignmentDirectional.bottomStart, minHeight: 0.0, maxHeight: Infinity, renderObject: RenderConstrainedOverflowBox#20036)
flutter: #        │  └Padding(padding: EdgeInsetsDirectional(16.0, 0.0, 0.0, 8.0), renderObject: RenderPadding#7e8e1 relayoutBoundary=up1)
flutter: #        │   └SafeArea(avoid left padding, avoid top padding, avoid right padding, avoid bottom padding)
flutter: #        │    └Padding(padding: EdgeInsets.zero, renderObject: RenderPadding#3c6a2 relayoutBoundary=up2)
flutter: #        │     └MediaQuery(MediaQueryData(size: Size(375.0, 667.0), devicePixelRatio: 2.0, textScaleFactor: 1.0, padding: EdgeInsets(0.0, 20.0, 0.0, 50.0), viewInsets: EdgeInsets.zero, alwaysUse24HourFormat: false, accessibleNavigation: falsedisableAnimations: falseinvertColors: falseboldText: false))
flutter: #        │      └AnimatedOpacity(duration: 150ms, opacity: 1.0, state: _AnimatedOpacityState#b08f1(ticker inactive and muted))
flutter: #        │       └FadeTransition(opacity: AnimationController#200dc(⏮ 0.000; paused; silenced; for AnimatedOpacity)➩_Linear➩Tween<double>(1.0 → null)➩1.0, renderObject: RenderAnimatedOpacity#4f57f relayoutBoundary=up3)
flutter: #        │        └Semantics(container: false, properties: SemanticsProperties, label: null, value: null, hint: null, hintOverrides: null, renderObject: RenderSemanticsAnnotations#7ca33 relayoutBoundary=up4)
flutter: #        │         └DefaultTextStyle(inherit: true, color: Color(0xff000000), family: .SF Pro Display, size: 34.0, weight: 700, letterSpacing: 0.2, softWrap: wrapping at box width, overflow: ellipsis, maxLines: 1)
flutter: #        │          └KeyedSubtree-[GlobalKey#c1e6e Large title]
flutter: #        │           └Text("Colors")
flutter: #        │            └RichText(softWrap: wrapping at box width, overflow: ellipsis, maxLines: 1, text: "Colors", renderObject: RenderParagraph#222d4 relayoutBoundary=up5)
flutter: #        └Positioned(left: 0.0, top: 0.0, right: 0.0)
flutter: #         └_PersistentNavigationBar
flutter: #          └SizedBox(height: 64.0, renderObject: RenderConstrainedBox#b2c5b relayoutBoundary=up7)
flutter: #           └SafeArea(avoid left padding, avoid top padding, avoid right padding, avoid bottom padding)
flutter: #            └Padding(padding: EdgeInsets(0.0, 20.0, 0.0, 0.0), renderObject: RenderPadding#761b4)
flutter: #             └MediaQuery(MediaQueryData(size: Size(375.0, 667.0), devicePixelRatio: 2.0, textScaleFactor: 1.0, padding: EdgeInsets(0.0, 0.0, 0.0, 50.0), viewInsets: EdgeInsets.zero, alwaysUse24HourFormat: false, accessibleNavigation: falsedisableAnimations: falseinvertColors: falseboldText: false))
flutter: #              └NavigationToolbar
flutter: #               └CustomMultiChildLayout(renderObject: RenderCustomMultiChildLayoutBox#a4b7e)
flutter: #                ├LayoutId-[<_ToolbarSlot.middle>](id: _ToolbarSlot.middle)
flutter: #                │└AnimatedOpacity(duration: 150ms, opacity: 0.0, state: _AnimatedOpacityState#35893(ticker inactive and muted))
flutter: #                │ └FadeTransition(opacity: AnimationController#78c23(⏮ 0.000; paused; silenced; for AnimatedOpacity)➩_Linear➩Tween<double>(0.0 → null)➩0.0, renderObject: RenderAnimatedOpacity#899e5 relayoutBoundary=up1)
flutter: #                │  └DefaultTextStyle(inherit: true, color: Color(0xff000000), family: .SF UI Text, size: 17.0, weight: 600, letterSpacing: -0.1, softWrap: wrapping at box width, overflow: clip)
flutter: #                │   └Semantics(container: false, properties: SemanticsProperties, label: null, value: null, hint: null, hintOverrides: null, renderObject: RenderSemanticsAnnotations#25aed relayoutBoundary=up2 NEEDS-PAINT)
flutter: #                │    └KeyedSubtree-[GlobalKey#2a105 Middle]
flutter: #                │     └Text("Colors")
flutter: #                │      └RichText(softWrap: wrapping at box width, maxLines: unlimited, text: "Colors", renderObject: RenderParagraph#43df2 relayoutBoundary=up3 NEEDS-PAINT)
flutter: #                └LayoutId-[<_ToolbarSlot.trailing>](id: _ToolbarSlot.trailing)
flutter: #                 └KeyedSubtree-[GlobalKey#ee34d Trailing]
flutter: #                  └Padding(padding: EdgeInsetsDirectional(0.0, 0.0, 16.0, 0.0), renderObject: RenderPadding#0f1c7 relayoutBoundary=up1)
flutter: #                   └DefaultTextStyle(inherit: true, color: Color(0xff007aff), family: .SF UI Text, size: 17.0, letterSpacing: -0.2, softWrap: wrapping at box width, overflow: clip)
flutter: #                    └Builder
flutter: #                     └IconTheme(IconThemeData#330fb(color: Color(0xff007aff), size: 32.0))
flutter: #                      └Row(direction: horizontal, mainAxisAlignment: start, mainAxisSize: min, crossAxisAlignment: center, renderObject: RenderFlex#a5999 relayoutBoundary=up2)
flutter: #                       ├Padding(padding: EdgeInsets(8.0, 0.0, 0.0, 0.0), renderObject: RenderPadding#9ee59 relayoutBoundary=up3)
flutter: #                       └ExitButton
flutter: #                        └CupertinoButton(state: _CupertinoButtonState#70a7a(ticker inactive and muted))
flutter: #                         └GestureDetector
flutter: #                          └RawGestureDetector(state: RawGestureDetectorState#0cd44(gestures: [tap], behavior: opaque))
flutter: #                           └_GestureSemantics(renderObject: RenderSemanticsGestureHandler#a0b22 relayoutBoundary=up3)
flutter: #                            └Listener(listeners: [down], behavior: opaque, renderObject: RenderPointerListener#84de2 relayoutBoundary=up4)
flutter: #                             └Semantics(container: false, properties: SemanticsProperties, label: null, value: null, hint: null, hintOverrides: null, renderObject: RenderSemanticsAnnotations#9f7c3 relayoutBoundary=up5)
flutter: #                              └ConstrainedBox(BoxConstraints(44.0<=w<=Infinity, 44.0<=h<=Infinity), renderObject: RenderConstrainedBox#0d030 relayoutBoundary=up6)
flutter: #                               └FadeTransition(opacity: AnimationController#fb4ce(⏮ 0.000; paused; silenced)➩CurveTween(curve: _DecelerateCurve)➩0.0➩Tween<double>(1.0 → 0.1)➩1.0, renderObject: RenderAnimatedOpacity#cca2b relayoutBoundary=up7)
flutter: #                                └DecoratedBox(bg: BoxDecoration(borderRadius: BorderRadius.circular(8.0)), renderObject: RenderDecoratedBox#9f8fc relayoutBoundary=up8)
flutter: #                                 └Padding(padding: EdgeInsets.zero, renderObject: RenderPadding#6b5d2 relayoutBoundary=up9)
flutter: #                                  └Center(alignment: center, widthFactor: 1.0, heightFactor: 1.0, renderObject: RenderPositionedBox#24652 relayoutBoundary=up10)
flutter: #                                   └DefaultTextStyle(inherit: false, color: Color(0xff007aff), family: .SF UI Text, size: 17.5, weight: 400, letterSpacing: -0.2, baseline: alphabetic, softWrap: wrapping at box width, overflow: clip)
flutter: #                                    └Tooltip("Back", vertical offset: 24.0, position: below, state: _TooltipState#bb1af(ticker inactive and muted))
flutter: #                                     └GestureDetector
flutter: #                                      └RawGestureDetector(state: RawGestureDetectorState#80361(gestures: [long press], behavior: opaque))
flutter: #                                       └Listener(listeners: [down], behavior: opaque, renderObject: RenderPointerListener#73efa relayoutBoundary=up11)
flutter: #                                        └Semantics(container: false, properties: SemanticsProperties, label: null, value: null, hint: null, hintOverrides: null, renderObject: RenderSemanticsAnnotations#d6cf5 relayoutBoundary=up12)
flutter: #                                         └Text("Exit")
flutter: #                                          └RichText(softWrap: wrapping at box width, maxLines: unlimited, text: "Exit", renderObject: RenderParagraph#c994d relayoutBoundary=up13)
flutter:
flutter: When the exception was thrown, this was the stack:
flutter: #0      Hero._allHeroesFor.visitor.<anonymous closure> (package:flutter/src/widgets/heroes.dart:210:15)
flutter: #1      Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:220:12)
flutter: #2      _SliverPersistentHeaderElement.visitChildren (package:flutter/src/widgets/sliver_persistent_header.dart:228:14)
flutter: #3      Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #4      ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #5      Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #6      ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #7      Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #8      MultiChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4948:16)
flutter: #9      Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #10     ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #11     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #12     SingleChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4848:14)
flutter: #13     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #14     SingleChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4848:14)
flutter: #15     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #16     SingleChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4848:14)
flutter: #17     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #18     SingleChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4848:14)
flutter: #19     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #20     ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #21     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #22     SingleChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4848:14)
flutter: #23     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #24     ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #25     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #26     ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #27     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #28     MultiChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4948:16)
flutter: #29     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #30     SingleChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4848:14)
flutter: #31     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #32     ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #33     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #34     ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #35     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #36     SingleChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4848:14)
flutter: #37     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #38     ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #39     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #40     SingleChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4848:14)
flutter: #41     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #42     SingleChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4848:14)
flutter: #43     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #44     MultiChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4948:16)
flutter: #45     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #46     ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #47     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #48     SingleChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4848:14)
flutter: #49     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #50     ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #51     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #52     SingleChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4848:14)
flutter: #53     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #54     ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #55     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #56     SingleChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4848:14)
flutter: #57     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #58     ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #59     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #60     ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #61     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #62     ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #63     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #64     SingleChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4848:14)
flutter: #65     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #66     ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #67     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #68     SingleChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4848:14)
flutter: #69     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #70     ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #71     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #72     ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #73     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #74     SingleChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4848:14)
flutter: #75     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #76     ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #77     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #78     ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #79     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #80     ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #81     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #82     ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #83     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #84     _TheatreElement.visitChildren (package:flutter/src/widgets/overlay.dart:468:16)
flutter: #85     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #86     ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #87     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #88     ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #89     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #90     SingleChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4848:14)
flutter: #91     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #92     ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #93     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #94     SingleChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4848:14)
flutter: #95     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #96     SingleChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4848:14)
flutter: #97     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #98     ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #99     Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #100    ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #101    Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #102    ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #103    Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #104    SingleChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4848:14)
flutter: #105    Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #106    ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #107    Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #108    ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #109    Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #110    SingleChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4848:14)
flutter: #111    Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #112    MultiChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4948:16)
flutter: #113    Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #114    ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #115    Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #116    ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #117    Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #118    MultiChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4948:16)
flutter: #119    Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #120    ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #121    Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #122    ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #123    Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #124    ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #125    Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #126    ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #127    Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #128    SingleChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4848:14)
flutter: #129    Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #130    ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3755:14)
flutter: #131    Hero._allHeroesFor.visitor (package:flutter/src/widgets/heroes.dart:225:15)
flutter: #132    SingleChildRenderObjectElement.visitChildren (package:flutter/src/widgets/framework.dart:4848:14)
flutter: #133    Element.visitChildElements (package:flutter/src/widgets/framework.dart:2686:5)
flutter: #134    Hero._allHeroesFor (package:flutter/src/widgets/heroes.dart:227:13)
flutter: #135    HeroController._startHeroTransition (package:flutter/src/widgets/heroes.dart:655:53)
flutter: #136    HeroController._maybeStartHeroTransition.<anonymous closure> (package:flutter/src/widgets/heroes.dart:630:11)
flutter: #137    _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:990:15)
flutter: #138    _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:938:9)
flutter: #139    _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:842:5)
flutter: #140    _invoke (dart:ui/hooks.dart:159:13)
flutter: #141    _drawFrame (dart:ui/hooks.dart:148:3)
flutter: ═════════════════════════════════════════════════════════════════════════════════
Analyzing hero_problem...                                        
No issues found! (ran in 1.4s)
[✓] Flutter (Channel master, v1.1.1-pre.18, on Mac OS X 10.13.6 17G3025, locale en-ZA)
    • Flutter version 1.1.1-pre.18 at /Users/calvinmuller/iStreet/Mobile/FlutterMastre
    • Framework revision e6d216cca8 (30 hours ago), 2018-12-12 21:22:16 -0500
    • Engine revision 571f47457c
    • Dart version 2.1.0 (build 2.1.0-dev.9.4 f9ebf21297)

[✓] Android toolchain - develop for Android devices (Android SDK 28.0.3)
    • Android SDK at /usr/local/opt/android-sdk/
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-28, build-tools 28.0.3
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1024-b01)
    • All Android licenses accepted.

[✓] iOS toolchain - develop for iOS devices (Xcode 10.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 10.1, Build version 10B61
    • ios-deploy 1.9.4
    • CocoaPods version 1.5.3

[✓] Android Studio (version 3.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 29.0.1
    • Dart plugin version 173.4700
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1024-b01)

[✓] IntelliJ IDEA Ultimate Edition (version 2018.1.5)
    • IntelliJ at /Applications/IntelliJ IDEA.app
    • Flutter plugin version 25.0.2
    • Dart plugin version 181.4892.1

[✓] Connected device (1 available)
    • iPhone 8 • 1ECD3898-CC78-472A-9ECA-CF5561A82B29 • ios • iOS 12.1 (simulator)

• No issues found!

Metadata

Metadata

Assignees

No one assigned

    Labels

    c: crashStack traces logged to the consolef: cupertinoflutter/packages/flutter/cupertino repositoryf: routesNavigator, Router, and related APIs.frameworkflutter/packages/flutter repository. See also f: labels.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions