title: ScreenManager nested inside a BoxLayout is not visible
body: <p>I am experimenting with Kivy and am trying to nest a ScreenManager instance inside of a BoxLayout. The problem I am having is that the ScreenManager and its Screen do not show when the ScreenManager is a child widget of the BoxLayout.</p>
  
  <p>This code shows a black screen.</p>
  
  <pre><code>from kivy.app import App
  from kivy.uix.boxlayout import BoxLayout
  from kivy.uix.label import Label
  from kivy.uix.screenmanager import Screen, ScreenManager
  
  
  class MenuScreen(Screen):
  
      def __init__(self, **kwargs):
          super(Screen, self).__init__(**kwargs)
          self.add_widget(Label(text="Some text."))
  
  screen_manager = ScreenManager()
  screen_manager.add_widget(MenuScreen(name="menu"))
  
  
  class Container(BoxLayout):
  
      def __init__(self, **kwargs):
          super(BoxLayout, self).__init__(**kwargs)
          self.add_widget(screen_manager)
  
  
  class NestedScreenManagerApp(App):
  
      def build(self):
          """
          :return: a BoxLayout with the screen manager nested inside it
          """
          return Container()
  
  
  if __name__ == "__main__":
      NestedScreenManagerApp().run()
  </code></pre>
  
  <p>On the other hand, this code (which returns the ScreenManager directly as the root widget) does work and the MenuScreen and its Label are visible. Returning the ScreenManager as the root widget is exactly what <a href="https://github.com/kivy/kivy/blob/master/examples/widgets/screenmanager.py" rel="nofollow">the official screen manager example app</a> does.</p>
  
  <pre><code>from kivy.app import App
  from kivy.uix.label import Label
  from kivy.uix.screenmanager import Screen, ScreenManager
  
  
  class MenuScreen(Screen):
  
      def __init__(self, **kwargs):
          super(Screen, self).__init__(**kwargs)
          self.add_widget(Label(text="Some text."))
  
  screen_manager = ScreenManager()
  screen_manager.add_widget(MenuScreen(name="menu"))
  
  
  class RootScreenManagerApp(App):
  
      def build(self):
          """
          :return: the screen manager directly
          """
          return screen_manager
  
  
  if __name__ == "__main__":
      RootScreenManagerApp().run()
  </code></pre>
  
  <p>How can I get the ScreenManager and its Screen to be visible when it is child widget of my Container(BoxLayout)? I think I am missing something really simple.</p>
  
  <p>I am using Kivy 1.8.0 on Python 2.7.9, running on Debian Jessie.</p>