diff --git a/legacy/edje/ChangeLog b/legacy/edje/ChangeLog
index 6f289f87ce..b2056f9b0f 100644
--- a/legacy/edje/ChangeLog
+++ b/legacy/edje/ChangeLog
@@ -649,3 +649,7 @@
2012-09-27 Flavio Ceolin
* edje_codegen: adding support for draggable
+
+2012-10-10
+
+ * edje_entry: Add more tags(preedit_sub1~4) for a variety of preediting states.
diff --git a/legacy/edje/NEWS b/legacy/edje/NEWS
index ef4a0708f7..6ce0072d88 100644
--- a/legacy/edje/NEWS
+++ b/legacy/edje/NEWS
@@ -8,6 +8,7 @@ Additions:
* Add nested parts support.
* Add EDJE_INPUT_PANEL_RETURN_KEY_TYPE_SIGNIN
* Add edje_codegen - A code generator to working with edje files.
+ * Add more tags(preedit_sub1~4) for a variety of preediting states.
Improvements:
* Check the number of parameter for image in edc.
diff --git a/legacy/edje/src/lib/edje_entry.c b/legacy/edje/src/lib/edje_entry.c
index 9fc5201921..eec75caa2b 100644
--- a/legacy/edje/src/lib/edje_entry.c
+++ b/legacy/edje/src/lib/edje_entry.c
@@ -3751,6 +3751,34 @@ _edje_entry_imf_event_preedit_changed_cb(void *data, Ecore_IMF_Context *ctx __UN
attr->end_index - attr->start_index);
eina_strbuf_append(buf, "");
}
+ else if (attr->preedit_type == ECORE_IMF_PREEDIT_TYPE_SUB4)
+ {
+ eina_strbuf_append(buf, "");
+ eina_strbuf_append_n(buf, preedit_string + attr->start_index,
+ attr->end_index - attr->start_index);
+ eina_strbuf_append(buf, "");
+ }
+ else if (attr->preedit_type == ECORE_IMF_PREEDIT_TYPE_SUB5)
+ {
+ eina_strbuf_append(buf, "");
+ eina_strbuf_append_n(buf, preedit_string + attr->start_index,
+ attr->end_index - attr->start_index);
+ eina_strbuf_append(buf, "");
+ }
+ else if (attr->preedit_type == ECORE_IMF_PREEDIT_TYPE_SUB6)
+ {
+ eina_strbuf_append(buf, "");
+ eina_strbuf_append_n(buf, preedit_string + attr->start_index,
+ attr->end_index - attr->start_index);
+ eina_strbuf_append(buf, "");
+ }
+ else if (attr->preedit_type == ECORE_IMF_PREEDIT_TYPE_SUB7)
+ {
+ eina_strbuf_append(buf, "");
+ eina_strbuf_append_n(buf, preedit_string + attr->start_index,
+ attr->end_index - attr->start_index);
+ eina_strbuf_append(buf, "");
+ }
}
}
else