Call ibus_hotkey_profile_remove_hotkey_by_event in bus_ibus_impl_set_trigger before registering the fallback hotkey, just in case.
Call ibus_hotkey_profile_remove_hotkey_by_event in bus_ibus_impl_set_trigger before registering the fallback hotkey, just in case.

Probably it's better to call the remove function in bus_ibus_impl_set_trigger just as bus_ibus_impl_set_hotkey already does, so that a wierd error message like 'IBUS-CRITICAL **: ...: file ibushotkey.c: line 381 (ibus_hotkey_profile_add_hotkey): should not be reached' will not be shown.

The fallback hotkey could be registered twice, via bus_ibus_impl_init and _dbus_name_owner_changed_cb, if the --timeout parameter is too small to talk to the configuration daemon, for example.

BUG=none
TEST=ran ibus-daemon with --timeout=1 and verified that the IBUS-CRITICAL message above was not shown.

Review URL: http://codereview.appspot.com/3796044

phuang/ibus,Keruspe/ibus,ueno/ibus,Keruspe/ibus,fujiwarat/ibus,ueno/ibus,phuang/ibus,fujiwarat/ibus,fujiwarat/ibus,ueno/ibus,Keruspe/ibus,j717273419/ibus,j717273419/ibus,ibus/ibus-cros,j717273419/ibus,Keruspe/ibus,ibus/ibus-cros,ibus/ibus-cros,ibus/ibus,ueno/ibus,phuang/ibus,ibus/ibus,ibus/ibus,phuang/ibus,j717273419/ibus,ibus/ibus-cros,ueno/ibus,fujiwarat/ibus,ibus/ibus