Firefox Quantum 66.0 does not allow certain letters to be typed while using custom software application. No problems with prior versions of Firefox. (because of qooxdoo)
Categories
(Core :: DOM: Events, defect, P2)
Tracking
()
People
(Reporter: lisa.sayre, Unassigned, NeedInfo)
References
Details
(Keywords: enterprise, regression)
Attachments
(2 files, 1 obsolete file)
29.61 KB,
image/png
|
Details | |
29.61 KB,
patch
|
Details | Diff | Splinter Review |
User Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36
Steps to reproduce:
Open up Firefox Quantum 66 Browser.
Launch custom software application.
Focus into a text widget and attempt to type in the following letters: o, j, k, n
These letters will not appear. Nothing happens and they are not displayed within the widget. Other letters will appear.
When I type in the letter v, it opens a small window on the top right that seems to contain log information. See attachment.
If we use the capital letters O,J,K,N,V these work fine.
You can try to reproduce this problem using our software using this link:
http://192.11.231.215:8080/qip
Credentials are:
Username: qipman
Password: fire66
Hit Continue to accept the Organization prompt
Navigate to DNS menu
Then select DNS Server
Hit Add/Add Server
Set Focus into the Host Name box and try typing in abcdek
Notice that the k does not appear.
Letters that do not work: o k j and n. v does work here, but it does not work in other areas.
Actual results:
No action occurred. The letters did not appear in the software widget. The I bar (cursor) just sits still in the widget and it does not move the cursor. I typed in the following value into the widget: abcdek and what I saw was abcde
The k will not appear and the cursor will not advance.
Expected results:
The letter k should appear and the cursor should advance to allow me to type in the rest of the letters.
This does not happen in Firefox Quantum 60.6.1esr (32bit) and prior releases before 66. This does happen in 66, 66.0.1, 66.0.2, and 67 Beta
Comment 1•6 years ago
•
|
||
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:66.0) Gecko/20100101 Firefox/66.0
Hi,
I followed the steps and I have managed to reproduce this issue on latest FF release (66.0.2), latest Nightly (68.0a1) and Beta version (67.0) using OS-es Windows 10 and Ubuntu 18.04
I will add a component in order to involve the development team in reviewing this issue. If this is not the proper component, please feel free to change it to a more appropriate one.
Thank you for your report.
Comment 2•6 years ago
|
||
The failure is caused by bug 1502795.
Could you take a look?
We were able to reproduce using 66. It was also reproduced in 68.0a1 and 67. So I do not believe this bug fix in (1502795) has fixed our specific issue. Since that bug fix was in 65.
__onKeyPress: qx.event.GlobalError.observeMethod(qx.core.Environment.select(b, {
'mshtml': function (bh) {
bh = window.event || bh;
if (this._charCode2KeyCode[bh.keyCode]) {
this._idealKeyHandler(this._charCode2KeyCode[bh.keyCode], 0, bh.type, bh);
} else {
this._idealKeyHandler(0, bh.keyCode, bh.type, bh);
};
},
'gecko': function (bi) {
var bj = bi.charCode;
var bk = bi.type;
this._idealKeyHandler(bi.keyCode, bj, bk, bi);
},
'webkit': function (bl) {
if (this._charCode2KeyCode[bl.keyCode]) {
this._idealKeyHandler(this._charCode2KeyCode[bl.keyCode], 0, bl.type, bl);
} else {
this._idealKeyHandler(0, bl.keyCode, bl.type, bl);
};
},
_idealKeyHandler: function (bs, bq, bt, br) {
var bp;
// Use: keyCode
if (bs || (!bs && !bq)) {
bp = qx.event.util.Keyboard.keyCodeToIdentifier(bs);
this._fireSequenceEvent(br, bt, bp);
} else {
bp = qx.event.util.Keyboard.charCodeToIdentifier(bq);
this._fireSequenceEvent(br, c, bp);
this._fireInputEvent(br, bq);
};
},
Looks like that the application was designed for Netscape/Firefox key event model and makes other browsers hacks with special path using _charCode2KeyCode
which returns non-zero only when the key is Enter
or Escape
. So, now, keyCode
value of keypress
event is always set to bs
of _idealKeyHandler
only on Firefox. Basically, the vendor should fix this bug in the latest version.
On the other hand, if there is a special object, we could use similar approach as bug 1514940.
We have obtained a fix from Qooxdoo.
From Qooxdoo:
Since Firefox 66, event.getKeyIdentifier() returns wrong identifiers for some keys #9643
Qooxdoo releases – the fix is only available on 5.0.3 beta (not release yet)
https://github.com/qooxdoo/qooxdoo/releases
Issue on Firefox 66
https://github.com/qooxdoo/qooxdoo/issues/9643
Fix for issue on Firefox 66 by replacing Keyboard.js
https://github.com/qooxdoo/qooxdoo/blob/master/framework/source/class/qx/event/handler/Keyboard.js
Thank you
Comment 6•6 years ago
|
||
Note: If anyone finds this bug looking for a fix for their app, qooxdoo cut a 5.0.3-beta hotfix release https://github.com/qooxdoo/qooxdoo/releases/tag/v5.0.3-beta, which only contains the keypress fixes on top of 5.0.2.
Following the STR, here's the affected input for the new hostname text input:
<input type="text" qxselectable="on"
spellcheck="false"
class="qx-abstract-field qx-placeholder-color qx-input"
tabindex="12" maxlength="63"
style="-moz-user-select: text; touch-action: none; z-index: 10; box-sizing: border-box; position: absolute; outline: currentcolor none medium; background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: Arial, Helvetica; font-size: 11px; line-height: 1.4; padding: 3px 5px 2px; left: 102px; top: 12px; width: 150px; height: 22px;">
The bug also currently reproduces here, if you try to type "v" at least until they upgrade that to use 5.0.3 (unsure when/if that will happen, I've asked here: https://github.com/qooxdoo/qooxdoo/pull/9644#issuecomment-484990831):
http://www.qooxdoo.org/current/playground/#Hello%20World-ria
In terms of detecting, there is a global qx.$$environment["qx.version"]
, so we could deploy a hack for versions less than "5.0.2"
. What do you think, Masayuki?
Note: If anyone finds this bug looking for a fix for their app, qooxdoo cut a 5.0.3-beta hotfix release https://github.com/qooxdoo/qooxdoo/releases/tag/v5.0.3-beta, which only contains the keypress fixes on top of 5.0.2.
Well, the approach isn't good because it's customizable behavior by user but they check our version. Why don't they check whether event.keyCode && event.keyCode === event.charCode
as getting same result...
In terms of detecting, there is a global
qx.$$environment["qx.version"]
, so we could deploy a hack for versions less than"5.0.2"
. What do you think, Masayuki?
Yeah, could be. But unfortunately, it may not have contenteditable, e.g., check the original STR in comment 0. So, difficult point is, how we run the check before first keypress on the page without running it on usual web apps (for the performance in most cases).
Updated•6 years ago
|
Updated•6 years ago
|
There's been no update on this since April 2019. Will this ever get fixed? This is forcing our users to Chrome (yuck) and even IE/Edge (ugghh).
Comment 9•6 years ago
|
||
hi dan400man, do you have any way to upgrade to the version of qooxdoo that fixed the issue: https://bugzilla.mozilla.org/show_bug.cgi?id=1541566#c6?
I'm not entirely sure how this application works -- if it's https://www.nokia.com/networks/products/vitalqip-appliance-manager/ and hosted by Nokia, probably not... but if it's hosted by your company, you should have the ability to uprade the local JS lib, right?
Updated•6 years ago
|
Comment 10•6 years ago
|
||
(i just tried to reach out to 2 different Nokia contacts...)
Reporter | ||
Comment 11•6 years ago
|
||
We obtained a fix from Qooxdoo.
From Qooxdoo:
Since Firefox 66, event.getKeyIdentifier() returns wrong identifiers for some keys #9643
Qooxdoo releases – the fix is only available on 5.0.3 beta (not release yet)
https://github.com/qooxdoo/qooxdoo/releases
Issue on Firefox 66
https://github.com/qooxdoo/qooxdoo/issues/9643
Fix for issue on Firefox 66 by replacing Keyboard.js
https://github.com/qooxdoo/qooxdoo/blob/master/framework/source/class/qx/event/handler/Keyboard.js
Comment 12•6 years ago
|
||
Comment 14•6 years ago
|
||
Any thing we should take on our side here?
I have no idea unless we take the hack in every page load (last half of comment 7)...
Comment 16•6 years ago
|
||
Bugbug thinks this bug is a regression, but please revert this change in case of error.
Comment 17•5 years ago
|
||
I think we can close this now.
Comment 18•5 years ago
|
||
(Because the qooxdoo lib fixed it, and it sounds like Nokia took the upgrade).
Updated•7 months ago
|
Description
•