title: Flutter googlemaps reloads everytime I change page in tabnavigator
body: <p><a href="https://i.stack.imgur.com/6kWkg.gif" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/6kWkg.gif" alt="Map loads everytime I go back to MapPage"></a></p>
  
  <p>Hello, I'm trying to use Flutter and the new googlemaps plugin in my application. My problem is that everytime I change page in the tabnav I it will reload googlemaps widget. I tried using AutomaticKeepAliveClientMixin but that didn't help. I will keep trying to figure this out, but help is appreciated or if somebody knows what I'm doing wrong? Thank you!</p>
  
  <p>This is my code: </p>
  
  <pre><code>import 'package:flutter/material.dart';
  import 'package:restapoints/pages/pages.dart';
  
  class App extends StatelessWidget {
    @override
    Widget build(BuildContext context) {
      return MaterialApp(
        title: 'My Flutter App',
        home: Home(),
      );
    }
  }
  
  class Home extends StatefulWidget {
    @override
    State&lt;StatefulWidget&gt; createState() {
      return _HomeState();
    }
  }
  
  class _HomeState extends State&lt;Home&gt; {
    int _currentIndex = 0;
    final List&lt;Widget&gt; _children = [
      MapPage(),
      QrPage(),
    ];
    @override
    Widget build(BuildContext context) {
      return Scaffold(
        appBar: AppBar(
          title: Text('My Flutter App'),
        ),
        body: _children[_currentIndex], // new
        bottomNavigationBar: BottomNavigationBar(
          onTap: onTabTapped, // new
          currentIndex: _currentIndex, // new
          items: [
            new BottomNavigationBarItem(
              icon: Icon(Icons.home),
              title: Text('Home'),
            ),
            new BottomNavigationBarItem(
              icon: Icon(Icons.mail),
              title: Text('Messages'),
            ),
            new BottomNavigationBarItem(
                icon: Icon(Icons.person), title: Text('Profile'))
          ],
        ),
      );
    }
  
    void onTabTapped(int index) {
      setState(() {
        _currentIndex = index;
      });
    }
  }
  </code></pre>
  
  <p>MapPage: </p>
  
  <pre><code>    class MapPage extends StatefulWidget {
        @override
        _MapPageState createState() =&gt; _MapPageState();
      }
  
      class _MapPageState extends State&lt;MapPage&gt;
          with AutomaticKeepAliveClientMixin&lt;MapPage&gt; {
  
    @override
    Widget build(BuildContext context) {
      return Container(
        ///Getting size of the screen from [MediaQuery] inherited widget.
        height: MediaQuery.of(context).size.height,
        width: MediaQuery.of(context).size.width,
        child: Stack(
          children: &lt;Widget&gt;[
            GoogleMap(
              onMapCreated: _onMapCreated,
              options: GoogleMapOptions(
                compassEnabled: true,
                mapType: MapType.normal,
                trackCameraPosition: true,
              ),
            ),
  
            ///If not enabled don't show ListView of places.
            toggleListView
                ? Positioned(
                    top: MediaQuery.of(context).size.height / 2,
                    left: 10,
                    child: Container(
                        height: MediaQuery.of(context).size.height / 4,
                        width: MediaQuery.of(context).size.width,
                        child: ListView(
                          scrollDirection: Axis.horizontal,
                          padding: EdgeInsets.all(5.0),
                          children: _places.map((place) {
                            return _placeCard(place);
                          }).toList(),
                        )),
                  )
                : Container()
          ],
        ),
      );
  
    @override
    bool get wantKeepAlive =&gt; true;
  }
  </code></pre>