Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xshell/sugar-shell13
-rw-r--r--sugar/env.py3
2 files changed, 13 insertions, 3 deletions
diff --git a/shell/sugar-shell b/shell/sugar-shell
index a054189..93f2faa 100755
--- a/shell/sugar-shell
+++ b/shell/sugar-shell
@@ -24,6 +24,7 @@ import pygtk
pygtk.require('2.0')
import gtk
import gobject
+import gst
from sugar import logger
from sugar import env
@@ -82,13 +83,19 @@ def check_cm(bus_name):
pass
return False
-def _unfreeze_dcon_idle_cb():
- # Unfreeze the display when it's stable
+def _shell_started_cb():
+ # Unfreeze the display
hw_manager = hardwaremanager.get_manager()
hw_manager.set_dcon_freeze(0)
+ startup_sound = os.path.join(env.get_sounds_path('startup.ogg'))
+ if os.path.exists(startup_sound):
+ player = gst.element_factory_make("playbin", "player")
+ player.set_property("uri", "file://" + startup_sound)
+ player.set_state(gst.STATE_PLAYING)
+
def main():
- gobject.idle_add(_unfreeze_dcon_idle_cb)
+ gobject.idle_add(_shell_started_cb)
_save_session_info()
_start_matchbox()
diff --git a/sugar/env.py b/sugar/env.py
index e3e0a51..5f50d3c 100644
--- a/sugar/env.py
+++ b/sugar/env.py
@@ -73,6 +73,9 @@ def get_user_library_path():
def get_locale_path(path=None):
return _get_prefix_path('share/locale', path)
+def get_sounds_path(path=None):
+ return _get_prefix_path('share/sounds', path)
+
def get_bin_path(path=None):
return _get_sugar_path('bin', path)