https://bugzilla.redhat.com/show_bug.cgi?id=1382982
Bug ID: 1382982 Summary: Fedora iBus typing language detector breaks events call stack of web pages Product: Fedora Version: 24 Component: ibus Severity: urgent Assignee: tfujiwar@redhat.com Reporter: danielemi@hotmail.com QA Contact: extras-qa@fedoraproject.org CC: i18n-bugs@lists.fedoraproject.org, shawn.p.huang@gmail.com, smaitra@redhat.com, tfujiwar@redhat.com
Created attachment 1208438 --> https://bugzilla.redhat.com/attachment.cgi?id=1208438&action=edit html page for test purpose
Description of problem: My Fedora box is configured with two typing language between which I can switch, English and Chinese. I'm using Firefox v49 as browser. I'm developing a webpage, a registration form using jQuery on the validation part. The registration form contain 4 input controls with 2 password controls, all validated on the blur event. The form script is kind of complex one using blur, and focus events and a list of functions. The form script completely mess up on the live validation of the fields due to the presence of the two password controls on which only latin alphabet is allowed. The ibus language detector change on the fly when the two password fields received focus causing blur and focus events of different contols to happen in unexpected order. It is like ibus is taking the focus and releasing. I tested both jQuery (all the available methods) and pure javascript with the same result. I had the chance to try other websites using blur and focus events on password fields and are completely mess up too. To finish my job I will unset the Chinese IME. I can't guess what is about application development in the same context.
Version-Release number of selected component (if applicable): Fedora 24 4.7.5-200.fc24.x86_64 ibus-1.5.13-3.fc24.x86_64
How reproducible: https://jsfiddle.net/8tqwL7y5
Steps to Reproduce: 1. Settings, Region and Lanaguges, input sources: set English (US) and Chinese (intelligent Pinyin) 2. try the link 3. try the webpage attached
Actual results: Blur event doesn't happen or happen just mixed up with other events like other control's Focus events.
Expected results: Blur and Focus events get fired in common order on the events call stack