}
}
- void socket_remoteinput_entry_metadata (int client, uint32 hint, uint32 layout, int variation, uint32 autocapital_type, int return_key_disabled) {
+ void socket_remoteinput_entry_metadata (int client, uint32 hint, uint32 layout, int variation, uint32 autocapital_type, int return_key_disabled, uint32 return_key_type) {
SCIM_DEBUG_MAIN(4) << __FUNCTION__ << "...\n";
LOGD ("client id:%d", client);
m_send_trans.put_data(variation);
m_send_trans.put_data(autocapital_type);
m_send_trans.put_data(return_key_disabled);
+ m_send_trans.put_data(return_key_type);
m_send_trans.write_to_socket(client_socket);
}
}
void isf_wsc_context_send_surrounding_text (WSCContextISF* wsc_ctx, const char *text, int cursor);
void isf_wsc_context_send_entry_metadata (WSCContextISF* wsc_ctx, Ecore_IMF_Input_Hints hint,
Ecore_IMF_Input_Panel_Layout layout, int variation,
- Ecore_IMF_Autocapital_Type type, int return_key_disabled);
+ Ecore_IMF_Autocapital_Type type, int return_key_disabled,
+ Ecore_IMF_Input_Panel_Return_Key_Type return_key_type);
#if !(ENABLE_GRAB_KEYBOARD)
void isf_wsc_context_filter_key_event (WSCContextISF* wsc_ctx,
Ecore_IMF_Input_Hints input_hint;
Ecore_IMF_BiDi_Direction bidi_direction;
Ecore_IMF_Input_Panel_Layout panel_layout;
+ Ecore_IMF_Input_Panel_Return_Key_Type return_key_type;
String mime_type;
void *imdata;
int imdata_size;
input_hint(ECORE_IMF_INPUT_HINT_NONE),
bidi_direction(ECORE_IMF_BIDI_DIRECTION_NEUTRAL),
panel_layout(ECORE_IMF_INPUT_PANEL_LAYOUT_NORMAL),
+ return_key_type(ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT),
imdata(NULL),
imdata_size(0),
preedit_caret(0),
if (_TV) {
isf_wsc_context_send_entry_metadata (wsc_ctx, wsc_context_input_hint_get (wsc_ctx), wsc_context_input_panel_layout_get (wsc_ctx),
- wsc_context_input_panel_layout_variation_get (wsc_ctx), wsc_context_autocapital_type_get (wsc_ctx), wsc_ctx->return_key_disabled);
+ wsc_context_input_panel_layout_variation_get (wsc_ctx), wsc_context_autocapital_type_get (wsc_ctx), wsc_ctx->return_key_disabled,
+ (Ecore_IMF_Input_Panel_Return_Key_Type)wsc_ctx->return_key_type);
}
}
if (wsc_ctx->return_key_type != return_key_type) {
wsc_ctx->return_key_type = return_key_type;
isf_wsc_context_input_panel_return_key_type_set (wsc_ctx, (Ecore_IMF_Input_Panel_Return_Key_Type)wsc_ctx->return_key_type);
+ if (_TV)
+ isf_wsc_context_send_entry_metadata (wsc_ctx, wsc_context_input_hint_get (wsc_ctx), wsc_context_input_panel_layout_get (wsc_ctx),
+ wsc_context_input_panel_layout_variation_get (wsc_ctx), wsc_context_autocapital_type_get (wsc_ctx), wsc_ctx->return_key_disabled,
+ (Ecore_IMF_Input_Panel_Return_Key_Type)wsc_ctx->return_key_type);
}
}
isf_wsc_context_input_panel_return_key_disabled_set (wsc_ctx, wsc_ctx->return_key_disabled);
if (_TV)
isf_wsc_context_send_entry_metadata (wsc_ctx, wsc_context_input_hint_get (wsc_ctx), wsc_context_input_panel_layout_get (wsc_ctx),
- wsc_context_input_panel_layout_variation_get (wsc_ctx), wsc_context_autocapital_type_get (wsc_ctx), wsc_ctx->return_key_disabled);
+ wsc_context_input_panel_layout_variation_get (wsc_ctx), wsc_context_autocapital_type_get (wsc_ctx), wsc_ctx->return_key_disabled,
+ (Ecore_IMF_Input_Panel_Return_Key_Type)wsc_ctx->return_key_type);
}
}
void
isf_wsc_context_send_entry_metadata (WSCContextISF* wsc_ctx, Ecore_IMF_Input_Hints hint,
Ecore_IMF_Input_Panel_Layout layout, int variation,
- Ecore_IMF_Autocapital_Type type, int return_key_disabled)
+ Ecore_IMF_Autocapital_Type type, int return_key_disabled,
+ Ecore_IMF_Input_Panel_Return_Key_Type return_key_type)
{
SCIM_DEBUG_FRONTEND(1) << __FUNCTION__ << "...\n";
if (context_scim && context_scim->impl) {
if (!context_scim->impl->init_remote_entry_metadata || (context_scim->impl->input_hint != hint || context_scim->impl->panel_layout != layout ||
context_scim->impl->variation != variation || context_scim->impl->autocapital_type != type ||
- context_scim->impl->return_key_disabled != return_key_disabled)) {
+ context_scim->impl->return_key_disabled != return_key_disabled || context_scim->impl->return_key_type != return_key_type)) {
if (context_scim->impl->panel_layout != layout || context_scim->impl->variation != variation) {
if (context_scim->impl->input_resource == INPUT_RESOURCE_REMOTE)
context_scim->impl->input_resource = INPUT_RESOURCE_NONE;
context_scim->impl->variation = variation;
context_scim->impl->autocapital_type = type;
context_scim->impl->return_key_disabled = return_key_disabled;
+ context_scim->impl->return_key_type = return_key_type;
if (_TV)
g_info_manager->remoteinput_callback_entry_metadata (context_scim->impl->input_hint, context_scim->impl->panel_layout,
- context_scim->impl->variation, context_scim->impl->autocapital_type, context_scim->impl->return_key_disabled);
+ context_scim->impl->variation, context_scim->impl->autocapital_type, context_scim->impl->return_key_disabled,
+ context_scim->impl->return_key_type);
context_scim->impl->init_remote_entry_metadata = true;
if (_TV) {
isf_wsc_context_send_entry_metadata (ic, wsc_context_input_hint_get (ic), wsc_context_input_panel_layout_get (ic),
- wsc_context_input_panel_layout_variation_get (ic), wsc_context_autocapital_type_get (ic), ic->return_key_disabled);
+ wsc_context_input_panel_layout_variation_get (ic), wsc_context_autocapital_type_get (ic), ic->return_key_disabled,
+ (Ecore_IMF_Input_Panel_Return_Key_Type)ic->return_key_type);
}
}
}
}
- void remoteinput_callback_entry_metadata (uint32 hint, uint32 layout, int variation, uint32 autocapital_type, int return_key_disabled) {
+ void remoteinput_callback_entry_metadata (uint32 hint, uint32 layout, int variation, uint32 autocapital_type, int return_key_disabled, uint32 return_key_type) {
SCIM_DEBUG_MAIN (4) << __FUNCTION__ << "...\n";
if (m_ise_context_buffer != NULL && m_ise_context_length > 0) {
Ise_Context *iseContext = reinterpret_cast<Ise_Context *>(m_ise_context_buffer);
iseContext->layout = static_cast<Ecore_IMF_Input_Panel_Layout>(layout);
+ iseContext->return_key_type = static_cast<Ecore_IMF_Input_Panel_Return_Key_Type>(return_key_type);
iseContext->return_key_disabled = static_cast<Eina_Bool>(return_key_disabled);
iseContext->layout_variation = static_cast<int>(variation);
iseContext->autocapital_type = static_cast<Ecore_IMF_Autocapital_Type>(autocapital_type);
}
for (unsigned int i = 0; i < m_current_recv_remoteinput_id.size (); i++) {
lock();
- m_panel_agent_manager.socket_remoteinput_entry_metadata (m_current_recv_remoteinput_id.at (i), hint, layout, variation, autocapital_type, return_key_disabled);
+ m_panel_agent_manager.socket_remoteinput_entry_metadata (m_current_recv_remoteinput_id.at (i), hint, layout, variation, autocapital_type, return_key_disabled, return_key_type);
unlock ();
}
}
m_impl->remoteinput_callback_focus_out ();
}
-void InfoManager::remoteinput_callback_entry_metadata (uint32 hint, uint32 layout, int variation, uint32 autocapital_type, int return_key_disabled)
+void InfoManager::remoteinput_callback_entry_metadata (uint32 hint, uint32 layout, int variation, uint32 autocapital_type, int return_key_disabled, uint32 return_key_type)
{
- m_impl->remoteinput_callback_entry_metadata (hint, layout, variation, autocapital_type, return_key_disabled);
+ m_impl->remoteinput_callback_entry_metadata (hint, layout, variation, autocapital_type, return_key_disabled, return_key_type);
}
void InfoManager::remoteinput_callback_surrounding_text (String text, uint32 cursor)
void remoteinput_callback_focus_out (void);
- void remoteinput_callback_entry_metadata (uint32 hint, uint32 layout, int variation, uint32 autocapital_type, int return_key_disabled);
+ void remoteinput_callback_entry_metadata (uint32 hint, uint32 layout, int variation, uint32 autocapital_type, int return_key_disabled, uint32 return_key_type);
void remoteinput_callback_surrounding_text (String text, uint32 cursor);
{
}
-void PanelAgentBase::socket_remoteinput_entry_metadata (int client, uint32 hint, uint32 layout, int variation, uint32 autocapital_type, int return_key_disabled)
+void PanelAgentBase::socket_remoteinput_entry_metadata (int client, uint32 hint, uint32 layout, int variation, uint32 autocapital_type, int return_key_disabled, uint32 return_key_type)
{
}
*
* @return none.
*/
- virtual void socket_remoteinput_entry_metadata (int client, uint32 hint, uint32 layout, int variation, uint32 autocapital_type, int return_key_disabled);
+ virtual void socket_remoteinput_entry_metadata (int client, uint32 hint, uint32 layout, int variation, uint32 autocapital_type, int return_key_disabled, uint32 return_key_type);
/**
* @brief socket_remoteinput_surrounding_text.
_p->socket_remoteinput_focus_out (id);
}
-void PanelAgentManager::socket_remoteinput_entry_metadata (int id, uint32 hint, uint32 layout, int variation, uint32 autocapital_type, int return_key_disabled)
+void PanelAgentManager::socket_remoteinput_entry_metadata (int id, uint32 hint, uint32 layout, int variation, uint32 autocapital_type, int return_key_disabled, uint32 return_key_type)
{
PanelAgentPointer _p = m_impl->get_panel_agent_by_id (id);
if (!_p.null ())
- _p->socket_remoteinput_entry_metadata (id, hint, layout, variation, autocapital_type, return_key_disabled);
+ _p->socket_remoteinput_entry_metadata (id, hint, layout, variation, autocapital_type, return_key_disabled, return_key_type);
}
void PanelAgentManager::socket_remoteinput_surrounding_text (int id, String& text, uint32 cursor)
void socket_update_surrounding_text (int client, uint32 context, const String& uuid, String& text, uint32 cursor);
void socket_remoteinput_focus_in (int client);
void socket_remoteinput_focus_out (int client);
- void socket_remoteinput_entry_metadata (int client, uint32 hint, uint32 layout, int variation, uint32 autocapital_type, int return_key_disabled);
+ void socket_remoteinput_entry_metadata (int client, uint32 hint, uint32 layout, int variation, uint32 autocapital_type, int return_key_disabled, uint32 return_key_type);
void socket_remoteinput_surrounding_text (int client, String& text, uint32 cursor);
void socket_remoteinput_input_resource (int client, uint32 input_resource);
void socket_update_selection (int client, uint32 context, String& uuid, String text);
RemoteInputClientSignalVoid m_signal_hide_ise;
String m_surrounding_text;
- uint32 m_hint, m_cursor, m_layout, m_variation, m_autocapital_type, m_input_resource, m_return_key_disabled;
+ uint32 m_hint, m_cursor, m_layout, m_variation, m_autocapital_type, m_input_resource, m_return_key_disabled, m_return_key_type;
public:
RemoteInputClientImpl ()
m_variation (0),
m_autocapital_type (0),
m_input_resource (0),
- m_return_key_disabled (0) {
+ m_return_key_disabled (0),
+ m_return_key_type (0) {
}
int open_connection (void) {
type = REMOTE_CONTROL_CALLBACK_ENTRY_METADATA;
if (m_trans_recv.get_data (m_hint) && m_trans_recv.get_data (m_layout) && m_trans_recv.get_data (m_variation) &&
- m_trans_recv.get_data (m_autocapital_type) && m_trans_recv.get_data (m_return_key_disabled)) {
+ m_trans_recv.get_data (m_autocapital_type) && m_trans_recv.get_data (m_return_key_disabled) && m_trans_recv.get_data (m_return_key_type)) {
}
else
LOGW ("wrong format of transaction");
return type;
}
- void get_entry_metadata (int *hint, int *layout, int *variation, int *autocapital_type, int *return_key_disabled) {
+ void get_entry_metadata (int *hint, int *layout, int *variation, int *autocapital_type, int *return_key_disabled, int *return_key_type) {
*hint = m_hint;
*layout = m_layout;
*variation = m_variation;
*autocapital_type = m_autocapital_type;
*return_key_disabled = m_return_key_disabled;
+ *return_key_type = m_return_key_type;
}
void get_surrounding_text (String &surrounding_text, int *cursor) {
}
void
-RemoteInputClient::get_entry_metadata (int *hint, int *layout, int *variation, int *autocapital_type, int *return_key_disabled)
+RemoteInputClient::get_entry_metadata (int *hint, int *layout, int *variation, int *autocapital_type, int *return_key_disabled, int *return_key_type)
{
- m_impl->get_entry_metadata (hint, layout, variation, autocapital_type, return_key_disabled);
+ m_impl->get_entry_metadata (hint, layout, variation, autocapital_type, return_key_disabled, return_key_type);
}
void
remote_client_error_type check_privilege (void);
remote_client_error_type delete_surrounding_text(int offset, int len);
remote_control_callback_type recv_callback_message (void);
- void get_entry_metadata (int *hint, int *layout, int *variation, int *autocapital_type, int *return_key_disabled);
+ void get_entry_metadata (int *hint, int *layout, int *variation, int *autocapital_type, int *return_key_disabled, int *return_key_type);
void get_surrounding_text (String &default_text, int *cursor);
void get_input_resource (int *input_resource);
};
{
if (focus_flag) {
remote_control_entry_metadata_s *data = new remote_control_entry_metadata_s;
- int hint = 0, layout = 0, variation = 0, autocapital_type = 0, return_key_disabled = 0;
+ int hint = 0, layout = 0, variation = 0, autocapital_type = 0, return_key_disabled = 0, return_key_type = 0;
- client->remote_client->get_entry_metadata (&hint, &layout, &variation, &autocapital_type, &return_key_disabled);
+ client->remote_client->get_entry_metadata (&hint, &layout, &variation, &autocapital_type, &return_key_disabled, &return_key_type);
data->hint = static_cast<Ecore_IMF_Input_Hints> (hint);
data->layout = static_cast<Ecore_IMF_Input_Panel_Layout> (layout);
data->variation = variation;
data->autocapital_type = static_cast<Ecore_IMF_Autocapital_Type> (autocapital_type);
data->return_key_disabled = return_key_disabled;
+ data->return_key_type = static_cast<Ecore_IMF_Input_Panel_Return_Key_Type> (return_key_type);
- LOGD ("REMOTE_CONTROL_CALLBACK_ENTRY_METADATA: hint=0x%04x, layout=%d, variation=%d, autocap=%d, retKey_disabled=%d",
- data->hint, data->layout, data->variation, data->autocapital_type, data->return_key_disabled);
+ LOGD ("REMOTE_CONTROL_CALLBACK_ENTRY_METADATA: hint=0x%04x, layout=%d, variation=%d, autocap=%d, retKey_disabled=%d, retKey_type=%d",
+ data->hint, data->layout, data->variation, data->autocapital_type, data->return_key_disabled, data->return_key_type);
if (client->metadata_cb)
client->metadata_cb (client->metadata_cb_user_data, data);
int variation; /**< The layout variation information */
Ecore_IMF_Autocapital_Type autocapital_type; /**< The autocapital type information */
bool return_key_disabled; /**< The return key state information */
+ Ecore_IMF_Input_Panel_Return_Key_Type return_key_type; /**< The return key type information */
} remote_control_entry_metadata_s;
/**