Force main app to respect the configured window size
[erdslangetjie.git] / erdslangetjie / __main__.py
index a7d594d5bac3554db9852cdd0178c92e850ee4b8..95fdf1be5d3423a6e41fc20c63dd412af89e7d16 100644 (file)
@@ -5,8 +5,8 @@ import pygame
 kivy.require('1.6.0')
 
 from kivy.app import App
 kivy.require('1.6.0')
 
 from kivy.app import App
-from kivy.core.window import Window
 from kivy.uix.widget import Widget
 from kivy.uix.widget import Widget
+from kivy.logger import Logger, LoggerHistory
 from kivy.uix.relativelayout import RelativeLayout
 from kivy.uix.scrollview import ScrollView
 from kivy.graphics import Color, Rectangle
 from kivy.uix.relativelayout import RelativeLayout
 from kivy.uix.scrollview import ScrollView
 from kivy.graphics import Color, Rectangle
@@ -14,11 +14,8 @@ from kivy.utils import platform
 
 from erdslangetjie.level import LevelList
 from erdslangetjie.player import ThePlayer, Nemesis
 
 from erdslangetjie.level import LevelList
 from erdslangetjie.player import ThePlayer, Nemesis
+from erdslangetjie.constants import TILE_SIZE, QUIET
 
 
-if platform() != 'android':
-    TILE_SIZE = 40
-else:
-    TILE_SIZE = 64
 
 class GameWindow(RelativeLayout):
 
 
 class GameWindow(RelativeLayout):
 
@@ -50,6 +47,9 @@ class GameWindow(RelativeLayout):
         self.player.pos = self.level_obj.enter_pos
         if platform() != 'android':
             # Very hack'ish
         self.player.pos = self.level_obj.enter_pos
         if platform() != 'android':
             # Very hack'ish
+            # We need to delay this import until after the window creation by
+            # the app, else our size config doesn't work
+            from kivy.core.window import Window
             self.keyboard = Window.request_keyboard(self._closed, self)
             self.keyboard.bind(on_key_down=self._on_key_down)
 
             self.keyboard = Window.request_keyboard(self._closed, self)
             self.keyboard.bind(on_key_down=self._on_key_down)
 
@@ -255,4 +255,8 @@ class GameApp(App):
 def main():
     """ Erdslangetjie, a maze game of eluding nemesis
     """
 def main():
     """ Erdslangetjie, a maze game of eluding nemesis
     """
+    if QUIET:
+        for hdlr in Logger.handlers[:]:
+            if not isinstance(hdlr, LoggerHistory):
+                Logger.removeHandler(hdlr)
     GameApp().run()
     GameApp().run()