if (message.command.compare(ISE_MESSAGE_COMMAND_STRINGS[ISE_MESSAGE_COMMAND_COMMIT_STRING]) == 0) {
if (message.values.size() == 1) {
- scim::AttributeList attrs;
- attrs.push_back(scim::Attribute(0, scim::utf8_mbstowcs((char*)message.values.at(0).c_str()).length(), scim::SCIM_ATTR_DECORATE, scim::SCIM_ATTR_DECORATE_UNDERLINE));
-
LOGD( "commit_str:|%s|", message.values.at(0).c_str());
- _info_manager->remoteinput_commit_string(scim::utf8_mbstowcs((char*)message.values.at(0).c_str()));
+ _info_manager->remoteinput_commit_string(utf8_mbstowcs((char*)message.values.at(0).c_str()));
}
}
if (message.command.compare(ISE_MESSAGE_COMMAND_STRINGS[ISE_MESSAGE_COMMAND_UPDATE_PREEDIT_STRING]) == 0) {
- scim::AttributeList attrs;
- attrs.push_back(scim::Attribute(0, scim::utf8_mbstowcs((char*)message.values.at(0).c_str()).length(), scim::SCIM_ATTR_DECORATE, scim::SCIM_ATTR_DECORATE_UNDERLINE));
+ AttributeList attrs;
+ attrs.push_back(Attribute(0, utf8_mbstowcs((char*)message.values.at(0).c_str()).length(), SCIM_ATTR_DECORATE, SCIM_ATTR_DECORATE_UNDERLINE));
if (message.values.size() == 2) {
int caret = atoi(message.values.at(1).c_str());
LOGD ("preedit:|%s|, caret = %d", message.values.at(0).c_str(), caret);
- _info_manager->remoteinput_update_preedit_string(scim::utf8_mbstowcs((char*)message.values.at(0).c_str()), attrs, (uint32) caret);
+ _info_manager->remoteinput_update_preedit_string(utf8_mbstowcs((char*)message.values.at(0).c_str()), attrs, (uint32) caret);
} else {
_info_manager->remoteinput_update_preedit_string(L"", attrs, 0);
}
m_send_trans.write_to_socket(client_socket);
}
- void remote_update_preedit_string (int client, uint32 target_context, const WideString str, const AttributeList &attrs, uint32 caret) {
+ void remote_update_preedit_string (int client, uint32 target_context, const WideString str, const WideString commit, const AttributeList &attrs, uint32 caret) {
LOGD("client id:%d\n", client);
Socket client_socket(client);
m_send_trans.put_data(target_context);
m_send_trans.put_command(SCIM_TRANS_CMD_UPDATE_PREEDIT_STRING);
m_send_trans.put_data(str);
+ m_send_trans.put_data(commit);
m_send_trans.put_data(attrs);
m_send_trans.put_data(caret);
m_send_trans.write_to_socket(client_socket);
bool remote_mode);
static void panel_slot_update_preedit_string (int context,
const WideString str,
+ const WideString commit,
const AttributeList &attrs,
int caret,
bool remote_mode);
}
static void
-panel_slot_update_preedit_string (int context, const WideString str, const AttributeList &attrs, int caret, bool remote_mode)
+panel_slot_update_preedit_string (int context, const WideString str, const WideString commit, const AttributeList &attrs, int caret, bool remote_mode)
{
LOGD ("");
WSCContextISF* ic = find_ic (context);
if (ic->impl->preedit_string != str || str.length ()) {
ic->impl->preedit_string = str;
ic->impl->preedit_attrlist = attrs;
+ ic->impl->commit_string = commit;
if (ic->impl->use_preedit) {
if (!ic->impl->preedit_started) {
}
void
- remote_update_preedit_string (int id, uint32 context_id, const WideString str, const AttributeList &attrs, uint32 caret) {
+ remote_update_preedit_string (int id, uint32 context_id, const WideString str, const WideString commit, const AttributeList &attrs, uint32 caret) {
LOGD ("client id:%d", id);
- panel_slot_update_preedit_string (context_id, str, attrs, caret, true);
+ panel_slot_update_preedit_string (context_id, str, commit, attrs, caret, true);
}
void
get_focused_context (client, context);
if (client >= 0) {
- m_panel_agent_manager.remote_update_preedit_string (client, context, str, attrs, caret);
+ m_panel_agent_manager.remote_update_preedit_string (client, context, str, str, attrs, caret);
}
unlock ();
LOGW("not implemented for %s", m_name.c_str());
}
-void PanelAgentBase::remote_update_preedit_string (int client, uint32 context, const WideString str, const AttributeList &attrs, uint32 caret)
+void PanelAgentBase::remote_update_preedit_string (int client, uint32 context, const WideString str, const WideString commit, const AttributeList &attrs, uint32 caret)
{
LOGW ("not implemented for %s", m_name.c_str ());
}
*
* @return none.
*/
- virtual void remote_update_preedit_string (int client, uint32 context, const WideString str, const AttributeList &attrs, uint32 caret);
+ virtual void remote_update_preedit_string (int client, uint32 context, const WideString str, const WideString commit, const AttributeList &attrs, uint32 caret);
/**
* @brief remote_send_key_event.
_p->set_autocapital_type (id, context_id, uuid, mode);
}
-void PanelAgentManager::remote_update_preedit_string (int id, uint32 context_id, const WideString str, const AttributeList &attrs, uint32 caret)
+void PanelAgentManager::remote_update_preedit_string (int id, uint32 context_id, const WideString str, const WideString commit, const AttributeList &attrs, uint32 caret)
{
PanelAgentPointer _p = m_impl->get_panel_agent_by_id (id);
if (!_p.null ())
- _p->remote_update_preedit_string (id, context_id, str, attrs, caret);
+ _p->remote_update_preedit_string (id, context_id, str, commit, attrs, caret);
}
void PanelAgentManager::remote_send_key_event (int id, uint32 context_id, const KeyEvent &key)
void process_key_event_done(int client, uint32 context, KeyEvent &key, uint32 ret, uint32 serial);
void request_ise_hide(int client, uint32 context);
void set_autocapital_type(int id, uint32 context_id, String uuid, int mode);
- void remote_update_preedit_string (int target_client, uint32 target_context, const WideString str, const AttributeList &attrs, uint32 caret);
+ void remote_update_preedit_string (int target_client, uint32 target_context, const WideString str, const WideString commit,const AttributeList &attrs, uint32 caret);
void remote_send_key_event (int target_client, uint32 target_context, const KeyEvent &key);
void remote_forward_key_event (int target_client, uint32 target_context, const KeyEvent &key);
void remote_commit_string (int target_client, uint32 target_context,const WideString& wstr);