void on_set_return_key_disable(sclu32 disabled);
void on_set_layout(sclu32 layout);
void on_reset_input_context(sclint ic, const sclchar *uuid);
- void on_process_key_event(scim::KeyEvent &key, sclu32 *ret, sclu32 keycode);
+ void on_process_key_event(scim::KeyEvent &key, sclu32 *ret);
+ void on_process_key_event_with_keycode(scim::KeyEvent &key, sclu32 *ret, sclu32 keycode);
void on_set_display_language(const sclchar *language);
void on_set_rotation_degree(sclint degree);
void on_set_accessibility_state(sclboolean state);
}
}
-void CCoreEventCallback::on_process_key_event(scim::KeyEvent &key, sclu32 *ret, sclu32 keycode)
+void CCoreEventCallback::on_process_key_event(scim::KeyEvent &key, sclu32 *ret)
{
- if (g_event_callback.process_key_event_with_keycode || g_event_callback.process_key_event) {
+ if (g_event_callback.process_key_event) {
struct _ime_device_info dev_info = {key.dev_name.c_str(),
static_cast<Ecore_IMF_Device_Class>(key.dev_class), static_cast<Ecore_IMF_Device_Subclass>(key.dev_subclass)};
+ bool processed = g_event_callback.process_key_event(static_cast<ime_key_code_e>(key.code), static_cast<ime_key_mask_e>(key.mask),
+ static_cast<ime_device_info_h>(&dev_info), g_event_callback.process_key_event_user_data);
- if (g_event_callback.process_key_event_with_keycode) {
- bool processed = g_event_callback.process_key_event_with_keycode(keycode, static_cast<ime_key_code_e>(key.code), static_cast<ime_key_mask_e>(key.mask),
- static_cast<ime_device_info_h>(&dev_info), g_event_callback.process_key_event_user_data);
+ if (ret) {
+ if (processed)
+ *ret = 1;
+ else
+ *ret = 0;
+ }
+ } else {
+ if (ret) {
+ *ret = 0;
+ }
+ }
+}
- if (ret) {
- if (processed)
- *ret = 1;
- else
- *ret = 0;
- }
- } else if (g_event_callback.process_key_event) {
- bool processed = g_event_callback.process_key_event(static_cast<ime_key_code_e>(key.code), static_cast<ime_key_mask_e>(key.mask),
+void CCoreEventCallback::on_process_key_event_with_keycode(scim::KeyEvent &key, sclu32 *ret, sclu32 keycode)
+{
+ if (g_event_callback.process_key_event_with_keycode) {
+ struct _ime_device_info dev_info = {key.dev_name.c_str(),
+ static_cast<Ecore_IMF_Device_Class>(key.dev_class), static_cast<Ecore_IMF_Device_Subclass>(key.dev_subclass)};
+ bool processed = g_event_callback.process_key_event_with_keycode(keycode, static_cast<ime_key_code_e>(key.code), static_cast<ime_key_mask_e>(key.mask),
static_cast<ime_device_info_h>(&dev_info), g_event_callback.process_key_event_user_data);
- if (ret) {
- if (processed)
- *ret = 1;
- else
- *ret = 0;
- }
+ if (ret) {
+ if (processed)
+ *ret = 1;
+ else
+ *ret = 0;
}
} else {
if (ret) {