Bläddra i källkod

Added sound sdl config values

Ander 11 år sedan
förälder
incheckning
d0344c6973

+ 1 - 0
README.rst

@@ -67,6 +67,7 @@ The following configuration values are available:
 - ``touchscreen/screen_width``: The folder to be used as cache. Defaults to ``$XDG_CACHE_DIR/mopidy/touchscreen``, which usually means
   ``~/.cache/mopidy/spotify``
 
+
 Features
 =============
 

+ 2 - 0
mopidy_touchscreen/__init__.py

@@ -39,6 +39,8 @@ class Extension(ext.Extension):
         schema['sdl_fbdev'] = config.String()
         schema['sdl_mousdrv'] = config.String()
         schema['sdl_mousedev'] = config.String()
+        schema['sdl_audiodriver'] = config.String()
+        schema['sdl_path_dsp'] = config.String()
         return schema
 
     def setup(self, registry):

+ 2 - 0
mopidy_touchscreen/ext.conf

@@ -14,3 +14,5 @@ gpio_enter = 24
 sdl_fbdev = /dev/fb1
 sdl_mousdrv = TSLIB
 sdl_mousedev = event0
+sdl_audiodriver = disk
+sdl_path_dsp = /dev/null

+ 19 - 15
mopidy_touchscreen/search_screen.py

@@ -6,6 +6,7 @@ import pygame
 from .screen_objects import Progressbar, ScreenObjectsManager, \
     TouchAndTextItem, TextItem
 from .base_screen import BaseScreen
+from .input_manager import InputManager
 
 logger = logging.getLogger(__name__)
 
@@ -111,19 +112,22 @@ class SearchScreen(BaseScreen):
 
 
     def touch_event(self, touch_event):
-        clicked = self.list_view.touch_event(touch_event)
-        if clicked is not None:
-            self.manager.core.tracklist.clear()
-            self.manager.core.tracklist.add(
-                uri=self.results[clicked].uri)
-            self.manager.core.playback.play()
+        if touch_event.type == InputManager.click:
+            clicked = self.list_view.touch_event(touch_event)
+            if clicked is not None:
+                self.manager.core.tracklist.clear()
+                self.manager.core.tracklist.add(
+                    uri=self.results[clicked].uri)
+                self.manager.core.playback.play()
+            else:
+                clicked = self.screen_objects.get_touch_objects_in_pos(touch_event.down_pos)
+                if len(clicked) > 0:
+                    clicked = clicked[0]
+                    if clicked == self.mode_objects_keys[0]:
+                        self.search(mode=0)
+                    if clicked == self.mode_objects_keys[1]:
+                        self.search(mode=1)
+                    if clicked == self.mode_objects_keys[2]:
+                        self.search(mode=2)
         else:
-            clicked = self.screen_objects.get_touch_objects_in_pos(touch_event.down_pos)
-            if len(clicked) > 0:
-                clicked = clicked[0]
-                if clicked == self.mode_objects_keys[0]:
-                    self.search(mode=0)
-                if clicked == self.mode_objects_keys[1]:
-                    self.search(mode=1)
-                if clicked == self.mode_objects_keys[2]:
-                    self.search(mode=2)
+            self.list_view.touch_event(touch_event)

+ 2 - 0
mopidy_touchscreen/touch_screen.py

@@ -28,6 +28,8 @@ class TouchScreen(pykka.ThreadingActor, core.CoreListener):
             'sdl_mousdrv']
         os.environ["SDL_MOUSEDEV"] = config['touchscreen'][
             'sdl_mousedev']
+        os.environ["SDL_AUDIODRIVER"] = config['touchscreen']['sdl_audiodriver']
+        os.environ["SDL_PATH_DSP"] = config['touchscreen']['sdl_path_dsp']
         pygame.init()
         pygame.display.set_caption("Mopidy-Touchscreen")
         if self.fullscreen: