Details
-
Type: Bug
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: EE-3.2.0.GA
-
Fix Version/s: EE-3.3.0.GA, 4.0.BETA, 4.0
-
Component/s: ICE-Components
-
Labels:None
-
Environment:Firefox
-
Assignee Priority:P1
-
Salesforce Case Reference:
Description
This issue only occurs on Firefox and when using Microsoft IME pad to enter Japanese text into the ice:selectInputText. Change the IME pad to one of the Japanese dialects (I use full width Katakana) and after entering a character, the only way to fire the valueChangeListener and/or textChangeListener is to hit the enter button twice. This is not an issue on Chrome. I have setup the IE9 box with the IME pad and can assist in demonstrating. Test case attached. This issue may depend on ICE-8909.
What I've found so far is that FF just doesn't register the first enter as a keypress event. All the logic to fetch the list of results happens in the 'onKeyPress' method in our call, which is triggered onkeypress in FF and onkeydown on Chrome and IE. I suppose the IME pad has it's own events registered then a key is pressed, and that's why it's not registered at first in FF. Using onkeypress in FF and onkeydown on Chrome and IE is the way things have always worked for ice:selectInputText and ace:autoCompleteEntry. Just changing that would cause several regressions. So, the solution would have to be more creative and should try to address just this case, without affecting the rest of the cases.