Opened 7 years ago

Closed 7 years ago

#15735 closed defect (patchwelcome)

Korean Hangul autocompletion drops input in FilteringSelect

Reported by: Leftium Owned by: Douglas Hays
Priority: undecided Milestone: tbd
Component: Dijit - Form Version: 1.7.2
Keywords: Cc:
Blocked By: Blocking:

Description

Summary

Input of a single Korean Hangul character takes multiple steps. While the FilteringSelect? list is filtered as expected, the input Korean characters are unexpectedly removed (perhaps before the Korean character has been "completed"). I have a feeling this bug affects any widgets that use the _AutoCompleterMixin

All steps necessary to reproduce the issue

  1. required: Korean IME; see appendix below for installation
  2. Open http://jsfiddle.net/9Pbsy/
  3. While in Korean input mode, type '한' (keys: "gks") into FilteringSelect?

Expected results:

  • '한글' is auto-completed with remaining '글' selected/highlighted

Actual results:

  • All text from input textbox is removed

Work-arounds

  • Since the disappearing text prevents direct entry, the desired item may be selected with a mouse-click
  • Also, copy-paste into the textbox works

Environment

Browser type (IE, Firefox, Opera, ...)

  • Firefox (probably other browsers, too)

Browser version

  • 14.0.1

OS and OS Version

  • Microsoft Windows 7 Home Premium
  • 6.1.7601 Service Pack 1 Build 7601

Appendix: how to install Korean input method editor

Change History (2)

comment:1 Changed 7 years ago by Douglas Hays

This could be a browser issue. IE9 works flawlessly and Chrome tries to work but initially hides the autocompleted character (but reveals it if you press left arrow).

comment:2 Changed 7 years ago by Douglas Hays

Resolution: patchwelcome
Status: newclosed

Firefox is not firing the compositionend event after typing gks which is a bug (Chrome does fire it). The INPUT box is in an unstable state after typing gks and trying to change the value attribute to anything causes Firefox to blank out the value, which defeats autocompletion. Calling blur() and then focus() when autocompleting seems to fix it (forces a compositionend event) but this can have undesired side-effects with extraneous event handlers firing unexpectedly. Setting autoComplete=false seems to be the easiest workaround but I'd be interested in any proposed patches without side-effects. Also please follow up with a bugzilla defect especially since Chrome knows how to fire it in a timely manner. Firefox does eventually fire a compositionend event but not until you start typing the next character which again defeats the purpose of autocompletion.

Note: See TracTickets for help on using tickets.