/// <summary/> public DummyInputBusController() { m_connection = IBusConnectionFactory.Create(); if (m_connection == null) { return; } m_ibus = new IBusDotNet.InputBusWrapper(m_connection); m_inputContext = m_ibus.InputBus.CreateInputContext("UnitTest"); m_inputContext.SetCapabilities(Capabilities.Focus | Capabilities.PreeditText); }
public void CanGetEngineDesc() { Connection = IBusConnectionFactory.Create(); if (Connection == null) { Assert.Ignore("Can't run this test without ibus running."); return; } var ibusWrapper = new IBusDotNet.InputBusWrapper(Connection); object[] engines = ibusWrapper.InputBus.ListActiveEngines(); if (engines.Length == 0) { Assert.Ignore("Can't run this test without any ibus keyboards installed."); return; } Assert.IsNotNull(IBusEngineDesc.GetEngineDesc(engines[0])); }
/// <summary> /// Create a Connection to Ibus. If successfull Connected property is true. /// </summary> public IBusCommunicator() { m_connection = IBusConnectionFactory.Create(); if (m_connection == null) { return; } // Prevent hanging on exit issues caused by missing dispose calls, or strange interaction // between ComObjects and managed object. Application.ThreadExit += (sender, args) => { if (m_connection != null) { m_connection.Dispose(); } }; m_ibus = new IBusDotNet.InputBusWrapper(m_connection); }