import dbus
import dbus.glib
+from dbus.mainloop.glib import DBusGMainLoop
import hildon
import osso
self._osso_context = osso.Context(app_id, version, False)
program = hildon.Program.get_instance()
program.connect('notify::is-topmost', self._on_topmost_changed)
- system_bus = dbus.Bus.get_system()
+
+ # Hack for dbus. See:
+ # https://garage.maemo.org/pipermail/pymaemo-developers/2010-April/001445.html
+ # https://garage.maemo.org/pipermail/pymaemo-developers/2010-April/001454.html
+ # https://garage.maemo.org/pipermail/pymaemo-developers/2010-April/thread.html
+ # https://bugs.maemo.org/show_bug.cgi?id=8611
+ #
+ # If we use dbus.Bus.get_system() or dbus.SystemBus() then the
+ # program fails whenever bluezwitch is installed. This could
+ # also happen whenever another widget is using System Bus (sure?).
+ #
+ #V13 system_bus = dbus.Bus.get_system()
+ dbus.mainloop.glib.DBusGMainLoop(set_as_default=True)
+ busaddress='unix:path=/var/run/dbus/system_bus_socket'
+ system_bus=dbus.bus.BusConnection(busaddress)
+ self.system_bus=system_bus
+
system_bus.add_signal_receiver(self._on_orientation_signal, \
signal_name='sig_device_orientation_ind', \
dbus_interface='com.nokia.mce.signal', \