title: Flutter Scaffold.of(context).openDrawer() doesn't work
body: <p>I want to open a drawer after pushing on the custom button in BottomMenu I have  trouble with Scaffold.of(context).openDrawer(), it doesn't work. My BottomMenu  is a <strong>separate</strong> widget class. As I understand, it doesn't work because it's a separate context. How can I get the right context? Or perhaps someone knows another solution.</p>
  
  <p>Here my code reproducer:</p>
  
  <pre><code>import 'package:flutter/material.dart';
  
  void main() =&gt; runApp(MyApp());
  
  class MyApp extends StatelessWidget {
    // This widget is the root of your application.
    @override
    Widget build(BuildContext context) {
      return MaterialApp(
        title: 'Flutter Demo',
        home: MyHomePage(title: 'Flutter Drawer'),
      );
    }
  }
  
  class MyHomePage extends StatefulWidget {
    MyHomePage({Key key, this.title}) : super(key: key);
    final String title;
  
    @override
    _MyHomePageState createState() =&gt; _MyHomePageState();
  }
  
  class _MyHomePageState extends State&lt;MyHomePage&gt; {
    @override
    Widget build(BuildContext context) {
      return Scaffold(
        appBar: AppBar(
          title: Text(widget.title),
        ),
        bottomNavigationBar: BottomMenu(),
        endDrawer: SizedBox(
          width: double.infinity,
          child: Drawer(
            elevation: 16,
            child: Container(
              color: Colors.black,
              child: ListView(
                padding: EdgeInsets.zero,
                children: &lt;Widget&gt;[
                  ListTile(
                      title: Text('Some context here',
                          style: TextStyle(color: Colors.white))),
                  ListTile(
                      title: Text('Some context here',
                          style: TextStyle(color: Colors.white))),
                ],
              ),
            ),
          ),
        ),
        body: Center(
          child: Column(
            mainAxisAlignment: MainAxisAlignment.center,
            children: &lt;Widget&gt;[
              Text(
                'Call Drawer form menu reproducer',
              )
            ],
          ),
        ),
      );
    }
  }
  
  class BottomMenu extends StatelessWidget {
    @override
    Widget build(BuildContext context) {
      return Padding(
        padding: const EdgeInsets.symmetric(horizontal: 15),
        child: Wrap(
          alignment: WrapAlignment.center,
          children: &lt;Widget&gt;[
            Divider(color: Colors.black, height: 1),
            Padding(
              padding: const EdgeInsets.symmetric(vertical: 2),
              child: Row(
                  mainAxisSize: MainAxisSize.max,
                  mainAxisAlignment: MainAxisAlignment.end,
                  children: &lt;Widget&gt;[
                    InkWell(
                      borderRadius: new BorderRadius.circular(20.0),
                      customBorder: Border.all(color: Colors.black),
                      child: Container(
                        padding: EdgeInsets.only(
                            left: 3, right: 6, bottom: 15, top: 11),
                        child: Row(
                          children: &lt;Widget&gt;[
                            Icon(Icons.menu),
                            Text('Show menu', style: TextStyle(fontSize: 15, fontWeight: FontWeight.bold)),
                          ],
                        ),
                      ),
                      onTap: () {
                        Scaffold.of(context).openDrawer();
                      },
                    ),
                  ],
                ),
            ),
          ],
        ),
      );
    }
  }
  
  </code></pre>