_preedit_cursor_changed = EINA_FALSE;
}
+ if (imcontext->pending_preedit.attrs)
+ preedit_changed = EINA_TRUE;
+
clear_preedit(imcontext);
imcontext->preedit_text = strdup(text);
uint32_t index = strlen (wsc_ctx->preedit_str);
- wsc_send_preedit_style (wsc_ctx);
-
if (cursor > 0)
index = cursor;
/* Note : Since the current wayland_immodule implementation does not call
- * PREEDIT_CHANGED callback even when preedit_cursor gets updated, for now
- * we must update preedit_string also whenever preedit_cursor is updated.
- * So the below 2 lines cannot be called separately. */
+ * PREEDIT_CHANGED callback even when preedit_cursor or preedit_style gets updated, for now
+ * we must update preedit_string also whenever preedit_cursor or preedit_style is updated.
+ * So the below 3 lines cannot be called separately. */
+ wsc_send_preedit_style (wsc_ctx);
wl_input_method_context_preedit_cursor (wsc_ctx->im_ctx, index);
wl_input_method_context_preedit_string (wsc_ctx->im_ctx,
wsc_ctx->serial,