title: Navigator blocks communication between CustomScrollView and NestedScrollView
body: <p>Expected behaviour:
  The nested scroll view scrolls normaly if the custom scroll view gets scrolled and thus scrolls the appbar with it.</p>
  <p>Actually happening:
  Only the custom scrollview scrolls, but not the appbar (=nested scrollview).</p>
  <p>Wanted Behaviour can be achieved by either not using a customscrollview or not using a navigator (both no option in my case). This implementation worked before null safety if it helps in any case.</p>
  <p>Code example:</p>
  <pre><code>import 'dart:math';
  import 'package:flutter/material.dart';
  
  void main() {
    runApp(MyApp());
  }
  
  class MyApp extends StatefulWidget {
    @override
    _MyAppState createState() =&gt; _MyAppState();
  }
  
  class _MyAppState extends State&lt;MyApp&gt; {
    @override
    Widget build(BuildContext context) {
      return MaterialApp(
        theme: ThemeData(
          primarySwatch: Colors.blue,
          visualDensity: VisualDensity.adaptivePlatformDensity,
        ),
        home: TestScreen(),
      );
    }
  }
  
  class TestScreen extends StatefulWidget {
    @override
    _TestScreenState createState() =&gt; _TestScreenState();
  }
  
  class _TestScreenState extends State&lt;TestScreen&gt; {
    GlobalKey&lt;NavigatorState&gt; get navigatorKey =&gt;
        GlobalKey&lt;NavigatorState&gt;();
  
  
    @override
    void initState() {
      super.initState();
    }
  
    @override
    Widget build(BuildContext context) {
      return Scaffold(
          body: NestedScrollView(
            physics: BouncingScrollPhysics(),
            headerSliverBuilder: (context, innerBoxIsScrolled) =&gt; [
              SliverOverlapAbsorber(
                  handle:
                      NestedScrollView.sliverOverlapAbsorberHandleFor(context),
                  sliver: SliverAppBar(
                    title: Text(&quot;title&quot;),
                    pinned: true,
                    floating: false,
                    snap: false,
                    expandedHeight: 200,
                  ))
            ],
            // body: DemoPage(),
            body: Navigator(
                key: navigatorKey,
                onGenerateRoute: (settings) =&gt;
                    MaterialPageRoute(builder: (context) =&gt; DemoPage())),
          ));
    }
  }
  
  class DemoPage extends StatelessWidget {
  
    Color generateRandomColor1() {
      // Define all colors you want here
      const predefinedColors = [
        Colors.red,
        Colors.green,
        Colors.blue,
        Colors.black,
        Colors.white
      ];
      Random random = Random();
      return predefinedColors[random.nextInt(predefinedColors.length)];
    }
  
    @override
    Widget build(BuildContext context) {
      // return Container(
      //   color: Colors.red,
      //   height: 1000,
      //   width: 500,
      //   child: Center(
      //     child: RaisedButton(
      //       child: Text(&quot;Press&quot;),
      //       onPressed: () {
      //         Navigator.of(context)
      //             .push(MaterialPageRoute(builder: (context) =&gt; DemoPage()));
      //       },
      //     ),
      //   ),
      // );
      return CustomScrollView(slivers: [
        SliverToBoxAdapter(
          child: Container(
            color: generateRandomColor1(),
            height: 1000,
            width: 500,
            child: Center(
              child: Column(
                mainAxisSize: MainAxisSize.min,
                children: [
                  RaisedButton(
                    child: Text(&quot;Press&quot;),
                    onPressed: () {
                      Navigator.of(context)
                          .push(MaterialPageRoute(builder: (context) =&gt; DemoPage()));
                    },
                  ),
                  RaisedButton(
                    child: Text(&quot;pop&quot;),
                    onPressed: () {
                      Navigator.of(context).pop();
                    },
                  ),
                ],
              ),
            ),
          ),
        )
      ]);
    }
  }
  </code></pre>