diff -rup ibus-bogo-python-ce44b961de5a0f82a4a2d8fc0e487e8fcb29289d/ibus_engine/ibus_engine.py ibus-bogo-python-ce44b961de5a0f82a4a2d8fc0e487e8fcb29289d_mod/ibus_engine/ibus_engine.py
--- ibus-bogo-python-ce44b961de5a0f82a4a2d8fc0e487e8fcb29289d/ibus_engine/ibus_engine.py 2015-03-31 10:31:05.736109792 +0530
+++ ibus-bogo-python-ce44b961de5a0f82a4a2d8fc0e487e8fcb29289d_mod/ibus_engine/ibus_engine.py 2015-03-31 10:32:50.933722217 +0530
@@ -73,7 +73,7 @@ def is_in_unity_dash():
class Engine(IBus.Engine):
__gtype_name__ = 'EngineBoGo'
- def __init__(self, config, abbr_expander):
+ def init_config(self, config, abbr_expander):
super(Engine, self).__init__()
logging.info("You are running ibus-bogo")
diff -rup ibus-bogo-python-ce44b961de5a0f82a4a2d8fc0e487e8fcb29289d/ibus_engine/main.py ibus-bogo-python-ce44b961de5a0f82a4a2d8fc0e487e8fcb29289d_mod/ibus_engine/main.py
--- ibus-bogo-python-ce44b961de5a0f82a4a2d8fc0e487e8fcb29289d/ibus_engine/main.py 2015-03-31 10:31:05.736109792 +0530
+++ ibus-bogo-python-ce44b961de5a0f82a4a2d8fc0e487e8fcb29289d_mod/ibus_engine/main.py 2015-03-31 10:32:50.933722217 +0530
@@ -93,28 +93,12 @@ class IMApp:
if engine_name == "bogo":
dbus_path = "/org/freedesktop/IBus/Engine/%d" % self.engine_count
- # It looks like the GObject's new_with_type constructor also
- # calls __init__ but without arguments so there will be error
- # messages like this:
- #
- # TypeError: __init__() missing 1 required positional argument
- #
- # We will ignore that message by temporarily redirect stderr
- # to /dev/null
-
- f = open('/dev/null', 'w')
- stderr = sys.stderr
- sys.stderr = f
-
engine = Engine.new_with_type(GObject.type_from_name("EngineBoGo"),
"bogo-python",
dbus_path,
self.bus.get_connection())
- sys.stderr = stderr
- f.close()
-
- Engine.__init__(engine, self.config, self.abbr_expander)
+ Engine.init_config(engine, self.config, self.abbr_expander)
self.engine_count += 1
return engine